/*! lightslider - v1.1.3 - 2015-04-14
* https://github.com/sachinchoolur/lightslider
* Copyright (c) 2015 Sachin N; Licensed MIT */
:root {
    --primary-color: #164499;
    --secondary-color: #fec948;
}

:root {
    --color-footer: #164499;
}

body {
    overflow-x: hidden;
}

th {
    white-space: nowrap;
}
h4 {
    margin-bottom: 0px;
}

@media(max-width:600px) {
     .btn-oder-custom {
        height: 100% !important;
        margin-right: 5px;
    }

        .btn-oder-custom span {
            display: none;
        }
}

.preloader {
    position: fixed;
    inset: 0px;
    z-index: 10000;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    background: rgb(0 0 0 / 95%);
    transition: all 0.3s ease 0s;
}

    .preloader img {
        max-width: 300px;
        animation: preload 2s linear infinite alternate;
    }

@keyframes preload {
    0% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(10px);
    }
}

* {
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
}

ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

a {
    text-decoration: none;
}

p {
    padding-bottom: 0px;
    margin-bottom: 0px;
}

#uto {
    width: 100%;
    position: relative;
}

/* #header {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 999;
} */

.uto-logo {
    width: 50%;
}

    .uto-logo img {
        width: 70%;
    }

.nav-bar {
    width: 100%;
    height: 50px;
}

.nav-list {
    width: 100%;
}

.nav-item {
    line-height: 35px;
}

/* navbar */

.navbar {
    box-shadow: 0px 5px 10px 0px #aaa;
    position: fixed;
    width: 100%;
    color: #000;
    opacity: 1;
    z-index: 100;
    padding: 0px;
    border-width: 0px;
    background: #164499;
    height: 80px;
}

.navbar-container {
    display: flex;
    justify-content: space-between;
    height: 64px;
    align-items: center;
}

.menu-items {
    order: 2;
    display: flex;
}

.logo {
    order: 1;
    font-size: 2.3rem;
}

.menu-items li {
    list-style: none;
    margin-left: 1.5rem;
    font-size: 1.3rem;
}

.navbar a {
    color: #444;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease-in-out;
}

.navbar .badge {
    color: black;
    font-weight: bold;
    transition: color 0.3s ease-in-out;
    transform: translateY(-3px);
}

.navbar a:hover {
    color: #117964;
}

.img-logo {
    width: 30%;
    max-width: 160px;
}

    .img-logo img {
        width: 100%;
    }

li.col-md-4.col-sm-12 {
    transition: 0.5s;
}

    li.col-md-4.col-sm-12:hover {
        transform: scale(1.1);
    }

.avt-drop {
    right: 36% !important;
    margin-top: 0rem !important;
    width: 20%;
    left: 80% !important;
    background-color: #164499;
    border: none;
    border-radius: unset;
}

    .avt-drop .dropdown-item {
        color: white;
        transition: 0.2s;
    }

.avt-drop-menu .dropdown-item {
    color: white;
    transition: 0.2s;
}

.avt-drop-menu li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.418);
}

.badge {
    background-color: #fdb63f;
    color: #000;
    font-size: 0.8rem;
}

.monney {
    display: block;
    width: 100%;
    padding: 0.25rem 1rem;
    clear: both;
    font-weight: 400;
    color: white;
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.avt-drop li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.418);
}

.avt-drop .dropdown-item:hover {
    background: white;
    color: black !important;
}

/* footer */

/* ============================== */
.search-custom {
    width: 100%;
    padding-right: 15px;
    height: 0px;
    min-width: 500px;
}

    .search-custom .form-control {
        height: 37px !important;
        margin-top: 4px;
        border-radius: 20px !important;
    }

.form-control:focus {
    border-color: none !important;
    box-shadow: none !important;
}

.filter-item:focus {
    border-color: none !important;
    box-shadow: none !important;
}

.search-custom .form-control {
    height: 30px;
}

.search-custom input {
    border-radius: 20px 0 0 20px !important;
    margin-top: 8px;
}

.search-custom .filter-item {
    height: 31px;
    padding: 0rem 0.75rem !important;
    margin-top: 7px;
    background-color: #ebebeb;
}

.search-custom .filter-item {
    min-width: 140px;
    border-radius: 0 20px 20px 0 !important;
}

.search-custom .search-item {
    border-radius: 10px !important;
    height: 43px !important;
    width: 100px;
    background-color: #fdb63f;
}

.dropdown-toggle::after {
    margin-left: 5px !important;
    font-size: 22px;
    transform: translateY(50%);
}

.dropdown-menu[data-bs-popper] {
    margin-top: 1rem;
    left: -200px;
}

.cart-custom i.fa-solid.fa-cart-arrow-down {
    font-size: 1.5rem;
    color: white;
    padding: 10px;
}

.avatar-custom {
    color: white;
    cursor: pointer;
    min-width: 220px;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 45px;
}

    .avatar-custom img {
        width: 45px;
        margin-right: 10px;
        object-fit: cover;
        height: 45px;
        border-radius: 1000rem;
    }

/* ====================================main ================= */
.main {
    padding-top: 100px;
}

.main-detail {
    background-color: #f1f1f1;
    overflow-x: hidden;
}

.container-gird {
    display: grid;
    grid-template-columns: auto auto auto auto auto auto auto auto;
    padding: 10px;
    grid-gap: 10px;
    width: 100%;
}

    .container-gird .item {
        border: 1px solid #fff;
        border-radius: 10px;
        width: 100%;
        overflow: hidden;
    }

        .container-gird .item img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 20px;
            transition: 0.5s;
        }

        .container-gird .item:hover img {
            transform: scale(1.1);
        }

    .container-gird .item1 {
        grid-column: 1 / 3;
        grid-row: 1 / 4;
    }

    .container-gird .item2 {
        grid-column: 3 / 7;
        grid-row: 1 / 3;
    }

    .container-gird .item3 {
        grid-column: 7 / 9;
        grid-row: 1 / 2;
    }

    .container-gird .item4 {
        grid-column: 7 / 9;
        grid-row: 2 / 3;
    }

    .container-gird .item5 {
        grid-column: 3 / 5;
        grid-row: 3 / 4;
    }

    .container-gird .item6 {
        grid-column: 5 / 7;
        grid-row: 3 / 4;
    }

.title-cate h3:nth-child(1) {
    font-weight: bold;
}

.title-cate a {
    font-weight: bold;
    color: #164499;
    font-size: 1.5rem;
}

    .title-cate a:hover {
        color: #164499 !important;
    }

@media (max-width: 600px) {
    .container-gird .item3 {
        grid-column: 1 / 9;
        grid-row: 1 / 2;
    }

    .container-gird .item4 {
        grid-column: 1 / 9;
        grid-row: 2 / 3;
    }

    .container-gird .item7 {
        grid-column: 1 / 5;
        grid-row: 3 / 4;
    }

    .container-gird .item8 {
        grid-column: 5 / 9;
        grid-row: 3 / 4;
    }

    .container-gird .item1,
    .container-gird .item2,
    .container-gird .item5,
    .container-gird .item6 {
        display: none;
    }
}

/* slider */
.owl-nav button {
    position: absolute;
    top: 50%;
    background-color: #000;
    color: #fff;
    margin: 0;
    transition: all 0.3s ease-in-out;
}

    .owl-nav button.owl-prev {
        left: 10px;
    }

    .owl-nav button.owl-next {
        right: 0;
    }

.owl-dots {
    text-align: center;
    padding-top: 15px;
}

    .owl-dots button.owl-dot {
        width: 15px;
        height: 15px;
        border-radius: 50%;
        display: inline-block;
        background: #ccc;
        margin: 0 3px;
    }

        .owl-dots button.owl-dot.active {
            background-color: #000;
        }

        .owl-dots button.owl-dot:focus {
            outline: none;
        }

.owl-nav button {
    position: absolute;
    top: 50%;
    border-radius: 20px;
    transform: translateY(-50%);
    background: rgb(255 255 255 / 50%) !important;
}

.owl-next span {
    font-size: 70px;
    position: relative;
    top: -5px;
}
.owl-prev span {
    font-size: 70px;
    position: relative;
    top: -5px;
}
.modal-icon-product {
    position: absolute;
    right: 40px;
    top:20px;
}
.custom-ve{
    position:relative;
}

.owl-nav button:focus {
    outline: none;
}

.owl-carousel .item {
    text-align: center;
    border: 1px solid black;
    padding: 30px;
    height: 220px;
    border-radius: 10px;
    cursor: pointer;
}

    .owl-carousel .item img {
        width: 50% !important;
        margin: 0px auto 10px;
        height: 50%;
    }

    .owl-carousel .item .hover {
        display: none !important;
    }

    .owl-carousel .item.active .hover {
        display: none !important;
    }

    .owl-carousel .item:hover .hover {
        display: block !important;
    }

    .owl-carousel .item.active .hover {
        display: block !important;
    }

.nav-tabs .nav-link.active .item .hover {
    display: block !important;
}

.owl-carousel .item .unset {
    display: block !important;
}

.nav-tabs .nav-link.active .item .unset {
    display: none !important;
}

.owl-carousel .item:hover .unset {
    display: none !important;
}

.owl-carousel .item.active .unset {
    display: none !important;
}

.owl-carousel .item:hover {
    background: linear-gradient(176deg, #164499, rgba(43, 57, 144, 1) 100%);
}

.owl-carousel .nav-link .item.active {
    background: linear-gradient(176deg, #164499, rgba(43, 57, 144, 1) 100%);
}

.owl-carousel .item:hover h4 {
    color: white;
}

.owl-carousel .item.active h4 {
    color: white;
}

.owl-carousel .item:hover image#Vector_Smart_Object {
    filter: grayscale(1);
}

.row-card {
    display: flex;
    align-items: center;
}

.col-card {
    padding: 50px 0px 20px 10px;
    position: relative;
    transition: 0.5s;
}
    .col-card .card-img-top {
        height: 255px;
        object-fit: contain;
        border: 1px solid #b3b3b3;
    }

.col-card-modal {
    padding: 0px 0px 10px 10px;
}

.col-card:hover {
    transform: translateY(-10px);
}

.col-card .card-body {
    background-image: url(../img/footer.jpg);
    color: white;
    background-size:cover;
    text-align: center;
    overflow: hidden;
}

    .col-card .card-body h6:nth-child(2) {
        padding-bottom: 8px;
        border-bottom: 1px dashed white;
    }

.item-rate {
    background: linear-gradient( 76deg, rgba(255, 212, 0, 1) 0%, rgba(255, 136, 0, 1) 100% );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: bold;
    font-size: 1.5rem;
}

.btn-gradient {
    background: linear-gradient( 76deg, rgba(255, 212, 0, 1) 0%, rgba(255, 136, 0, 1) 100% );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: bold;
    border: 1px solid white;
    display: block;
    text-transform: uppercase;
}

.progress {
    background: none;
    border: 1px solid white;
}

.progress-detail {
    background: #e9ecef;
}

.progress-bar {
    background: linear-gradient( 76deg, rgba(255, 212, 0, 1) 0%, rgba(255, 136, 0, 1) 100% );
}

.member {
    display: flex;
    align-items: center;
}

    .member p {
        margin-right: 15px;
    }

    .member img {
        width: 30px !important;
        height: 30px;
        margin-left: -10px;
    }

.overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: rgba(0, 0, 0, 0.658);
    z-index: 10000;
}

    .overlay img {
        width: 170px !important;
        height: 70px;
        position: relative;
        top: -30px;
        left: -18px;
    }

    .overlay p {
        position: absolute;
        top: -10px;
        left: 10px;
        font-size: 1.2rem;
        font-weight: bold;
        text-transform: uppercase;
    }

.overlay-text {
    color: white;
    font-size: 1.5rem;
    position: absolute;
    top: 15%;
    text-transform: uppercase;
    font-weight: bold;
}

.overlay-form {
    border: 1px solid white;
}

.overlay-form {
    color: white;
    font-size: 1.1rem;
    position: absolute;
    top: 35%;
    margin: 0px 20px;
    padding: 10px 0px;
    text-align: center;
    border-radius: 10px;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: white;
    font-weight: bold;
    border-color: #dee2e6 #dee2e6 #fff;
    background: var(--primary-color);
}
.nav-tabs .nav-link:hover,
.nav-tabs .nav-item.show .nav-link {
    color: white;
    font-weight: bold;
    border-color: #dee2e6 #dee2e6 #fff;
    background: var(--primary-color);
}

.nav-link-custom {
    display: block;
    padding: 0.5rem 1rem;
    color: #bdbdbd;
    text-decoration: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
    font-weight: bold;
    border: 1px solid #164499 !important;
    margin-left: -1px;
}

span.navbar-toggler-icon {
    font-size: unset;
    top: unset;
}

.text-bold p {
    font-weight: bold;
}

.card-a {
    color: white;
}

a:hover {
    /*color: white !important;*/
    /* color: #0d6efd !important; */
}

.btn-custom-nav {
    border: 1px solid rgba(255, 255, 255, 0.267) !important;
    outline: none;
}

    .btn-custom-nav:focus {
        outline: none;
        box-shadow: none;
    }

div#offcanvasExample {
    background: #164499;
}

button.btn-close.text-reset {
    filter: invert(1);
    font-size: 24px;
}
/* -===============detail ========= */
.breadcrumb-custom li a {
    font-size: 16px;
    font-weight: bold;
}

.breadcrumb-custom li {
    font-size: 14px;
    font-weight: bold;
}

.breadcrumb-custom {
    padding: 10px 0px;
    background-color: white;
    margin-top: 10px;
    border-radius: 10px;
}

/* foooter */
.section-footer {
    background-image: url(../img/footer.jpg);
    margin-bottom: -1px;
    background-size: cover;
    color: white;
    padding-top: 50px;
    padding-bottom: 50px;
}

.logo-icon-footer {
    display: inline-block;
    float: right;
    margin-top: -20px;
    margin-right: 20px;
    transition: 0.5s;
}

    .logo-icon-footer a .fb {
        margin-top: 50px;
    }

    .logo-icon-footer a .zl {
        margin-top: 50px;
        margin-right: -40px;
    }

    .logo-icon-footer a .tiktok {
        margin-right: -25px;
    }

    .logo-icon-footer a img {
        transition: 0.5s;
    }

.img-footer-uto {
    width: 70%;
}

@media (max-width: 1100px) {
    .logo-icon-footer a img {
        width: 85px;
    }

    .logo-icon-footer a .tiktok {
        margin-right: -15px;
    }

    .logo-icon-footer a .zl {
        margin-top: 28px;
        margin-right: -23px;
    }

    .logo-icon-footer a .fb {
        margin-top: 33px;
    }
}

@media (min-width: 992px) {
    button.btn.btn-custom-nav {
        display: none;
    }
}

@media (max-width: 992px) {
    button.navbar-toggler.me-4 {
        display: none;
    }

    .avatar-custom {
        padding-top: 10px;
    }
}

@media (max-width: 600px) {
    .owl-carousel .item img {
        width: 50% !important;
    }

    .search-custom {
        min-width: unset;
        padding-right: 0px;
    }

    .dropdown-menu[data-bs-popper] {
        position: absolute;
    }

    .avatar-custom {
        min-width: unset;
        display: block;
    }

        .avatar-custom p {
            display: none;
        }

    .search-custom .filter-item {
        min-width: unset;
    }

    .owl-carousel .item {
        padding: 10px;
        height: 150px;
    }

        .owl-carousel .item img {
            margin: 0px auto 10px;
        }

        .owl-carousel .item h4 {
            font-size: 1.1rem;
        }

    .col-card {
        padding: unset;
    }

    .nav-link {
        padding: 0.2rem;
    }

    .nav-tabs .nav-link.active,
    .nav-tabs .nav-item.show .nav-link {
        font-size: 14px;
    }

    .nav-tabs .nav-link {
        font-size: 14px;
    }

    .row > * {
        padding: 4px;
    }

    .item-rate {
        font-size: 1.1rem;
    }

    .col-card .card-body h6 {
        font-size: 1rem;
    }

    h5,
    .h5 {
        font-size: 1rem;
    }

    .btn-gradient {
        font-size: 0.8rem;
    }

    .overlay p {
        top: 30px;
    }

    .overlay img {
        top: 10px;
    }

    .overlay-text {
        display: none;
    }

    .img-footer-uto {
        width: 60%;
    }

    .img-footer-uniontek {
        width: 100%;
    }
}

@media (max-width: 1400px) {
    .logo-icon-footer a .fb {
        margin-top: 33px;
    }

    .logo-icon-footer a .zl {
        margin-top: 28px;
        margin-right: -23px;
    }

    .logo-icon-footer a .tiktok {
        margin-right: -15px;
    }

    .logo-icon-footer a img {
        width: 85px;
    }

    .navbar {
        height: 80px;
        padding: 10px;
    }

    button.navbar-toggler.collapsed:focus {
        box-shadow: none;
        border: none;
    }

    .navbar-toggler:focus {
        box-shadow: none;
    }

    .section-footer {
        padding: 10px 0px;
    }
}

/* ======================== */
.picZoomer {
    position: relative;
    /*margin-left: 40px;
    padding: 15px;*/
}

.picZoomer-pic-wp {
    position: relative;
    overflow: hidden;
    text-align: center;
}

    .picZoomer-pic-wp:hover .picZoomer-cursor {
        display: block;
    }

.picZoomer-zoom-pic {
    position: absolute;
    top: 0;
    left: 0;
}

.picZoomer-pic {
    /*width: 100%;
	height: 100%;*/
}

.picZoomer-zoom-wp {
    display: none;
    position: absolute;
    z-index: 999;
    overflow: hidden;
    border: 1px solid #eee;
    height: 460px;
    margin-top: -19px;
}

.picZoomer-cursor {
    display: none;
    cursor: crosshair;
    width: 100px;
    height: 100px;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 50%;
    border: 1px solid #eee;
    background-color: rgba(0, 0, 0, 0.1);
}

.picZoomCursor-ico {
    width: 23px;
    height: 23px;
    position: absolute;
    top: 40px;
    left: 40px;
    background: url(images/zoom-ico.png) left top no-repeat;
}

.my_img {
    vertical-align: middle;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 100%;
}

.piclist li {
    display: inline-block;
    width: 90px;
    height: 114px;
    border: 1px solid #eee;
}

    .piclist li img {
        width: 97%;
        height: auto;
    }

/* custom style */
.picZoomer-pic-wp,
.picZoomer-zoom-wp {
    border: 1px solid #eee;
}

.section-bg {
    background-color: #fff1e0;
}

section {
    padding: 60px 0;
}

.row-sm .col-md-6 {
    padding-left: 5px;
    padding-right: 5px;
}

/*===pic-Zoom===*/
._boxzoom .zoom-thumb {
    width: 90px;
    display: inline-block;
    vertical-align: top;
    margin-top: 0px;
}

    ._boxzoom .zoom-thumb ul.piclist {
        padding-left: 0px;
        top: 0px;
    }

._boxzoom ._product-images {
    width: 80%;
    display: inline-block;
}

    ._boxzoom ._product-images .picZoomer {
        width: 100%;
    }

        ._boxzoom ._product-images .picZoomer .picZoomer-pic-wp img {
            left: 0px;
        }

        ._boxzoom ._product-images .picZoomer img.my_img {
            width: 100%;
        }

.piclist li img {
    height: 100px;
    object-fit: cover;
}

/*======products-details=====*/

.bg-container-detail {
    background-color: white;
    padding: 50px 0px;
    margin-top: 3rem;
}

.text-item-detail {
    padding: 15px;
    background: white;
    border: 1px solid #f1f1f1;
}

    .text-item-detail p {
        text-align: left;
    }

.lSGallery > li {
    border: 1px solid #979797;
}

    .lSGallery > li.active {
        border: 1px solid #979797;
    }

.lSSlideWrapper.usingCss {
    border: 1px solid #979797;
}

.lSSlideOuter.vertical {
    padding-left: 10px;
}

li.lslide.active img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

li.lslide img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.side-right {
    padding: 0px 40px 40px 40px;
    margin: 0px 20px 0px 0px;
}

    .side-right .title-right {
        text-transform: uppercase;
        font-size: 1.9rem;
        color: #164499;
        font-weight: bold;
    }

    .side-right .title2-right {
        text-transform: uppercase;
        font-size: 1.4rem;
        font-weight: bold;
        margin-top: 5px;
        font-style: italic;
    }

    .side-right p {
        font-size: 1.3rem;
        margin: 5px 0px;
    }

        .side-right p b {
            color: #164499;
            font-style: italic;
            font-weight: bold;
        }

.card-text-detail {
    border: 1px solid #3c4452;
    border-radius: 20px;
    padding: 40px 30px 10px;
    margin-top: 40px;
    position: relative;
}

    .card-text-detail img {
        position: absolute;
        top: -30px;
        left: -19px;
    }

.member-join {
    margin-right: 10px;
}

.nav-detail .nav-link.active {
    width: 50%;
    border-radius: 30px 30px 0px 0px;
}

.nav-detail .nav-link {
    width: 50%;
    border-radius: 30px 30px 0px 0px;
    border: 1px solid #3c4452;
    margin-left: -1px;
    color: #000;
    font-weight: bold;
}

.custom-member {
    display: block;
    font-size: 1.2rem;
    border: 1px solid #3c4452;
    margin-top: -1px;
    margin-right: 2px;
    padding: 10px 10px 10px 10px;
    position: relative;
    list-style: none;
    background: #fff;
}

    .custom-member li {
        line-height: 37px;
        margin-bottom: 10px;
    }

.avarta-detail {
    display: flex;
}

    .avarta-detail img {
        width: 40px;
        height: 40px;
        border: 1px solid #979797;
    }

    .avarta-detail li {
        margin-left: 10px;
    }

.buynow {
    position: relative;
    width: 100%;
    margin: auto;
    display: block;
    margin-top: 20px;
    text-align: center;
    cursor: pointer;
    border:none;
    transition: 0.5s;
}

    .buynow:hover {
        transform: translateY(-5px);
    }

    .buynow img {
        margin: auto;
        width: 220px;
    }

    .buynow p {
        position: absolute;
        top: 25px;
        left: 50%;
        transform: translate(-50%, -50%);
        color: white;
        font-size: 1.4rem;
        font-weight: bold;
    }

@media (max-width: 600px) {
    .breadcrumb-custom li a {
        font-size: 0.8rem;
    }

    .breadcrumb-custom li {
        font-size: 0.8rem;
    }

    .bg-container-detail {
        margin-top: 0px;
        padding: 0px;
    }

    .text-item-detail {
        padding: 10px 20px;
    }

        .text-item-detail p {
            text-align: justify;
        }

    .side-right {
        padding: 0px 10px 10px 20px;
        margin: 0px 10px 0px 15px;
    }

    .nav-detail .nav-link.active {
        padding: 8px;
    }

    .nav-detail .nav-link {
        padding: 8px;
    }

    .member-join {
        margin-right: 10px;
        margin-left: 15px;
    }
}

/* ===========modal============== */
.modal-right {
    background-color: rgb(236, 236, 236);
}

    .modal-right .modal-buy {
        font-size: 1.4rem;
        font-weight: bold;
        color: white;
        background-color: #164499;
        padding: 10px;
        text-align: center;
    }

.search-custom-modal {
    padding-right: 15px;
    height: 0px;
}

    .search-custom-modal .form-control {
        height: 26px !important;
        margin-top: 17px;
        border-radius: 20px !important;
        margin-left: 10px;
    }

.form-control:focus {
    border-color: none !important;
    box-shadow: none !important;
}

.modal-right .number-none,
.modal-right .number-check {
    padding-left: 15px;
    line-height: 60px;
}

p.number-none bdi {
    margin-right: 5px;
    background-color: red;
    min-width: 100px;
    padding: 0px 10px;
    color: red;
}

p.number-check bdi {
    margin-right: 5px;
    background-color: #3c4452;
    min-width: 100px;
    padding: 0px 10px;
    color: #3c4452;
}

.custom-number-modal p {
    background-color: red;
    padding: 10px 10px;
    text-align: center;
    font-weight: bold;
    color: white;
    border-radius: 10px;
    display: inline-block;
}

    .custom-number-modal p.active {
        background-color: #3c4452;
        padding: 10px 10px;
        text-align: center;
        font-weight: bold;
        color: white;
        border-radius: 10px;
    }

.custom-number-modal {
    overflow: auto;
    max-width: 100%;
    width:80%;
    margin: 10px 20px 0px 20px;
}

    .custom-number-modal .col-lg-2 {
        padding: 5px;
    }

.ticked-customer{
    width:23%;
    max-width:55px;
    padding:0px 0px 7px 0px;
}
/* width */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

/* Track */
::-webkit-scrollbar-track {
    box-shadow: inset 0 0 5px grey;
    border-radius: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: red;
    border-radius: 10px;
}

    /* Handle on hover */
    ::-webkit-scrollbar-thumb:hover {
        background: #b30000;
    }

.btn-gradient-modal {
    background: linear-gradient( 76deg, rgba(255, 212, 0, 1) 0%, rgba(255, 136, 0, 1) 100% );
    font-weight: bold;
    display: block;
    text-transform: uppercase;
    color: black;
    border-radius: 10px;
    width: 30%;
    margin-left: auto;
    margin-bottom: 10px;
    margin-top: 10px;
    margin-right: 20px;
}

.btn-title-modal {
    border: 1px solid #979797;
    font-size: 1.2rem;
    font-weight: bold;
    text-transform: uppercase;
    text-align: center;
    display: block;
}
.btn-title-modal:hover{
    color:black !important;
}

.form-item-modal {
    padding: 0px 10px;
}

.check-buy-modal {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
}

    .check-buy-modal h2 {
        font-weight: bold;
        color: #164499;
    }

.check-dieukhoan {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
}

/* login */
.main-login {
    background: url(../images/large-bg.jpg);
    background-size: cover;
}

.main-login a {
    /* color: rgb(0, 217, 255); */
}

.btn-gradient-modal-login {
    background: linear-gradient( 76deg, rgba(255, 212, 0, 1) 0%, rgba(255, 136, 0, 1) 100% );
    font-weight: bold;
    display: block;
    text-transform: uppercase;
    color: black;
    border-radius: 10px;
    margin-bottom: 10px;
    margin-top: 10px;
    transition: .5s;
    padding: 5px 10px;
}

.btn-gradient-modal-signin {
    background: linear-gradient(76deg, #0262e8 0%, #0279ec 100%);
    font-weight: bold;
    display: block;
    text-transform: uppercase;
    color: white;
    border-radius: 10px;
    margin-bottom: 10px;
    margin-top: 10px;
    transition: .5s;
    padding: 4px 10px;
    border-radius: 10px;
}

    .btn-gradient-modal-signin:hover {
        color: white !important;
        transform: scale(1.05);
    }

.btn-gradient-modal-login:hover {
    transform: scale(1.05);
}

.card-bg-form {
    background-color: rgba(0, 0, 0, 0.182);
    border-radius: 10px;
}

.form-input-custom{
    background-color: rgba(255, 255, 255, 0.313);
    border-radius: 20px;

    padding: 0 12px;

    position: relative;
}

.form-input-custom i{
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateX(-50%);

    font-size: 14px;
}

.form-input-custom input:focus,
.form-input-custom input{
    background-color: transparent;
    border: none;
    color: #fff;

    padding-left: 24px;
}

.form-input-custom input::placeholder {
  color: #fff;
  text-align: center;
}

.card-bg {
    background: none;
    color: white;
}

.pagination {
    display: inline-block;
    padding-top: 15px;
}

.pagination li span, .pagination li a {
    /* padding: 8px 16px; */
    text-decoration: none;
    color: white;
    text-align: center;
    font-size: 10px;
}

.pagination li.active {
    background-color: #2392fb;
    color: white;
    border-radius: 5px;
}

/* .pagination li:not(a) {
    padding: 5px 0;
} */

.pagination li:hover {
    opacity: 0.9;
}


.table-reponsive-custom {
    min-width: 1000px;
    width: 100%;
}
iframe {
    max-width: 100%;
}
img {
    max-width: 100%;
    height: unset;
}

a.menu-pc-buy {
    min-width: 175px;
    color: white;
    text-decoration: underline;
    line-height: 43px;
    transition:.5s;
}
a.menu-pc-buy:hover{
    transform:translateY(-5px);
}

.sticky-top.banner-sidebar {
    position: sticky;
    width: 250px;
    height: auto;
    top: 95px;
    left: 10px;
}
.banner-sidebar img.img-fluid {
    position: absolute;
    top: 0px;
    left: -300px;
}

@media(max-width: 1820px){
    .sticky-top.banner-sidebar{
        display:none;
    }
}

/*test*/



@media (max-width: 600px) {
    .block-control {
        flex-direction: column-reverse;
    }

    .tab-control li a {
        padding: 7px 8px !important;
    }

    .tab-control li a span{
       font-size: 14px;
    }

    .box-search-table-transaction {
        width: 100%;
        margin: 8px 0 20px;
    }

    #menu2 > ul{
        display: flex;
        flex-direction: column;
    }

    .card-bg{
        margin: 0 10px;
    }

    #menu3,
    #menu4 {
        padding: 20px !important;
    }

    #menu3 form .form-group,
    #menu4 form .form-group{
        /* margin-top: 14px; */
    } 

    .bank-control li{
        margin-bottom: 10px;
    }

    #menu2 .info-deposit tr > td:first-child {
        font-weight: 700;
        margin-right: 8px;
    }

    #menu2 .info-deposit tr {
        display: flex;
        margin-bottom: 10px;
    }

    #menu2  .info-deposit tbody tr:first-child th{
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

        #menu2  .info-deposit tbody tr:first-child img {
            height: 50px !important;
            margin-right: 12px;
        }

    .main{
        padding: 40px 0 0!important;
    }

    .main .container{
        margin-top: 50px;
    }

    .section-footer{
        padding: 10px !important;
    }
}

@media (max-width: 400px) {
    .quantityProductMb {
        position: absolute;
        top: 25%;
        transform: translate(-47%,-50%);
        left: 10%;
        background: red;
        width: 20px;
        text-align: center;
        border-radius: 1000rem;
        height: 20px;
        line-height: 18px;
        color: white;
        font-size: 0.7rem;
    }
}
  
html,
body {
    background-color: #fff !important;
    overflow-x: hidden;
}

.lSSlideWrapper,
.lSSlideWrapper .lSFade {
  position: relative;
}
.lSSlideWrapper .lSSlide,
.lSSlideWrapper.usingCss .lSFade > * {
  -webkit-transition-timing-function: inherit !important;
  transition-timing-function: inherit !important;
  -webkit-transition-duration: inherit !important;
  transition-duration: inherit !important;
}
.lSSlideOuter,
.lSSlideOuter .lSPager.lSGallery {
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
}
.lSSlideOuter .lSPager.lSGallery:after,
.lSSlideWrapper > .lightSlider:after {
  clear: both;
}
.lSSlideOuter {
  overflow: hidden;
  user-select: none;
}
.lightSlider:after,
.lightSlider:before {
  content: " ";
  display: table;
}
.lightSlider {
  overflow: hidden;
  margin: 0;
}
.lSSlideWrapper {
  max-width: 100%;
  overflow: hidden;
}
.lSSlideWrapper .lSSlide {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: all 1s;
  -webkit-transition-property: -webkit-transform, height;
  -moz-transition-property: -moz-transform, height;
  transition-property: transform, height;
}
.lSSlideWrapper .lSFade > * {
  position: absolute !important;
  top: 0;
  left: 0;
  z-index: 9;
  margin-right: 0;
  width: 100%;
}
.lSSlideWrapper.usingCss .lSFade > * {
  opacity: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
.lSSlideWrapper .lSFade > .active {
  z-index: 10;
}
.lSSlideWrapper.usingCss .lSFade > .active {
  opacity: 1;
}
.lSSlideOuter .lSPager.lSpg {
  margin: 10px 0 0;
  padding: 0;
  text-align: center;
}
.lSSlideOuter .lSPager.lSpg > li {
  cursor: pointer;
  display: inline-block;
  padding: 0 5px;
}
.lSSlideOuter .lSPager.lSpg > li a {
  background-color: #222;
  border-radius: 30px;
  display: inline-block;
  height: 8px;
  overflow: hidden;
  text-indent: -999em;
  width: 8px;
  position: relative;
  z-index: 99;
  -webkit-transition: all 0.5s linear 0s;
  transition: all 0.5s linear 0s;
}
.lSSlideOuter .lSPager.lSpg > li.active a,
.lSSlideOuter .lSPager.lSpg > li:hover a {
  background-color: #428bca;
}
.lSSlideOuter .media {
  opacity: 0.8;
}
.lSSlideOuter .media.active {
  opacity: 1;
}
.lSSlideOuter .lSPager.lSGallery {
  list-style: none;
  padding-left: 0;
  margin: 0;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -webkit-transition-property: -webkit-transform;
  -moz-transition-property: -moz-transform;
  user-select: none;
}
.lSSlideOuter .lSPager.lSGallery li {
  overflow: hidden;
  -webkit-transition: border-radius 0.12s linear 0s 0.35s linear 0s;
  transition: border-radius 0.12s linear 0s 0.35s linear 0s;
}
.lSSlideOuter .lSPager.lSGallery li.active,
.lSSlideOuter .lSPager.lSGallery li:hover {
  border-radius: 5px;
}
.lSSlideOuter .lSPager.lSGallery img {
  display: block;
  height: auto;
  max-width: 100%;
}
.lSSlideOuter .lSPager.lSGallery:after,
.lSSlideOuter .lSPager.lSGallery:before {
  content: " ";
  display: table;
}
.lSAction > a {
  width: 32px;
  display: block;
  top: 50%;
  height: 32px;
  background-image: url(../../img/controls.png);
  cursor: pointer;
  position: absolute;
  z-index: 99;
  margin-top: -16px;
  opacity: 0.5;
  -webkit-transition: opacity 0.35s linear 0s;
  transition: opacity 0.35s linear 0s;
}
.lSAction > a:hover {
  opacity: 1;
}
.lSAction > .lSPrev {
  background-position: 0 0;
  left: 10px;
}
.lSAction > .lSNext {
  background-position: -32px 0;
  right: 10px;
}
.lSAction > a.disabled {
  pointer-events: none;
}
.cS-hidden {
  height: 1px;
  opacity: 0;
  filter: alpha(opacity=0);
  overflow: hidden;
}
.lSSlideOuter.vertical {
  position: relative;
}
.lSSlideOuter.vertical.noPager {
  padding-right: 0 !important;
}
.lSSlideOuter.vertical .lSGallery {
  position: absolute !important;
  right: 0;
  top: 0;
}
.lSSlideOuter.vertical .lightSlider > * {
  width: 100% !important;
  max-width: none !important;
}
.lSSlideOuter.vertical .lSAction > a {
  left: 50%;
  margin-left: -14px;
  margin-top: 0;
}
.lSSlideOuter.vertical .lSAction > .lSNext {
  background-position: 31px -31px;
  bottom: 10px;
  top: auto;
}
.lSSlideOuter.vertical .lSAction > .lSPrev {
  background-position: 0 -31px;
  bottom: auto;
  top: 10px;
}
.lSSlideOuter.lSrtl {
  direction: rtl;
}
.lSSlideOuter .lSPager,
.lSSlideOuter .lightSlider {
  padding-left: 0;
  list-style: none;
}
.lSSlideOuter.lSrtl .lSPager,
.lSSlideOuter.lSrtl .lightSlider {
  padding-right: 0;
}
.lSSlideOuter .lSGallery li,
.lSSlideOuter .lightSlider > * {
  float: left;
}
.lSSlideOuter.lSrtl .lSGallery li,
.lSSlideOuter.lSrtl .lightSlider > * {
  float: right !important;
}
@-webkit-keyframes rightEnd {
  0%,
  100% {
    left: 0;
  }
  50% {
    left: -15px;
  }
}
@keyframes rightEnd {
  0%,
  100% {
    left: 0;
  }
  50% {
    left: -15px;
  }
}
@-webkit-keyframes topEnd {
  0%,
  100% {
    top: 0;
  }
  50% {
    top: -15px;
  }
}
@keyframes topEnd {
  0%,
  100% {
    top: 0;
  }
  50% {
    top: -15px;
  }
}
@-webkit-keyframes leftEnd {
  0%,
  100% {
    left: 0;
  }
  50% {
    left: 15px;
  }
}
@keyframes leftEnd {
  0%,
  100% {
    left: 0;
  }
  50% {
    left: 15px;
  }
}
@-webkit-keyframes bottomEnd {
  0%,
  100% {
    bottom: 0;
  }
  50% {
    bottom: -15px;
  }
}
@keyframes bottomEnd {
  0%,
  100% {
    bottom: 0;
  }
  50% {
    bottom: -15px;
  }
}
.lSSlideOuter .rightEnd {
  -webkit-animation: rightEnd 0.3s;
  animation: rightEnd 0.3s;
  position: relative;
}
.lSSlideOuter .leftEnd {
  -webkit-animation: leftEnd 0.3s;
  animation: leftEnd 0.3s;
  position: relative;
}
.lSSlideOuter.vertical .rightEnd {
  -webkit-animation: topEnd 0.3s;
  animation: topEnd 0.3s;
  position: relative;
}
.lSSlideOuter.vertical .leftEnd {
  -webkit-animation: bottomEnd 0.3s;
  animation: bottomEnd 0.3s;
  position: relative;
}
.lSSlideOuter.lSrtl .rightEnd {
  -webkit-animation: leftEnd 0.3s;
  animation: leftEnd 0.3s;
  position: relative;
}
.lSSlideOuter.lSrtl .leftEnd {
  -webkit-animation: rightEnd 0.3s;
  animation: rightEnd 0.3s;
  position: relative;
}
.lightSlider.lsGrab > * {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}
.lightSlider.lsGrabbing > * {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

/* STYLE SHEET */
.header-mobile-profile {
    background: url(../img/header-bg.png) top center no-repeat;
    background-size: 100% auto;
    padding: 10px 0;
    width: 100%;
    z-index: 2;
    padding: 20px 0px 70px 0px;
}

.info-profile img {
    border-radius: 1000px;
    object-fit: cover;
    width: 100px;
    height: 100px;
    margin: -50px auto 0px;
    display: flex;
    box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
    background: #fff;
}
button{
    color: #fff;
}
.hidden {
    display: none;
}
.rounded {
    border-radius: 1rem !important;
}

.update-info {
    float: right;
}

@media (max-width:1023px) {
    .main-content {
        padding-top: 56px;
        margin: 0;
    }

    .update-info {
        float: none;
        text-align: center;
        display: block;
        border-radius: 1rem;
        margin-top: 20px;
    }
}

/*menu*/

ul.dropdown-menu.profile-show.avt-drop {
    top: 65px;
    right: -120px;
    background-color: var(--primary-color);
}

.avt-drop {
    right: 36% !important;
    margin-top: 0 !important;
    width: 320px;
    left: 80% !important;
    background: url(../img/header-bg.png) no-repeat;
    background-size: cover;
    border: none;
    border-radius: unset;
    color: white;
    max-width: 320px;
}

    .avt-drop img {
        height: unset;
        max-width: 100%;
        width: 50px;
        filter: grayscale(1);
    }

.badge {
    background-color: #fdb63f;
    color: #000;
    font-size: .8rem;
}

.monney {
    display: block;
    width: 100%;
    padding: 0.25rem 1rem;
    clear: both;
    font-weight: 400;
    color: #fff;
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}
.avt-drop li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.418);
}
.avt-drop .dropdown-item{
    color:white;
}
    .avt-drop .dropdown-item:hover {
        background: none !important;
        color: white !important;
        transform: translateY(-3px);
    }
.avt-drop .dropdown-item {
    background: none !important;
    color: white !important;
}

/*payment*/
.header-mobile-profile {
    background: url(../img/header-bg.png) top center no-repeat;
    background-size: 100% auto;
    padding: 10px 0;
    width: 100%;
    z-index: 2;
    padding: 20px 0px 70px 0px;
}

.rounded {
    border-radius: 1rem !important;
}

.naptien {
    min-width: 80px;
    min-height: 90px;
}

    .naptien p {
        font-size: 1rem;
        font-weight: bold;
    }

    .naptien img {
        width: 50px;
        height: 50px;
        object-fit: cover;
        margin: auto;
        display: flex;
        background-color: #012d80;
        padding: 5px;
        border-radius: 10px;
        margin-bottom: 5px;
    }

.payment-pc {
    width: 50%;
    margin: auto;
}

.bank-payment {
    display: flex;
    justify-content: center;
}

    .bank-payment .payment-wallet {
        margin-right: 5px;
        flex-direction: column;
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .bank-payment img {
        width: 60px;
        height: 60px;
        margin-bottom: 10px;
    }

.bg-upay {
    background-image: url(https://id.uto.vn/Content/LayoutAccount/images/bg_assets_blue.png);
    background-repeat: no-repeat;
    background-size: cover;
}



@media (max-width:1023px) {
    .main-content {
        padding-top: 56px;
        margin: 0;
    }

    .payment-pc {
        width: 100%;
        margin: auto;
    }

    .naptien p {
        font-size: 0.8rem;
        font-weight: bold;
    }

    .payment-wallet:not(:first-child) {
        margin-top: -30px;
    }

    .bank-payment {
        flex-direction: column;
    }

        .bank-payment .payment-wallet {
            flex-direction: row;
            justify-content: start;
            text-align: left;
        }

    .hidden-mobile {
        display: none !important;
    }
}

/*modal*/

#staticBackdrop .modal-content {
    border: 2px solid var(--primaryColor);
    border-radius: 20px;
}

#staticBackdrop .modal-body {
    padding-top: 4px;
}

#staticBackdrop .modal-header {
    padding: 10px;
}

.form-ticked-custom {
    background-color: #f1f1f1;
    padding: 10px;
    border-radius: 20px;
    margin: 10px 0;
    max-height: 260px;
    overflow-y: auto;
}

.buy-ticket-item {
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.buy-ticket-item-control {
    display: flex;
    align-items: center;
}

.buy-ticket-item-control-delete {
    margin-right: 10px;
}

    .buy-ticket-item-control-delete i {
        color: #7e7e7e;
    }

.buy-ticket-item-control-rebuy i {
    color: #006300;
}

.buy-ticket-item:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 4px;
}

.add-ticket-block input {
    border: 1px solid #ddd;
    border-radius: 10px;
    text-align: center;
    padding: 10px;
    margin-right: 10px;
}

.add-ticket-block {
    justify-content: flex-end;
}


.quantity-button {
    padding: 0 10px;
    background-color: #ddd;
    border-radius: 10px;
    transition: all 0.5s linear;
}

    .quantity-button:hover {
        cursor: pointer;
        background-color: var(--primaryColor);
    }

        .quantity-button:hover i {
            color: #fff;
        }

.buy-ticket-product-name {
    padding: 10px;
    width: 100%;
    margin: 10px 0;
    border-radius: 10px;
    border: 1px solid var(--primaryColor);
    text-align: center;
    font-weight: 600;
}

.check-dieukhoan {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cart-total-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.cart-total-voucher div {
    width: 100%;
    /* max-width: 400px; */
    /* display: flex; */
    /* justify-content: flex-end; */
}

.cart-total-voucher {
    display: flex;
    justify-content: flex-end;
    margin: 10px 0;
}

.cart-total-text {
    font-weight: 600;
    margin-right: 10px;
}

.cart-total-price {
    min-width: 200px;
    text-align: right;
}

.cart-total-final {
    font-weight: 700;
    font-size: 17px;
}

.cart-total-final-price {
    font-size: 22px;
    font-weight: 800;
}

/*product img*/
.product a {
    display: block;
}



@media(min-width:992px){
    .category-voucher{
        overflow:auto;
    }
}

::-webkit-scrollbar {
    width: 5px;
}
::-webkit-scrollbar-track {
    background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: #888;
    border-radius:10px;
}

    /* Handle on hover */
    ::-webkit-scrollbar-thumb:hover {
        background: #555;
    }

th {
    white-space: nowrap;
}

.primary-button {
    white-space: nowrap;
}

/* STYLE */
/* VARIABLEs */
:root {
    --primaryColor: #A20401;
    --primaryYellow: #f6c820;
    --primaryGray: #E6E6E5;
}

/* animation */
@keyframes noti-slide {
    0% {
        transform: translateX(-100vw);
    }

    100% {
        transform: translateX(-100%);
    }
}

@keyframes ticket-win {
    0% {
        box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 1px, rgba(0, 0, 0, 0.3) 0px 1px 1px 1px, rgba(0, 0, 0, 0.2) 0px 1px 1px inset;
    }

    100% {
        box-shadow: var(--primaryYellow) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
    }
}
.padding20{
    padding: 20px;
}
.itemHomeCate {
    margin-bottom: 15px;
}
    .itemHomeCate .nav-mobile-item {
        text-align: center;
        background: #fff;
        padding: 3px;
        border-radius: 5px;
    }
        .itemHomeCate .nav-mobile-item .fa {
            color: red;
            font-size: 25px;
        }
    .bg-green {
        background: green;
    }
/* UTILS */
html, body {
    box-sizing: border-box;
    scroll-behavior: smooth;
    background-color: var(--primaryGray);
}
td, th{
    white-space: nowrap;
}
button {
    color: #fff;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    /* -moz-appearance: textfield; */
}

input[type=checkbox],
input[type=radio] {
    accent-color: var(--primaryColor);
}

ul {
    padding-left: 0;
}

.table {
    margin-bottom: 0;
}

input:focus-visible {
    outline: none;
}

a {
    display: inline-block;
    color: unset;
    text-decoration: none;
}

.mt-20 {
    margin-top: 20px;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.banner {
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
}

a:hover {
    text-decoration: none;
    color: unset;
}

.centering {
    display: flex;
    align-items: center;
    justify-content: center;
}

.centering-y {
    display: flex;
    align-items: center;
}

.hiden-scroll-bar {
    -ms-overflow-style: none; /* Internet Explorer 10+ */
    scrollbar-width: none; /* Firefox */
}

    .hiden-scroll-bar::-webkit-scrollbar {
        display: none; /* Safari and Chrome */
    }

.over-screen {
    padding: 0;
}

/* custom inline */

.primary-gradient-text {
    user-select: none;
    font-weight: 900 !important;
    background-image: linear-gradient(180deg, #003523 13%, #003523 73%, #00875a 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-transform: uppercase;
    font-family: 'Roboto', sans-serif;
}

.primary-button {
    display: inline-flex;
    align-items: center;
    -webkit-box-shadow: 2px 4px 3px -3px #000;
    border-radius: 6px;
    background-image: linear-gradient(180deg, #FACD4D 0%, #FAA623 71%, #F2921E 100%);
    padding: 8px 12px;
    margin: 0 10px;
    color: #3A3B39;
    font-weight: 800;
    font-size: 13px;
    color: #000;
}

.primary-button-flat {
    display: inline-flex;
    align-items: center;
    border-radius: 18px;
    background-color: var(--primary-color);
    padding: 8px 12px;
    margin: 0 10px;
    color: #fff;
    font-weight: 800;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.25s ease-in-out;
    width: fit-content;
    min-width: 120px;
    justify-content: center;
}

.primary-button-flat:hover {
    transform: scale(0.98);
    color: #fff !important;
    background-color: var(--primary-color) !important;
}

.primary-button-flat.outline {
    border: 1px solid var(--primary-color);
    background-color: #fff;
    color: var(--primary-color);
}

.second-button {
    display: inline-flex;
    align-items: center;
    -webkit-box-shadow: 2px 4px 3px -3px #000;
    border-radius: 6px;
    padding: 8px 12px;
    border: 1px solid var(--primaryColor);
    color: #3A3B39;
    font-weight: 800;
}

.primary-button i {
    margin-right: 10px;
}

.title-white {
    font-weight: 500;
    color: #fff;
    font-size: 32px;
    letter-spacing: 1px;
}

.desc-white {
    color: #fff;
    font-size: 26px;
}

.title-primary-blue {
    font-weight: 500;
    color: #478FFE;
    font-weight: 700;
    font-size: 32px;
    letter-spacing: 1px;
}

.second-button:hover,
.primary-button:hover {
    cursor: pointer;
    transform: scale(0.98);
}

.paragraph {
    color: #fff;
    text-align: justify;
    line-height: 28px;
    letter-spacing: 1px;
    font-weight: 300;
}

    .paragraph.center {
        text-align-last: center;
    }

.primary-title {
    color: var(--primary-color);
    font-size: 28px;
    font-weight: 700;
    text-align: center;
}

.yellow-text {
    color: rgb(244, 208, 17);
}

.hover-color-to-primary:hover {
    cursor: pointer;
    color: var(--primaryYellow);
}

.price {
    font-weight: 600;
    color: var(--primaryColor);
}

.primary-block {
    background-color: #fff;
    /* padding: 10px; */
    border-radius: 10px;
}

.detail-buy-button {
    width: 100%;
    justify-content: center;
}

/* MAIN */

.main-content {
    padding-top: 130px;
    background-color: #F4F5F5;
}

@media (max-width: 1023px) {
    .main-content {
        padding-top: 60px;
    }
}

.header {
    background-color: transparent;
    background-size: 100% auto;
    color: #fff;
    padding: 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 2000;
}

#header.header {
    background-color: transparent !important;
    padding: 0 !important;
    height: auto !important;
}

/* Override container padding inside header */
#header .container {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

/* ===== TOP BAR ===== */
.uv-header-top {
    background: #0035a8;
    width: 100%;
}

.uv-header-top-inner {
    width: 100%;
    max-width: 1453px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    height: 85px;
    padding: 0 120px 0 93px;
    gap: 0;
}

.uv-header-logo {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    width: 100px;
    margin-right: 154px;
}

.uv-header-logo img {
    width: 79px;
    height: auto;
    object-fit: contain;
    display: block;
}

.uv-header-search {
    flex: 0 0 720px;
    width: 720px;
    display: flex;
    align-items: center;
    min-width: 720px;
    margin: 0;
}

.uv-header-search-form {
    display: flex;
    width: 720px;
    height: 32px;
}

.uv-header-search-input {
    flex: 1;
    border: none;
    outline: none;
    padding: 0 13px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #333;
    background: #fff;
    border-radius: 0;
    min-width: 0;
    height: 32px;
}

.uv-header-search-input::placeholder {
    color: #7c7c7c;
    font-size: 16px;
    font-weight: 400;
}

.uv-header-search-btn {
    background: #ffba50;
    border: none;
    width: 59px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.2s;
    padding: 0;
}

.uv-header-search-btn:hover {
    background: #ffba50;
}

.uv-header-search-btn img {
    width: 16px;
    height: 16px;
    display: block;
}

.uv-header-actions {
    display: flex;
    align-items: center;
    gap: 17px;
    flex-shrink: 0;
    margin-left: 45px;
}

.uv-header-cart {
    position: relative;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 35px;
    height: 35px;
}

.uv-header-cart-badge {
    position: absolute;
    top: -2px;
    right: -4px;
    background: #ffba50;
    color: #000;
    font-size: 11px;
    font-weight: 700;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.uv-header-notif {
    position: relative;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    transition: opacity 0.2s;
    width: 35px;
    height: 35px;
}

.uv-header-notif:hover {
    color: #fff;
    opacity: 1;
}

.uv-header-notif-badge {
    position: absolute;
    top: -2px;
    right: -4px;
    background: #ffba50;
    color: #000;
    font-size: 11px;
    font-weight: 700;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.uv-header-icon-img {
    display: block;
    object-fit: contain;
}

.uv-header-cart-img {
    width: 30px;
    height: 30px;
}

.uv-header-bell-img {
    width: 30px;
    height: 30px;
}

.uv-header-user-dropdown {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
}

.uv-header-user {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 0;
    color: #fff;
    border-radius: 0;
    transition: none;
    text-decoration: none;
}

.uv-header-user:hover,
.uv-header-user:focus {
    background: transparent;
    outline: none;
}

.uv-header-user-dropdown .uv-avt-drop {
    display: block;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    left: auto;
    margin-top: 0;
    z-index: 1080;
    transition: opacity 0.25s ease 0.25s, visibility 0s linear 0.5s, transform 0.25s ease 0.25s;
    transform: translateY(8px);
}

.uv-header-user-dropdown .uv-avt-drop::before {
    content: "";
    position: absolute;
    top: -15px; /* Bridge the 8px gap */
    left: 0;
    right: 0;
    height: 15px;
    background: transparent;
}

.uv-header-user-dropdown:hover .uv-avt-drop,
.uv-header-user-dropdown:focus-within .uv-avt-drop {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition: opacity 0.2s ease, visibility 0s linear, transform 0.2s ease;
}

.uv-header-user-avt {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    overflow: hidden;
    background: #ffffff;
    flex-shrink: 0;
    border: none;
}

.uv-header-user-avt img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.uv-header-user-name {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    max-width: 118px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: normal;
}

.uv-header-auth {
    display: flex;
    align-items: center;
    gap: 8px;
}

.uv-header-auth-btn {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
    padding: 6px 14px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 4px;
    transition: background 0.2s;
}

.uv-header-auth-btn:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

.uv-header-auth-btn.register {
    background: #ffba50;
    border-color: #ffba50;
    color: #000;
}

.uv-header-auth-btn.register:hover {
    background: #e6a43a;
    color: #000;
}



/* ===== NAV BAR ===== */
.uv-header-nav {
    background: #00096d;
    width: 100%;
}

.uv-header-nav-inner {
    width: 100%;
    max-width: 1453px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    height: 45px;
    padding: 0 120px 0 93px;
}

.uv-header-categories-btn {
    display: flex;
    align-items: center;
    gap: 9px; /* Increased from 6px to push text right by 3px */
    background: none;
    border: none;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    padding: 0;
    margin-right: 70px;
    height: 100%;
    white-space: nowrap;
    transition: none;
}

/* Category Dropdown Configuration */
.uv-header-categories-wrapper {
    position: relative;
    height: 100%;
    margin-right: 70px;
}

/* We must remove the margin from the button since wrapper has it now */
.uv-header-categories-wrapper .uv-header-categories-btn {
    margin-right: 0;
}

.uv-categories-dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 250px;
    background: #ffffff;
    border-radius: 0 0 12px 12px;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
    padding: 10px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.25s ease 0.25s, visibility 0s linear 0.5s, transform 0.25s ease 0.25s;
    z-index: 100;
}

/* Invisible bridge so mouse doesn't lose hover between button and menu */
.uv-categories-dropdown-menu::before {
    content: '';
    position: absolute;
    top: -15px;
    left: 0;
    width: 100%;
    height: 15px;
    background: transparent;
}

.uv-header-categories-wrapper:hover .uv-categories-dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: opacity 0.2s cubic-bezier(0.165, 0.84, 0.44, 1), visibility 0s linear, transform 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.uv-cat-drop-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 20px;
    text-decoration: none;
    color: #4b5563;
    font-size: 15px;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.uv-cat-drop-item img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.uv-cat-drop-item:hover {
    background-color: #f3f4f6;
    color: var(--uv-blue);
}

/* User Profile Dropdown Modernization */
.dropdown-menu.uv-avt-drop {
    background-color: #ffffff;
    border: none;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    padding: 8px 0;
    min-width: 200px;
}

.dropdown-menu.uv-avt-drop .dropdown-item {
    font-size: 15px;
    font-weight: 500;
    color: #4b5563;
    padding: 10px 20px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.dropdown-menu.uv-avt-drop .dropdown-item:hover {
    background-color: #f3f4f6;
    color: var(--uv-blue);
}

.uv-header-categories-btn:hover {
    opacity: 1;
}

.uv-header-categories-btn span {
    line-height: 1.3;
}

.uv-header-menu-icon {
    width: 18px;
    height: 18px;
    display: block;
    object-fit: contain;
}

.uv-header-nav-links {
    display: flex;
    align-items: center;
    gap: 73px;
    flex: 1;
    padding-left: 0;
}

.uv-header-nav-link {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    text-decoration: none;
    padding: 0;
    height: auto;
    display: flex;
    align-items: center;
    white-space: nowrap;
    transition: opacity 0.2s;
    line-height: 1.3;
}

.uv-header-nav-link:hover,
.uv-header-nav-link.active {
    background: transparent;
    color: #fff;
    opacity: 1;
}

.uv-cart-dropdown-wrapper {
    position: relative;
}

/* ===== HEADER RESPONSIVE ===== */
@media (max-width: 1399px) {
    .uv-header-top-inner,
    .uv-header-nav-inner {
        padding-left: 40px;
        padding-right: 40px;
    }

    .uv-header-logo {
        margin-right: 60px;
    }

    .uv-header-search {
        flex: 1;
        width: auto;
        min-width: 0;
    }

    .uv-header-search-form {
        width: 100%;
    }

    .uv-header-actions {
        margin-left: 24px;
        gap: 12px;
    }

    .uv-header-categories-btn {
        margin-right: 32px;
    }

    .uv-header-nav-links {
        gap: 36px;
    }
}

@media (max-width: 1199px) {
    .uv-header-top-inner,
    .uv-header-nav-inner {
        padding-left: 20px;
        padding-right: 20px;
    }

    .uv-header-logo {
        margin-right: 24px;
        width: 84px;
    }

    .uv-header-logo img {
        width: 68px;
    }

    .uv-header-nav-links {
        gap: 20px;
    }

    .uv-header-nav-link,
    .uv-header-categories-btn,
    .uv-header-user-name,
    .uv-header-search-input {
        font-size: 14px;
    }
}

@media (max-width: 991px) {
    .uv-header-top-inner {
        padding: 0 15px;
        height: 70px;
    }

    .uv-header-nav-inner {
        padding: 0 15px;
    }

    .uv-header-logo {
        margin-right: 16px;
        width: 70px;
    }

    .uv-header-logo img {
        width: 58px;
    }

    .uv-header-search-form {
        height: 34px;
    }

    .uv-header-search-input,
    .uv-header-search-btn {
        height: 34px;
    }

    .uv-header-search-btn {
        width: 44px;
    }

    .uv-header-nav-link {
        font-size: 13px;
    }

    .uv-header-categories-btn {
        font-size: 13px;
        margin-right: 12px;
    }

    .uv-header-nav-links {
        gap: 12px;
    }
}
#modalDeposit table{
    width: 100%;
}
.header-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.header-logo img {
    height: 45px;
    width: auto;
}

.header-nav {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: space-around;
    padding: 0 20px;
}

.header-nav-item {
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    transition: all 0.5s ease;
}

    .header-nav-item:not(:last-child) {
        margin-right: 8px;
    }

.header-search {
    padding: 0 10px;
    cursor: pointer;
    position: relative;
}

.header-search-input {
    position: absolute;
    top: 70px;
    right: -100vw;
    display: flex;
    align-items: center;
    transition: all 0.5s linear;
    padding: 6px 2px 6px 6px;
    background-color: #DD071E;
    border-radius: 16px;
    z-index: 2;
    border: 1px solid var(--primaryYellow);
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

    .header-search-input .primary-button {
        width: 100px;
        margin: 0 5px;
    }

    .header-search-input input {
        border: 2px solid var(--primaryColor);
        padding: 4px 8px;
        border-radius: 10px;
        border: none;
        width: 300px;
        height: 40px;
    }

    .header-search-input.active {
        right: 0;
    }

.header-search.active i {
    color: var(--primaryYellow);
}

.header-search i {
    font-size: 22px;
}

.header-cart {
    position: relative;
    padding: 0 10px;
}

    .header-cart i {
        font-size: 22px;
    }

.header-notification {
    position: relative;
    padding: 0 10px;
}

    .header-notification i {
        font-size: 22px;
    }

.header-notification-icon {
    color: var(--primary-color);
    text-decoration: none;
    display: inline-block;
    transition: opacity 0.3s;
}

    .header-notification-icon:hover {
        opacity: 0.8;
        color: var(--primary-color);
    }

.header-cart-noti {
    position: absolute;
    top: -60%;
    left: 0%;
    min-width: 22px;
    text-align: center;
    background-color: #FAB910;
    padding: 3px;
    border-radius: 50%;
    font-size: 10px;
    color: #000;
    font-weight: 700;
}

.header-user {
    display: flex;
    align-items: center;
    margin-left: 10px;
}

.header-user-avt {
    height: 40px;
    width: 40px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--primaryYellow);
    background-color: #000;
}

.header-user-name {
    width: 120px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 600;
}

.cart-block {
    padding: 10px 0;
    border-radius: 12px;
    width: 300px;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.cart-block-product {
    padding: 0 0 10px;
    max-height: 260px;
    overflow: auto;
}

.cart-product-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    /* margin-bottom: 10px; */
    padding: 10px 10px;
    transition: all 0.5s ease;
}

    .cart-product-item:hover {
        cursor: pointer;
        background-color: rgba(221, 221, 221, 0.296);
    }

.cart-product-item-close {
    height: 14px;
    width: 14px;
    background-color: var(--primaryColor);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.5s ease-out;
}

    .cart-product-item-close svg {
        font-size: 10px;
        color: #fff;
    }

    .cart-product-item-close:hover {
        transform: scale(1.4);
    }

.cart-product-item-img {
    margin-right: 8px;
    height: 50px;
    width: 50px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    /* margin-bottom: 10px; */
    border: 0.5px solid var(--primaryColor);
}

    .cart-product-item-img img {
        height: 100%;
        width: auto;
    }

.cart-product-item-infor {
    flex: 1;
}

.cart-product-item-name {
    display: -webkit-box;
    text-decoration: none;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 14px;
    /* height: 42px; */
    margin-bottom: 6px;
}

    .cart-product-item-name:hover {
        cursor: pointer;
        font-weight: 600;
    }

.cart-product-item-price {
    /* text-align: right; */
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cart-product-item-price-value {
    font-size: 14px;
}

.cart-block-total {
    border-top: 0.5px solid rgba(221, 221, 221, 0.453);
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cart-block-total-price {
    font-size: 22px;
}

.cart-block-total-title {
    font-weight: 600;
}

.cart-block-button {
    padding: 10px;
    padding-bottom: 3px;
}

    .cart-block-button .second-button {
        display: flex;
        justify-content: center;
        margin-bottom: 10px;
        font-size: 14px;
    }

    .cart-block-button .primary-button {
        margin: 0;
        display: flex;
        justify-content: center;
        font-size: 14px;
    }

.empty-cart-title {
    padding: 10px 0;
    font-weight: 600;
    color: #DA4352;
    font-size: 14px;
}

/* INTRO SLIDER */
.intro-slider {
    border-radius: 12px;
    overflow: hidden;
    margin: 10px 0;
}

/* NOTI SLIDE */
.noti {
    display: flex;
    padding: 5px;
    border-radius: 10px;
    /* background: url(./assets/img/header-bg.png) top center no-repeat; */
    background-size: 100% auto;
    margin: 10px 0;
    background: #D5052C;
}

.noti-icon {
    /* padding: 0 10px; */
    padding: 0 10px 0 5px;
}

    .noti-icon svg {
        font-size: 16px;
        color: #fff;
    }

.noti-wrapper {
    overflow: hidden;
}

.noti-content {
    color: #fff;
    white-space: nowrap;
    transition: all 0.5s linear;
    animation: noti-slide 30s linear infinite;
    font-size: 14px;
}

.categories-card {
    border: 2px solid var(--primaryColor);
    padding: 10px;
    border-radius: 20px;
    display: flex;
    transition: all 0.5s linear;
    width: 100%;
}

    .categories-card.active,
    .categories-card:hover {
        cursor: pointer;
        background-color: var(--primaryColor);
    }

        .categories-card.active .categories-card-name,
        .categories-card:hover .categories-card-name {
            color: #fff;
        }

        .categories-card.active img,
        .categories-card:hover img {
            filter: invert(1);
        }

.categories-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 4px;
}

    .categories-card-icon img {
        height: 33px !important;
        width: auto !important;
        /* margin: 10px 0; */
    }

.categories-card-name {
    font-weight: 600;
    display: flex;
    color: #505050;
    font-size: 12px;
    display: flex;
    align-items: center;
}

.categories-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 10px 0 10px;
}

.categories-title {
    font-weight: 700;
    font-size: 24px;
}

.categories-see-all {
    font-weight: 700;
    color: var(--primaryColor);
}

/* PRODUCT */
.product {
    /* padding: 10px; */
    border: 2px solid #dddddd1c;
    border-radius: 10px;
    overflow: hidden;
    width: 100%;
    background-color: #fff;
    transition: all 0.2s linear;
    box-shadow: rgb(99 99 99 / 9%) 0px 2px 8px 0px;
}

    .product:hover {
        cursor: pointer;
        border: 2px solid var(--primaryColor);
    }

@-webkit-keyframes color_change {
    from {
        color: white;
        background-color: red;
    }

    to {
        color: yellow;
        background-color: darkorange;
    }
}

@-moz-keyframes color_change {
    from {
        color: white;
        background-color: red;
    }

    to {
        color: yellow;
        background-color: darkorange;
    }
}

@-ms-keyframes color_change {
    from {
        color: white;
        background-color: red;
    }

    to {
        color: yellow;
        background-color: darkorange;
    }
}

@-o-keyframes color_change {
    from {
        color: white;
        background-color: red;
    }

    to {
        color: yellow;
        background-color: darkorange;
    }
}

@keyframes color_change {
    from {
        color: white;
        background-color: red;
    }

    to {
        color: yellow;
        background-color: darkorange;
    }
}
.color-animation {
    -webkit-animation: color_change 1s infinite alternate;
    -moz-animation: color_change 1s infinite alternate;
    -ms-animation: color_change 1s infinite alternate;
    -o-animation: color_change 1s infinite alternate;
    animation: color_change 1s infinite alternate;
}
.product-img {
    height: 130px;
    position: relative
}

    .product-img img {
        height: 100%;
        width: auto;
    }
    .product-img .discount {
        position: absolute;
        bottom: -9px;
        background: red;
        color: #fff;
        padding: 2px 8px;
        font-size: 12px;
        border-radius: 5px;
    }
    .product-name {
        text-align: center;
        font-weight: 600;
        margin: 4px 0;
        display: -webkit-box;
        text-decoration: none;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0 4px;
        min-height: 48px;
    }

.product-price {
    text-align: center;
    font-size: 14px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 4px;
    margin: 0 10px;
}

.product-title {
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    margin-top: 6px;
    line-height: 12px;
}

.product-price-ticket {
    text-align: center;
    font-weight: 700;
}

.product-member {
    padding: 0 10px;
    align-items: center;
}

.product-member-avt {
    height: 15px;
    width: 15px;
    overflow: hidden;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: scale(1.5);
    border: 1px solid;
    background: #fff;
}

    .product-member-avt img {
        height: 100%;
        width: auto;
    }

.detail-desc-content {
    max-height: 200px;
    overflow: hidden;
    transition: all 0.4s ease-in-out;
}

.product-buy {
    font-weight: 700;
    border: 2px solid var(--primary-color);
    display: block;
    text-transform: uppercase;
    text-align: center;
    padding: 8px 4px;
    margin: 5px 10px 10px;
    border-radius: 820px;
    transition: all 0.2s linear;
    color: var(--primaryColor);
    font-size: 12px;
}

.product-buy:hover {
    background: var(--primaryColor);
    border-color: var(--primaryColor) !important;
    color: #fff;
    -webkit-text-fill-color: unset;
}

.product-price-ticket .price {
    font-size: 14px;
    font-weight: 700;
}

.product-process {
    padding: 0 10px;
    flex: 1;
    display: flex;
    align-items: center;
}
.detail-ticket .product-process {
    padding: 0;
}
.product-process .progress {
    width: 100%;
    border-radius: 5px;
}

@media (max-width: 600px) {
    .product-name {
        -webkit-line-clamp: 3;
        min-height: 66px;
    }
}

.progress-bar {
    background-color: #ffc107 /*var(--primaryColor)*/;
}

.navigation-tab {
    /* height: 150px; */
    width: 100%;
    background-color: #fff;
    /* box-shadow: 0 50px 30px 0 rgb(0 0 0 / 0%); */
    /* border-radius: 20px 20px 90px 90px; */
    overflow: hidden;
    /* border: 15px solid #fff; */
    display: flex;
    position: fixed;
    bottom: 0;
    flex-shrink: 0;
    /* padding: 5px 0; */
    left: 0;
    width: 100%;
    z-index: 10;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 5px 0px, rgba(0, 0, 0, 0.1) 0px 0px 1px 0px;
}

.navigation-tab-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 20%;
    flex-shrink: 0;
    cursor: pointer;
    transition: 0.3s;
    position: relative;
    z-index: 2;
}

    .navigation-tab-item.active {
        width: 20%;
        border-radius: 10px;
        background-color: #e4f2ff;
    }

.navigation-tab__icon img {
    width: 40px;
    transform: scale(0.9);
}

.navigation-tab-item.show-name .navigation-tab__icon,
.navigation-tab-item.active .navigation-tab__icon {
    transform: translate(0px, 0px);
}

.navigation-tab-item.show-name .navigation-tab__txt,
.navigation-tab-item.active .navigation-tab__txt {
    opacity: 1;
    transform: translate(0, 3px);
}



.navigation-tab-overlay {
    border-radius: 10px;
    background-color: #e4f2ff;
    height: 100%;
    width: 20%;
    position: absolute;
    left: 40%;
    top: 0;
    transition: 0.3s;
}

.navigation-tab__icon {
    display: block;
    color: #636363;
    transition-duration: 0.3s;
    line-height: 1;
    transform: translate(0, 11px);
}

.navigation-tab__txt {
    display: block;
    font-weight: 400;
    font-size: 11px;
    color: #636363;
    opacity: 0;
    transition-duration: 0.3s;
    transform: translate(0, 20px);
    user-select: none;
}

.navigation-tab-item:nth-child(3).active .navigation-tab__txt {
    transform: translate(0, -2px);
}

/* HEADER MOBILE */
.header-mobile {
    background-color: #0035a8;
    background-size: 100% auto;
    padding: 8px 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
}

#header-mobile .container {
    max-width: 100%;
}

.nav-mobile-item-icon {
    padding: 7px;
    height: 40px;
}

.swiperNavMobile  .nav-mobile-item-icon img {
    width: 29px !important;
}

    .header-mobile .primary-button {
        margin: 0;
    }

.header-mobile-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-mobile-search {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0 8px;
    display: flex;
    height: 34px;
}

.header-mobile-search input {
    flex: 1;
    font-size: 13px;
    height: 34px;
    padding: 0 10px;
    border: none;
    outline: none;
    background: #fff;
    min-width: 0;
}

.header-mobile-search input::placeholder {
    color: #7c7c7c;
}

.header-mobile-search-btn {
    background: #ffba50;
    border: none;
    width: 36px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
}

/* Logo bên trái mobile */
.header-mobile-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 6px;
    flex-shrink: 0;
    max-width: 80px;
}

.header-mobile-logo img {
    height: 30px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

/* Avatar và icons bên phải mobile */
.header-user-avt,
.header-mobile-login {
    flex-shrink: 0;
    margin-left: 0;
}

/* Notification Bell Mobile */
.header-mobile-notification {
    flex-shrink: 0;
    margin-right: 8px;
    margin-left: 4px;
    font-size: 20px;
    color: #fff;
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
}

.header-mobile-notification:hover {
    color: #fff;
    opacity: 0.8;
}

/* NAV MOBILE */
.swiperNavMobile .swiper-slide {
    border-radius: 10px;
}

.nav-mobile-item-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
}

    .nav-mobile-item-icon img {
        width: 35px !important;
    }

.nav-mobile-item-title {
    font-size: 10px;
    font-weight: 600;
    padding: 2px;
}

/* PRIMARY NAV */
.primary-nav {
    margin-top: 30px;
    justify-content: center;
}

.primary-nav-item {
    border: 1px solid var(--primaryColor);
    border-bottom: 0;
}

    /*.primary-nav-item:not(:last-child) {
        border-right: 0;
    }*/

    .primary-nav-item .nav-link {
        font-weight: 600;
        color: var(--primaryColor);
        border: none;
        border-radius: 0;
    }

        .primary-nav-item .nav-link.active {
            color: #fff;
            background-color: var(--primaryColor);
        }

.primary-tab-line {
    width: 100%;
    height: 1px;
    width: 100%;
    background-color: var(--primaryColor);
    margin-bottom: 10px;
}

/* FOOTER */
.footer {
    background-color: #00096d;
    font-size: 14px;
}

/* ===== MAIN FOOTER BODY ===== */
.uv-footer-body {
    background: #00096d;
    min-height: 318px;
    padding: 18px 0 0;
}

.uv-footer-inner {
    width: 1250px;
    margin: 0 auto;
    padding: 0;
    display: grid;
    grid-template-columns: 326px 326px 326px;
    column-gap: 53px;
    align-items: start;
}

.uv-footer-brand-block {
    padding-top: 0;
}

.uv-footer-logo {
    display: block;
    width: 120px;
    margin-bottom: 21px;
}

.uv-footer-logo img {
    display: block;
    width: 120px;
    height: 94px;
    object-fit: contain;
}

.uv-footer-company-text {
    width: 326px;
}

.uv-footer-company-text p,
.uv-footer-links li,
.uv-footer-links li a,
.uv-footer-col-title {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.3;
    color: #fff;
}

.uv-footer-company-text p {
    margin: 0;
    text-transform: none;
}

.uv-footer-company-title,
.uv-footer-col-title {
    margin: 0 0 1px;
    font-weight: 700;
    text-transform: uppercase;
}

.uv-footer-support-block {
    padding-top: 115px;
}

.uv-footer-policy-block {
    padding-top: 52px;
}

.uv-footer-links {
    list-style: disc;
    margin: 0;
    padding-left: 24px;
}

.uv-footer-links li {
    margin: 0;
}

.uv-footer-links-disc li::marker {
    color: #fff;
}

.uv-footer-links li a {
    text-decoration: none;
    transition: color .2s;
}

.uv-footer-links li a:hover {
    color: #ffba50;
}

.uv-footer-divider {
    width: 1250px;
    height: 1px;
    background: rgba(255, 255, 255, 0.65);
    margin: 29px auto 0;
}

.uv-footer-copyright {
    width: 1250px;
    margin: 0 auto;
    padding: 11px 0 24px;
    text-align: left;
}

.uv-footer-copyright p {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    line-height: normal;
    font-weight: 600;
    color: #fff;
    text-transform: lowercase;
}

/* ===== FOOTER RESPONSIVE ===== */
@media (max-width: 1279px) {
    .uv-footer-inner,
    .uv-footer-divider,
    .uv-footer-copyright {
        width: calc(100% - 30px);
    }

    .uv-footer-inner {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 24px;
    }

    .uv-footer-company-text {
        width: 100%;
    }
}

@media (max-width: 991px) {
    .uv-footer-body {
        padding-top: 24px;
    }

    .uv-footer-inner {
        grid-template-columns: 1fr;
        row-gap: 24px;
    }

    .uv-footer-support-block,
    .uv-footer-policy-block {
        padding-top: 0;
    }

    .uv-footer-logo {
        margin-bottom: 16px;
    }
}

@media (max-width: 767px) {
    .uv-footer-company-text p,
    .uv-footer-links li,
    .uv-footer-links li a,
    .uv-footer-col-title {
        font-size: 14px;
    }

    .uv-footer-copyright {
        padding: 10px 0 18px;
    }

    .uv-footer-copyright p {
        font-size: 18px;
    }
}

.footer-title {
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 5px;
}

ul.footer-ul {
    margin-left: 18px;
}

li.footer-li {
    margin-bottom: 2px;
    color: #525252;
}

li.footer-li a:hover {
    color: var(--primary-color);
}

.footer-item {
    display: flex;
    margin-bottom: 5px;
}

.footer-item-title {
    display: flex;
    align-items: center;
    font-weight: 600;
    min-width: 100px;
}

    .footer-item-title i {
        margin-right: 10px;
        width: 20px;
    }

.footer-social {
    padding-left: 20px;
}

.footer-social-item {
    margin-right: 10px;
}

.footer-author {
    text-align: center;
    padding: 10px;
    color: #fff;
    font-weight: 600;
    background-color: var(--primaryColor);
    margin-top: 10px;
    font-size: 14px;
}

/* FOOTER PARTNER */
.footer-partner {
    margin: 10px 0;
    padding: 10px 20px;
    background-color: #fff;
    border-radius: 10px;
}

.footer-partner-card {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
}

    .footer-partner-card img {
        width: 80%;
        height: auto;
    }

/* DETAIL PAGE */

.detail-ticket {
    background-color: #fff;
    padding: 20px;
}

.detail-ticket-item {
    display: flex;
    justify-content: space-between;
}

.detail-ticket-title {
    font-size: 16px;
    font-weight: 600;
}

.detail-ticket-price.price {
    font-weight: 800;
    font-size: 20px;
}

.detail-ticket-infor {
    margin: 10px 0;
    display: flex;
    justify-content: space-between;
}

.detail-buy-title {
    font-weight: 800;
    text-align: center;
}

.detail-buy {
    border: 1px solid #ddd;
    padding: 10px;
    border-radius: 10px;
}

.detail-buy-item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 6px;
}

.detail-ticket-name {
    font-weight: 700;
    font-size: 18px;
    text-align: center;
    margin-bottom: 10px;
}

.detail-process .progress {
    height: 20px;
    border-radius: 9px;
}

.detail-buy-button.primary-button {
    background: var(--primaryColor);
    color: #fff;
    -webkit-text-fill-color: unset;
    margin: 0;
    border-radius: 10px;
}

.detail-buy-item-value {
    font-style: italic;
}

.detail-desc-title {
    font-weight: 700;
    text-align: center;
    font-size: 20px;
    /* margin-top: 10px; */
    padding: 5px 10px;
    background: #dddddd1a;
    border-radius: 7px;
}

.detail-list-product {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.detail-desc-content {
    /*max-height: 200px;*/
    max-height: 623px;
    overflow: hidden;
    transition: all 0.4s ease-in-out;
}

/* PRODUCT LIST */
.product-list {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
}

.product-list-5 {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

/* USER ITEM */

.user-item {
    display: flex;
    margin-bottom: 14px;
    align-items: center;
}

    .user-item:last-child {
        margin-bottom: 0;
    }

.user-item-avt {
    height: 40px;
    border-radius: 50%;
    width: 40px;
    overflow: hidden;
    margin-right: 10px;
    border: 1px solid red;
}

.user-item-name {
    font-weight: 600;
}

.user-list {
    border: 1px solid var(--primaryColor);
    border-radius: 10px;
    padding: 10px;
    background: white;
}

/* CART */
.woocommerce {
    min-height: 60vh;
    position: relative;
    overflow: visible;
}

.cart-total {
    box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
}

.cart-total-button {
    display: inline-flex;
    width: 100%;
    max-width: 400px;
}

.progress {
    position: relative;
}

.progress-value {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
    color: #000;
    text-shadow: #fff 0px 0px 2px;
}

.cart-total-title {
    font-weight: 700;
    font-size: 22px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgb(178, 178, 178);
}

    .cart-total-title label {
        font-size: 14px;
    }

#formUpdateCart table tr th {
    margin: 0;
    padding: 10px;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
}

#formUpdateCart table td {
    height: 100%;
}

.cart-checkbox {
    accent-color: var(--primaryColor);
}

.product-thumbnail {
    width: 100px;
}

.cart-checkbox {
    height: 100%;
}

.product-checkbox,
.product-remove {
    width: 20px;
}

#formUpdateCart .product-price,
#formUpdateCart .product-subtotal {
    width: 150px;
    text-align: center;
    flex: 1;
}

#formUpdateCart .quantity {
    display: flex;
    align-items: center;
}

#formUpdateCart .quantity-button {
    padding: 4px;
    background-color: #ddd;
    border-radius: 50%;
    height: 20px;
    width: 20px;
    display: flex;
    justify-content: center;
    transition: all 0.5s linear;
}

    #formUpdateCart .quantity-button:hover {
        cursor: pointer;
        background-color: var(--primaryColor);
    }

        #formUpdateCart .quantity-button:hover i {
            color: #fff;
        }

#formUpdateCart .product-quantity input {
    margin: 0 10px;
    width: 40px;
    text-align: center;
    border: 1px solid #ddd;
    border-radius: 6px;
}

#formUpdateCart .quantity-button {
    font-size: 12px;
}

/* CART */
.cart-title-list {
    border-bottom: 1px solid #ddd;
}

.cart-item {
    display: flex;
    position: relative;
    padding: 10px;
    border-bottom: 1px solid #ddd;
}

.cart-item-img {
    width: 70px;
    /* border: 1px solid red; */
    height: 70px;
    overflow: hidden;
}

.cart-item-content {
    display: flex;
    flex: 1;
    justify-content: space-between;
}

.cart-item-name {
    width: 50%;
    padding: 0 10px;
    font-weight: 500;
    display: flex;
    align-items: center;
    flex: 3;
    font-size: 12px;
}

.cart-item-infor {
    display: flex;
    align-items: center;
    flex: 2;
}

.cart-item-quantity {
    display: flex;
    align-items: center;
    padding: 0 10px;
}

input#quantity {
    width: 50px;
    text-align: center;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 0 10px;
    margin: 0 5px;
    font-size: 12px;
}

.cart-item-checkbox {
    display: flex;
    padding: 0 20px 0 10px;
}

.cart-item-remove {
    cursor: pointer;
    display: flex;
    align-items: center;
}

    .cart-item-remove:hover i {
        color: var(--primaryColor);
    }

.cart-item-price {
    width: 120px;
    font-weight: 600;
    font-size: 14px;
}

.cart-item-price-total {
    width: 140px;
    font-size: 16px;
    text-align: right;
    font-weight: 700;
    flex: 1;
    padding-right: 20px;
}

.cart-title-list {
    display: flex;
    padding: 10px;
    justify-content: space-between;
}

.cart-title-item:nth-child(1) {
    flex: 1;
}

.cart-title-item {
    text-align: center;
}

.cart-title-item {
    padding: 0 10px;
    width: 14%;
    font-weight: 600;
}

    .cart-title-item:last-child {
        padding-right: 30px;
    }

.sticky {
    position: -webkit-sticky !important;
    position: sticky !important;
    bottom: 0;
    align-self: flex-start;
    height: auto;
}

.swiperCategories {
    overflow: hidden !important;
}

/* TERM */
.term {
    margin-bottom: 20px;
}

.term-desc {
    font-size: 14px;
}

.term h3 {
    color: var(--primaryColor);
    font-size: 18px;
    font-weight: 800;
}

.term p {
    /* padding-left: 30px; */
}

.term span.price {
    margin-left: 10px;
}

/* TURTORIAL */

.tutorial {
    margin-bottom: 20px;
    padding-bottom: 30px;
}

.tutorial-title {
    font-weight: 800;
    font-size: 28px;
}

.tutorial-item {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}

    .tutorial-item img {
        width: 80%;
    }

/* BREADCUM */

.breadcrumb-item {
    font-weight: 700;
}

    .breadcrumb-item.active {
        color: var(--primaryColor);
    }

/* PAGINATION */
.pagination {
    display: flex;
    justify-content: center;
    margin: 10px 0;
    width: 100%;
    gap: 6px;
}

.pagination li {
    background-color: #adadad;
    margin-right: 0px;
    height: 30px;
    width: 30px;
    color: #fff;
    border-radius: 4px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pagination span {
    color: #fff !important;
}

.pagination a {
    color: #fff !important;
    padding: 3px 10px;
}

.pagination li.active {
    background-color: var(--primaryColor);
}

.pagination li:hover {
    cursor: pointer;
}

/* sessionhistory */

/* .sessionhistory table tr td:nth-child(2){
    display: -webkit-box;
    text-decoration: none;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
} */

.sessionhistory table tr td:nth-child(4) {
    width: 200px;
}

.sessionhistory table tr td:nth-child(1)
.sessionhistory table tr td:nth-child(3),
.sessionhistory table tr td:nth-child(5) {
    text-align: center;
}

/* TICKET LOTTERY */

.ticket-lottery-list {
    display: flex;
    flex-wrap: wrap;
    margin: auto;
}
.listNewCodeTicket .frame, #formChooseNumberTicket .frame {
    display: inline-flex;
}

.listNewCodeTicket .circle, #formChooseNumberTicket .circle {
    width: 30px;
    height: 30px;
    border: 1px solid red;
    border-radius: 100%;
    margin: 2px;
    text-align: center;
    padding: 4px;
    font-weight: bold;
    cursor: pointer;
}

#formChooseNumberTicket .square {
    width: 30px;
    height: 30px;
    border: 1px solid red;
    margin: 2px;
    text-align: center;
    padding: 4px;
    font-weight: bold;
    cursor: pointer;
    background: #f7d28d;
}

#formChooseNumberTicket .circle.active {
    background: orange;
    color: #fff;
}

.ticket-lottery {
    height: 36px;
    width: 36px;
    border-radius: 50%;
    background-color: #898989;
    color: #fff;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px;
}

    .ticket-lottery:not(:last-child) {
        margin-right: 4px;
    }

    .ticket-lottery.win {
        background-color: var(--primaryColor);
        border-style: ridge;
        border-color: #ffc124;
        border-width: 1px;
        border-radius: 100px;
        transition: all 0.5s ease-in-out;
        animation: ticket-win 1s ease-in-out infinite alternate;
    }

/* Modal buy ticket */

#staticBackdrop .modal-content {
    border: 2px solid var(--primaryColor);
    border-radius: 20px;
}

#staticBackdrop .modal-body {
    padding-top: 4px;
}

#staticBackdrop .modal-header {
    padding: 10px;
}

.form-ticked-custom {
    background-color: #f1f1f1;
    padding: 10px;
    border-radius: 20px;
    margin: 10px 0;
    max-height: 230px;
    overflow-y: auto;
}

.buy-ticket-item {
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.buy-ticket-item-control {
    display: flex;
    align-items: center;
}

.buy-ticket-item-control-delete {
    margin-right: 10px;
}

    .buy-ticket-item-control-delete i {
        color: #7e7e7e;
    }

.buy-ticket-item-control-rebuy i {
    color: #006300;
}

.buy-ticket-item:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 4px;
}

.add-ticket-block input {
    border: 1px solid #ddd;
    border-radius: 10px;
    text-align: center;
    padding: 10px;
    margin-right: 10px;
}

.add-ticket-block {
    justify-content: flex-end;
}


.quantity-button {
    padding: 0 10px;
    background-color: #ddd;
    border-radius: 10px;
    transition: all 0.5s linear;
}

    .quantity-button:hover {
        cursor: pointer;
        background-color: var(--primaryColor);
    }

        .quantity-button:hover i {
            color: #fff;
        }

.buy-ticket-product-name {
    padding: 10px;
    width: 100%;
    margin: 10px 0;
    border-radius: 10px;
    border: 1px solid var(--primaryColor);
    text-align: center;
    font-weight: 600;
}

.check-dieukhoan {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cart-total-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.cart-total-voucher div {
    width: 100%;
    /* max-width: 400px; */
    /* display: flex; */
    /* justify-content: flex-end; */
}

.cart-total-voucher {
    display: flex;
    justify-content: flex-end;
    margin: 10px 0;
}

.cart-total-text {
    font-weight: 600;
    margin-right: 10px;
    color: rgb(73, 72, 72);
    font-size: 14px;
}

.cart-total-price {
    min-width: 200px;
    text-align: right;
    font-weight: 600;
}

.cart-total-final {
    font-weight: 700;
    font-size: 17px;
}

.cart-total-final-price {
    font-size: 22px;
    font-weight: 800;
}

/*viewMore*/

.productbox {
    min-height: 500px;
}

/* RESPONSIVE */

@media (min-width: 1000px) and (max-width: 1444px) {
    .mt-90 {
        margin-top: 40px !important;
    }
}

/* PC real only */
@media (min-width: 1200px) {
    .hide-on-pc {
        display: none !important;
    }
}


/* PC only */
@media (min-width: 1024px) {
    .hide-on-pc {
        display: none !important;
    }
}

/* Tablet to PC low resolution */

@media (min-width: 985px) and (max-width: 1200px) {
    .hidden-low-pc {
        display: none !important;
    }
}


/* Tablet Only */

@media (min-width: 740px) and (max-width: 1023px) {
    .hidden-t {
        display: none !important;
    }

    .detail-list-product {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 5px;
    }

    .product-list-5 {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

    .product-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 5px;
    }

        .product-list a {
            margin-top: 5px;
        }
}

/* Mobile & Tablet */
@media (max-width: 1023px) {
    .hidden-m-t {
        display: none !important;
    }



    .sessionhistory table tr th:nth-child(1) {
        width: 120px;
    }

    .sessionhistory table tr th:nth-child(5) {
        width: 80px;
    }

    .sessionhistory table tr td:nth-child(1),
    .sessionhistory table tr td:nth-child(2) {
        font-size: 14px;
    }

    .mt-3-mobile {
        margin-top: 1rem !important;
    }

    .cart-item {
        overflow: hidden;
    }

    .sessionhistory {
        overflow-x: auto;
    }

        .sessionhistory table {
            width: 800px;
        }

    .cart-item-infor,
    .cart-item-content {
        flex-direction: column;
    }

    .cart-item-checkbox {
        display: flex;
        padding: 10px 10px 0 0px;
        align-items: flex-start;
    }

    .cart-checkbox {
        height: auto;
    }

    .cart-item-name {
        width: 100%;
        font-size: 12px;
        display: -webkit-box;
        text-decoration: none;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0;
        padding-left: 10px;
        min-height: 42px;
    }

    .cart-item-infor {
        justify-content: flex-end;
        align-items: start;
        padding: 0 10px;
    }

    input#quantity {
        font-size: 14px;
    }

    .cart-item-quantity {
        padding: 0;
        margin-top: 4px;
    }

    .cart-item-price-total {
        width: 100%;
        padding: 0;
        margin-top: 4px;
    }

    .cart-item-remove {
        position: absolute;
        top: 4px;
        right: 4px;
    }

        .cart-item-remove i {
            font-size: 14px;
        }

    .detail-ticket-item--amount {
        flex-wrap: wrap;
        align-items: center;
    }

        .detail-ticket-item--amount div:first-child {
            justify-content: start;
        }

        .detail-ticket-item--amount div:nth-child(2) {
            text-align: right;
        }

        .detail-ticket-item--amount div:nth-child(3) {
            width: 100%;
            margin: 10px 0;
        }

            .detail-ticket-item--amount div:nth-child(3) button {
                margin: 0;
                width: 100%;
                display: flex;
                justify-content: center;
                padding: 4px 0 !important;
            }

    .cart-total-item--final {
        flex-direction: column;
    }

    .cart-total-final {
        justify-content: start;
        width: 100%;
    }

    .cart-total-final-price {
        width: 100%;
        justify-content: end;
    }
}

/* Mobile Only */
@media (max-width: 739px) {
    .hidden-xs{
        display: none;
    }
    .reverse-cc {
        display: flex;
        flex-direction: column-reverse;
    }

        .reverse-cc li:nth-child(2) {
            width: 100%;
            margin-bottom: 10px;
        }

    .tab-wallet li {
        width: 100% !important;
        display: flex;
        align-content: center;
        justify-content: center;
        margin-bottom: 0px !important;
    }

        .tab-wallet li a {
            padding: 4px !important;
        }
    .tab-wallet li {
        border-bottom: 2px solid var(--primaryColor)
    }

    .reverse-cc .history-mobi {
        width:100%;
    }

    /*.tab-wallet li:nth-child(2n+1) {
            border-right: 2px solid var(--primaryColor)
        }

        .tab-wallet li:nth-child(3),
        .tab-wallet li:nth-child(4) {
            border-top: 2px solid var(--primaryColor)
        }*/
    .hidden-m {
        display: none;
    }

    .nav-mobile-item-title {
        font-size: 9px !important;
    }

    .detail-list-product {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 5px;
    }

    .categories-card-name {
        min-height: 36px;
    }

    .header-mobile .primary-button {
        font-size: 14px;
    }

    .over-screen-mobile {
        padding: 0;
    }

    .swiperCategories .swiper-slide {
        border-radius: 0;
    }

    .swiperCategories {
        overflow: unset;
    }

    .categories-card {
        flex-direction: column;
        padding: 4px;
        border: none;
        border-radius: 0;
    }

    .categories-card-icon img {
        height: 30px !important;
    }

    .categories-card-name {
        font-size: 12px;
        display: -webkit-box;
        text-decoration: none;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: all 0.5s linear;
        /*display: flex;
        align-items: center;
        justify-content: center;*/
    }

    .categories-card.active {
        position: relative;
    }

        .categories-card.active::after {
            position: absolute;
            content: "";
            bottom: 0;
            left: 50%;
            transform: translate(-50%,60%);
            border-left: 10px solid transparent;
            border-right: 10px solid transparent;
            border-top: 10px solid var(--primaryColor);
            z-index: 34534534534534;
        }

    .categories-card.active, .categories-card:hover {
        border-radius: 4px;
    }

    .primary-nav-item .nav-link {
        padding: 10px;
        font-size: 14px;
        width: 100%;
    }
    .primary-nav-item {
        width: 100%;
    }
    .product-buy {
        font-size: 12px;
    }

    .landing-products .product-list-5 {
        gap: 10px;
    }

    .product {
        border-width: 1px;
        border-radius: 12px;
        padding-bottom: 8px;
    }

    .product-img {
        height: 120px;
    }

    .product-name {
        font-size: 13px;
        min-height: 42px;
        padding: 0 6px;
        line-height: 1.3;
    }

    .product-price {
        font-size: 13px;
        margin: 0 6px;
        padding-bottom: 2px;
    }

    .product-title {
        font-size: 11px;
        margin-top: 4px;
    }

    .product-price-ticket .price {
        font-size: 14px;
    }

    .product-buy {
        font-size: 12px;
        padding: 6px 0;
        margin: 6px 10px 0;
    }

    .product-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 5px;
        margin: 0 -6px;
    }

    .product-list-5 {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .product-list-m-1 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

        .product-list-5 a {
            margin-top: 5px;
        }

    .product-list a {
        margin-top: 5px;
    }

    .sticky {
        bottom: 55px;
    }

    .categories-title {
        font-size: 18px;
    }

    .categories-see-all {
        font-size: 14px;
    }
}

/* 500*/
@media (min-width: 500px) and (max-width: 742px) {
    .hidden-500plus {
        display: none !important;
    }
}


@media (max-width: 500px) {
    .hidden-500 {
        display: none !important;
    }
}

@media (max-width: 375px) {
}

.swiper {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    border-radius: 20px;
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}



.lSSlideOuter .lSPager.lSGallery img {
    display: block;
    height: 100px;
    max-width: 100%;
    min-width: 200px;
    object-fit: cover;
}
@media(max-width:600px){
    .lSSlideOuter .lSPager.lSGallery img {
        min-width: 100px;
        height: 70px;
    }

    #vertical .lslide img {
        max-height: 200px !important;
        object-fit: contain !important;
    }
    .lSSlideWrapper.usingCss {
        max-height: 200px !important;
    }

    .hash-rp {
        white-space: nowrap;
        width: 50%;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

#vertical .lslide img {
    max-height: 500px;
    object-fit: contain;
}


.banner-category{
    margin-bottom:10px;
    overflow:hidden;
}
.banner-category img {
    border-radius:10px;
}

.sticky-icon {
    position: fixed;
    bottom: 50px;
    left: 0px;
    width: 100%;
}
    .sticky-icon svg {
        width: 55px;
        height: 55px;
        object-fit: contain;
        position: absolute;
        right: 20px;
        top: -30px;
        animation: icon-mess 1s linear alternate infinite;
    }

    @keyframes icon-mess {
        0%{
            transform:scale(1)

        }
        100% {
            transform: scale(1.2)
        }
    }


/*Săn sales*/
img {
    max-width: 100%;
    height: auto;
}

.sale {
    background-color: #E6E6E6;
    padding: 20px;
    overflow: hidden;
}

.sale-slider {
    max-height: 320px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.border-blue {
    border: 1px solid #799DBD;
    border-radius: 8px;
    overflow: hidden;
}

.sale-product-name {
    font-size: 24px;
    font-weight: 600;
}

.sale-content-noti {
    font-size: 12px;
    color: #D6242C;
    font-weight: 600;
    font-style: italic;
    margin-bottom: 10px;
}

.sale-content-line {
    width: 100%;
    height: 2px;
    background: #898989;
    margin: 20px 0 20px;
}

.sale-content-desc {
    font-size: 15px;
    text-align: justify;
    /* max-height: 140px; */
    color: #535353;
    display: -webkit-box;
    text-decoration: none;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sale-viewmore {
    color: #0253A1;
    font-weight: 500;
    text-align: right;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 14px;
}

    .sale-viewmore:hover {
        font-weight: 800;
    }

.sale-content-price {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0;
}

.sale-content-price-current {
    font-size: 26px;
    font-weight: 700;
    color: #D6252C;
}

.sale-content-price-retail {
    text-decoration: line-through;
    color: #B0B0AF;
}

.sale-content-button {
    padding: 10px;
    background: #0253A1;
    display: inline-block;
    color: #fff;
    border-radius: 5px;
    font-size: 14px;
}

.sale-countdown {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.sale-countdown-wrapper {
    background: #fff;
    padding: 10px;
    border-radius: 4px;
}

.sale-countdown-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

    .sale-countdown-item:not(:last-child) {
        border-bottom: 1px solid #ddd;
    }

.sale-countdown-item-value {
    font-size: 18px;
    font-weight: 700;
    color: #0054A0;
}

.sale-countdown-item-text {
    font-size: 13px;
}

.product .sale-countdown-wrapper {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.product .sale-countdown-item {
    width: 25%;
    border-bottom: 1px solid transparent !important;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

.sale-price {
    font-weight: 900 !important;
    font-size: 14px;
}

.sale-quantity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 14px;
    padding-top: 6px;
}

.sale-quantity-text {
    font-size: 14px;
}

.product-sale {
    position: relative;
    overflow: hidden;
}

    .product-sale .sale-countdown {
        padding: 0 10px;
    }

    .product-sale .sale-countdown-wrapper {
        border-top: 1px solid #ddd;
        padding: 4px;
        padding-top: 8px;
    }

    .product-sale .sale-countdown-item-text {
        font-size: 11px;
    }

    .product-sale .product-price {
        border-bottom: 1px solid transparent;
    }

.sale-quantity {
    position: absolute;
    top: 0;
    right: 0;
    padding: 4px;
    height: 30px;
    min-width: 30px;
    background-color: #fff;
    margin: 0;
    border-bottom-left-radius: 10px;
}

.sale-quantity-value {
    text-align: center;
    width: 100%;
}

/* Mobile & Tablet */
@media (max-width: 1023px) {
    .hidden-m-t {
        display: none !important;
    }

    .sale .row .col-12:nth-child(3) {
        order: 2;
    }

    .sale-product-name {
        margin-top: 10px;
    }

    .sale-content-price {
        flex-direction: column;
        align-items: flex-start;
    }

    .sale-countdown {
        margin-top: 10px;
    }

    .sale-countdown-wrapper {
        display: flex;
        justify-content: space-between;
        width: 100%;
    }

    .sale-countdown-item {
        width: 25%;
        border-bottom: 1px solid transparent !important;
        padding-bottom: 0px;
        margin-bottom: 0px;
    }
}

/* Mobile Only */
@media (max-width: 739px) {
    .hidden-m {
        display: none !important;
    }
}

/* 500*/
@media (min-width: 500px) and (max-width: 742px) {
    .hidden-500plus {
        display: none !important;
    }
}


@media (max-width: 500px) {
    .hidden-500 {
        display: none !important;
    }
}

/* // Motherfucking Iphone 5S */
@media (max-width: 375px) {
}







/* mini game */

.mini__game .form-inline {
    padding: 5px 10px;
    background-color: white;
    border-radius: 20px;
}
.mini__game .form-control:focus{
    background:none;
    border:none;
    outline:none;
    box-shadow:none !important;
}
.mini__game .box__game {
    padding: 10px 15px;
    background: white;
    border-radius: 15px;
    margin-bottom: 15px;
}
.mini__game .box__game .avarta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom:15px;
}
    .mini__game .box__game .avarta img {
        width: 50px;
        height: 50px;
        border-radius: 1000rem;
        object-fit: contain;
    }
.mini__game .box__game .info__session{
    border-bottom: 1px solid #d5d5d5;
    padding-bottom: 15px;
}
    .mini__game .box__game .info__voucher{
        margin-top:10px;
    }
.form__content{
    padding:10px;
    border: 1px solid #d5d5d5;
    border-radius:15px;
    margin-top:20px;
}

.swiperMinigame .swiper-wrapper .swiper-slide {
    width: 100%;
    height: 85px;
}
    .swiperMinigame .swiper-wrapper .swiper-slide img {
        object-fit: cover;
        height: 85px;
    }

    .swiperMinigame .swiper-wrapper .swiper-slide.active img {
        border: 3px solid var(--primaryColor);
        height: 85px;
        border-radius: 10px;
    }
.content-show{
    margin-top:10px;
}

    .content-show .targetDiv {
        height: 200px;
        overflow: auto;
    }
.rate__game {
    margin-top: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 15px;
    border-bottom: 1px solid;
}
.note__game {
    margin-top: 15px;
    color: var(--primaryColor);
    font-size:12px;
}
.buynow {
    margin-top: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.time-coundown {
    display: flex;
    align-items:center;
    justify-content:center;
    font-size: 25px;
    color: var(--primaryColor);
    font-weight:bold;
}
.time-coundown div {
    padding: 0px 10px;
    text-align:center;
}
    .time-coundown span {
        display: block;
        font-size: 17px;
        color:black
    }
.listProductMiniGame {
    height: 300px;
    overflow-y: auto
}
.listProductMiniGame .item {
    border: 1px solid #ccc;
    padding: 5px;
    margin-bottom: 5px;
    border-radius: 5px;
    overflow: hidden;
}
.listProductMiniGame .avatar {
    width: 125px;
    height: 125px;
    float: left;
    margin-right: 10px;
    object-fit: contain;
}
.listProductMiniGame .des {
    float: right;
    width: calc(100% - 135px);
}
.listProductMiniGame .item.active{
    border: 2px solid red;
}
#toast-container > div{
    opacity: 1 !important;
}


/* modal zalo */
.img-zalo-contact {
    position: fixed;
    bottom: 104px;
    right: 12px;
    margin: 0px 12px;
}

.custom-link a {
    background-color: rgb(10, 124, 255);
    display: block;
    margin: 5px;
    border-radius: 10px;
    padding: 5px 10px;
    color: white;
    text-align: center;
}

.modal-zalo-custom {
    position: fixed;
    bottom: 104px;
    right: 50px;
    width: 400px;
}
.modal-content1 {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 0.3rem;
    outline: 0;
}
@media(max-width:1024px){
    .img-zalo-contact{
        display:none;
    }
}

/* Quay số may mắn*/
#ticketList .circle{
    cursor: pointer;
    user-select: none;
}
@font-face {
    font-family: Rye;
    src: url(/assets/fonts/Rye-Regular.ttf);
}

.lucky-wheel {
    text-align: center;
    border: 1px solid #ccc;
    padding: 20px 5px;
}

.odometer-parent {
    border: 1px solid orange;
    padding: 5px 10px;
    border-radius: 10px;
    background-image: linear-gradient(#ffff00, #ffa500);
    background-color: #fc0;
    font-family: "Rye", monospace;
    display: inline-flex;
}

    .odometer-parent .odometer-inside {
        width: 35px;
        position: relative;
        border: 1px solid #fff;
        padding: 0px;
        background-image: linear-gradient(to bottom, #cccccc 0%, #ffffff 20%, #ffffff 80%, #cccccc 100%);
        border-radius: 0.5em;
        text-align: center;
        height: 41px;
        margin: 0 3px;
    }

        .odometer-parent .odometer-inside:last-child {
            box-shadow: inset -0.05em 0 0.1em rgba(0, 0, 0, 0.5), 0 0 0 0.03em #fff, 0 0 0 0.05em rgba(0, 0, 0, 0.2);
        }

        .odometer-parent .odometer-inside .odometer-value {
            color: #f80000;
            line-height: 1.35em;
            font-family: "Rye", monospace;
            font-size: 30px;
            margin-top: -19px;
            font-weight: bold;
        }

.btnRoll {
    padding: 10px 20px;
    background: #ecc544;
    border: none;
    color: #fff;
    border-radius: 3px;
    cursor: pointer;
    margin-top: -1px;
    display: inline-flex;
    margin-top: 25px;
    position: absolute;
    margin-left: 20px;
    font-weight: bold;
}

.title-lw {
    color: #f80000;
    font-size: 23px;
    margin-bottom: 20px;
    font-family: "Rye";
    font-weight: bold;
}

#loading {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    background-color: var(--primary-color);
    z-index: 999999;
    transition: all 0.25s ease-in-out;

    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-content {
    padding-top: 30px;
    padding-bottom: 20px;
    border-top: 3px solid #000;
}

/* Tắt hover effect và căn text footer thẳng hàng 100% */
.footer-ul {
    text-align: left !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-li {
    text-align: left !important;
    list-style: none;
    padding-left: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-li span {
    color: inherit;
    text-decoration: none;
    cursor: default;
    pointer-events: none;
    display: block;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.footer-li a {
    text-decoration: none !important;
    cursor: pointer;
    color: inherit;
    padding-left: 0 !important;
    margin-left: 0 !important;
    transition: all 0.3s ease;
}

.footer-li a:hover {
    text-decoration: none !important;
    color: #a90603 !important;
    padding-left: 5px !important;
}

.footer-title {
    text-align: left !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

/* Đảm bảo tất cả nội dung trong col-lg-3 thẳng hàng */
.footer-content .col-lg-3 {
    padding-left: 15px !important;
}

/* Online.gov.vn badge */
.footer-gov-badge {
    display: flex;
    justify-content: center;
    margin-top: 12px;
}

.footer-partner-slide {
    height: 160px;
}

.footer-cta {
    text-align: center;
}

.footer-cta-title {
    text-align: center !important;
}

.footer-cta-button {
    display: inline-block;
    margin: 0 auto;
}

.footer-gov-badge a {
    display: inline-block;
}

.footer-gov-badge img {
    display: block;
    max-width: 180px;
    width: 100%;
    height: auto;
}

.footer-patner-item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    padding: 0 18px;
}
a:hover {
    color: unset;
}

.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x) * .8);
    padding-left: calc(var(--bs-gutter-x) * .8);
    margin-right: auto;
    margin-left: auto;
}

.modal {
    padding-right: 0 !important;
}

.primary-text {
    color: var(--primary-color);
}

.text-xs {
    font-size: 12px;
}

.text-sm {
    font-size: 14px;
}

.text-md {
    font-size: 16px;
}

.text-lg {
    font-size: 18px;
}

.font-bold {
    font-weight: 600;
}

.font-bold2 {
    font-weight: 700;
}

.nav-tabs .nav-link {
    color: var(--primary-color);
}

.breadcrumb-item+.breadcrumb-item::before {
    font-weight: 400;
}

.primary-bg {
    background-color: var(--primary-color);
}

/* ═══════════════════════════════════════════════════════════════
   MEMBER CARD STYLES
   ═══════════════════════════════════════════════════════════════ */
.member-card-info {
    position: absolute;
    bottom: 10%;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    z-index: 1;
}

.member-card-name {
    color: white;
    font-weight: 700;
    font-size: clamp(14px, 2vw, 22px);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}

.member-card-role {
    color: #fff;
    font-weight: 500;
    font-size: clamp(10px, 1.2vw, 14px);
    text-transform: uppercase;
    letter-spacing: 1px;
    background: rgba(0,0,0,0.4);
    padding: 2px 12px;
    border-radius: 10px;
}

/* Responsive for tablet */
@media (max-width: 991px) {
    .member-card-info {
        bottom: 12%;
    }
    
    .member-card-name {
        font-size: clamp(16px, 2.5vw, 24px);
    }
    
    .member-card-role {
        font-size: clamp(11px, 1.5vw, 15px);
        padding: 3px 14px;
    }
}

/* Responsive for mobile */
@media (max-width: 576px) {
    .member-card-info {
        bottom: 9%;
        gap: 0;
        padding: 0 6px;
    }
    
    .member-card-name {
        font-size: 12px;
        letter-spacing: 0.5px;
        line-height: 1.1;
        text-align: center;
        width: 100%;
        display: block;
    }
    
    .member-card-role {
        font-size: 8px;
        padding: 1px 10px;
        letter-spacing: 0.4px;
    }
}

/* Very small screens */
@media (max-width: 375px) {
    .member-card-info {
        bottom: 8%;
    }
    
    .member-card-name {
        font-size: 12px;
    }
    
    .member-card-role {
        font-size: 8px;
        padding: 1px 6px;
    }
}

/* ═══════════════════════════════════════════════════════════════
   AGENT TERMS - Đăng ký Đại lý/CTV
   ═══════════════════════════════════════════════════════════════ */

/* Overlay che thẻ thành viên */
.agent-lock-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
}

.agent-lock-overlay__content {
    background: rgba(0, 0, 0, 0.9);
    color: white;
    padding: 25px;
    border-radius: 12px;
    text-align: center;
    width: 90%;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.agent-lock-overlay__icon {
    font-size: 32px;
    color: #ec2227;
}

.agent-lock-overlay__title {
    font-size: 16px;
    line-height: 1.5;
}

.agent-lock-overlay__desc {
    font-size: 13px;
    color: #ccc;
}

.agent-lock-overlay__btn {
    padding: 10px 25px;
    font-weight: 600;
}

/* Thẻ thành viên bị khóa */
.member-card--locked {
    filter: blur(5px);
    pointer-events: none;
    opacity: 0.6;
    user-select: none;
}

/* Modal điều khoản đại lý */
.agent-terms-modal__header {
    background: linear-gradient(135deg, #a90603, #ec2227);
    color: white;
}

.agent-terms-modal__body {
    max-height: 60vh;
    overflow-y: auto;
    padding: 25px;
}

.agent-terms-modal__intro {
    font-size: 14px;
}

.agent-terms-modal__section-title {
    font-weight: 700;
    border-bottom: 2px solid;
    padding-bottom: 8px;
}

.agent-terms-modal__section-title--conditions {
    color: #a90603;
    border-color: #a90603;
}

.agent-terms-modal__section-title--benefits {
    color: #28a745;
    border-color: #28a745;
}

.agent-terms-modal__list {
    padding-left: 20px;
    line-height: 1.8;
}

.agent-terms-modal__highlight {
    color: #dc3545;
}

.agent-terms-modal__benefit-highlight {
    color: #28a745;
    font-size: 16px;
}

.agent-terms-modal__checkbox-wrapper {
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #dee2e6;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.agent-terms-modal__checkbox-wrapper .form-check-input {
    width: 20px;
    height: 20px;
    min-width: 20px;
    margin: 0;
    flex-shrink: 0;
    cursor: pointer;
    border: 2px solid #a90603;
}

.agent-terms-modal__checkbox-wrapper .form-check-input:checked {
    background-color: #a90603;
    border-color: #a90603;
}

.agent-terms-modal__checkbox-label {
    font-weight: 600;
    margin: 0;
    cursor: pointer;
}

.agent-terms-modal__footer {
    border-top: 1px solid #dee2e6;
}

.agent-terms-modal__submit-btn {
    padding: 10px 30px;
}

/* ===== HOME UNIVISION ===== */

/* Color tokens */
:root {
    --uv-blue: #0035a8;
    --uv-navy: #00096d;
    --uv-red: #ce0030;
    --uv-yellow: #ffba50;
    --uv-card-bg: #ebf2ff;
    --uv-muted: #7c7c7c;
    --uv-bg: #f1f5f9;
}

/* ===== SECTION WRAPPER ===== */
.uv-home {
    background: var(--uv-bg);
    padding: 60px 0 80px;
}

.uv-section {
    max-width: 1250px;
    margin: 0 auto;
    padding: 0 15px;
}

/* ===== BANNER SLIDER ===== */
.uv-banner-slider {
    max-width: 1250px;
    margin: 0 auto 20px;
}

.uv-banner-slider .swiper-first-banner {
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.uv-banner-slider .swiper-slide img {
    width: 100%;
    height: 401px;
    object-fit: cover;
    display: block;
}

/* ===== SECTION TITLES ===== */
.uv-section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px 45px 16px;
}

.uv-section-title {
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 28px;
    line-height: 1.3;
    text-transform: uppercase;
    color: var(--uv-blue);
    margin: 0;
    letter-spacing: -0.5px;
}

.uv-section-title.white {
    color: #fff;
}

.uv-section-link {
    font-size: 16px;
    color: #fff;
    text-decoration: none;
    font-family: 'Roboto', sans-serif;
}

.uv-section-link:hover {
    text-decoration: underline;
    color: #fff;
}

.uv-section-title-blue {
    color: var(--uv-blue);
}

/* ===== HOT DEALS SECTION ===== */
.uv-hot-deals {
    background: var(--uv-blue);
    padding: 24px 0 40px;
    margin: 0 auto 32px;
    max-width: 1250px;
    min-height: 420px;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.uv-hot-deals .uv-section-header {
    padding: 0 24px;
    margin-bottom: 17px;
}
.uv-hot-deals-track {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    padding: 10px 24px 20px;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-snap-type: x mandatory;
}

.uv-hot-deals-track::-webkit-scrollbar {
    display: none;
}

.uv-hot-deals-scroll-btn {
    width: 30px;
    height: 80px;
    font-size: 18px;
}

/* Hot Deals "Xem thêm" link button */
.uv-hot-deals-more {
    display: flex;
    justify-content: center;
    padding: 0 0 24px;
}

.uv-hot-deals-more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 48px;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: var(--uv-blue);
    background: #ffffff;
    border-radius: 100px;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.uv-hot-deals-more-btn:hover {
    background: #f0f4ff;
    color: var(--uv-blue);
    transform: translateY(-2px);
}

.uv-scroll-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #ffffff;
    border: 1px solid #e0e0e0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
    color: #333333;
    width: 44px;
    height: 44px;
    border-radius: 50% !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.uv-scroll-btn:hover {
    background: #ffffff;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
    transform: translateY(-50%) scale(1.05);
}

.uv-scroll-btn-prev {
    left: 20px;
}

.uv-scroll-btn-next {
    right: 20px;
}

.uv-hot-deals .uv-scroll-btn-prev {
    border-radius: 0 5px 5px 0;
}

.uv-hot-deals .uv-scroll-btn-next {
    border-radius: 5px 0 0 5px;
}

.uv-scroll-btn.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* ===== PRODUCT CARD ===== */
.uv-product-card {
    background: #ffffff;
    flex: 0 0 241px;
    width: 241px;
    min-height: 339px;
    height: 339px;
    scroll-snap-align: center;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.04);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.uv-product-card:hover {
    box-shadow: 0 12px 24px rgba(0, 53, 168, 0.12);
    transform: translateY(-6px);
}

.uv-product-card-inner {
    padding: 17px 14.5px 12px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
}

.uv-product-card-img {
    width: 212px;
    height: 212px;
    object-fit: contain;
    display: block;
    flex-shrink: 0;
    margin: 0 auto;
    border-radius: 8px;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.uv-product-card:hover .uv-product-card-img {
    transform: scale(1.05);
}

/* Text area below image */
.uv-product-card-body {
    padding: 5px 0 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
    width: 212px;
    margin: 0 auto;
}

/* Price row: centered flex layout */
.uv-product-card-prices {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 6px;
    flex-wrap: wrap;
    width: 100%;
    flex-shrink: 0;
}

.uv-product-card-price {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 18px;
    color: #ce0030;
    line-height: 1.3;
    margin: 0;
    text-align: center;
}

.uv-product-card-price-old {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 12px;
    color: #7c7c7c;
    text-decoration: line-through;
    text-decoration-skip-ink: none;
    line-height: 1.3;
    text-align: center;
}

.uv-product-card-points {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 16px;
    color: #0035a8;
    line-height: 1.3;
    text-align: center;
    width: 100%;
}

.uv-product-card-name {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 16px;
    color: #000;
    line-height: 1.3;
    text-align: center;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    width: 100%;
}

/* ===== DANH MUC SAN PHAM ===== */
.uv-categories {
    background: #ffffff;
    padding: 24px 0 40px;
    margin: 0 auto 32px;
    max-width: 1250px;
    min-height: 334px;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.uv-categories .uv-section-header {
    padding: 0 24px 14px;
    justify-content: flex-start;
}
.uv-categories-track {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 0 24px;
    scrollbar-width: none;
    -ms-overflow-style: none;
    position: relative;
}

.uv-categories-track::-webkit-scrollbar {
    display: none;
}

.uv-category-card {
    background: #ebf2ff;
    flex: 0 0 250px;
    width: 250px;
    height: 250px;
    position: relative;
    text-decoration: none;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    border-radius: 12px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.uv-category-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0, 53, 168, 0.08);
}

.uv-category-card-img {
    position: absolute;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    width: 220px;
    height: 206px;
    object-fit: contain;
    object-position: center bottom;
    transition: transform 0.3s ease;
}

.uv-category-card:hover .uv-category-card-img {
    transform: translateX(-50%) translateY(-6px);
}

.uv-category-card-name {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 16px;
    color: #000;
    line-height: 1.3;
    padding: 6px 10px 8px;
    text-align: center;
    background: #ebf2ff;
    width: 100%;
    z-index: 1;
    position: relative;
}

.uv-categories-scroll-btn {
    /* Utilizing the global .uv-scroll-btn circle base sizes */
}

.uv-categories .uv-scroll-btn-prev {
    left: 20px;
}

.uv-categories .uv-scroll-btn-next {
    right: 20px;
}

/* ===== BAN CHAY + TOP TIM KIEM ===== */
.uv-twin-panels {
    display: grid;
    grid-template-columns: repeat(2, calc(50% - 12px));
    justify-content: space-between;
    gap: 24px;
    max-width: 1250px;
    margin: 0 auto 42px;
}

.uv-twin-panel {
    background: #ffffff;
    width: 100%;
    min-height: 395px;
    min-width: 0;
    padding: 24px;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}
.uv-twin-panel-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
}

.uv-twin-panel-title {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.3;
    text-transform: uppercase;
    color: var(--uv-blue);
    margin: 0;
}

.uv-twin-panel-link {
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--uv-blue);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.uv-twin-panel-link:hover {
    text-decoration: underline;
}

.uv-twin-panel-link i {
    font-size: 12px;
}

.uv-twin-panel-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.uv-mini-card {
    background: var(--uv-card-bg);
    min-height: 260px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    text-decoration: none;
    overflow: hidden;
    position: relative;
    border-radius: 8px;
    border: 1px solid #f3f4f6;
    transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease;
}

.uv-mini-card:hover {
    box-shadow: 0 6px 16px rgba(0, 53, 168, 0.08);
    transform: translateY(-4px);
    border-color: #e5e7eb;
}

.uv-mini-card-img {
    width: 85%;
    height: 130px;
    object-fit: contain;
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    transition: transform 0.3s ease;
}

.uv-mini-card:hover .uv-mini-card-img {
    transform: translateX(-50%) scale(1.05);
}

.uv-mini-card-info {
    width: 100%;
    background: var(--uv-card-bg);
    padding: 8px 6px 10px;
    z-index: 1;
    margin-top: auto;
}

.uv-mini-card-price {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-bottom: 6px;
    flex-wrap: wrap;
}

.uv-mini-card-price-sale {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: #dc2626;
}

.uv-mini-card-price-old {
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 11px;
    color: #9ca3af;
    text-decoration: line-through;
}

.uv-mini-card-name {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 13px;
    color: #000;
    text-align: center;
    line-height: 1.4;
    width: 100%;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 55px;
}

/* ===== GOI Y CHO BAN ===== */
.uv-suggestions {
    max-width: 1250px;
    margin: 0 auto;
}

.uv-suggestions-header {
    background: #ffffff;
    padding: 20px 0 0;
    height: 64px;
    text-align: center;
    margin-bottom: 24px;
    border-radius: 12px 12px 0 0;
}

.uv-suggestions-title {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.3;
    text-transform: uppercase;
    color: var(--uv-blue);
    margin: 0 0 11px;
}

.uv-suggestions-divider {
    height: 5px;
    background: var(--uv-navy);
    width: 100%;
}

.uv-suggestions-row {
    display: grid;
    grid-template-columns: repeat(5, 241px);
    justify-content: space-between;
    gap: 10px;
    width: 1245px;
    margin: 0 auto 5px;
}

.uv-suggestions-row:last-child {
    margin-bottom: 0;
}

.uv-suggestions-row.is-hidden-row {
    display: none;
}

.uv-suggestions-row .uv-product-card {
    width: 241px;
    min-height: 339px;
}

/* Hide 6th item on desktop to keep 5-column layout */
.uv-suggestions-row > :nth-child(6) {
    display: none;
}

.uv-suggestions-empty {
    background: #fff;
    padding: 40px;
    text-align: center;
    color: #999;
}

/* ===== PRODUCT CARD ACTION BUTTONS (cart + wishlist hover) ===== */
.uv-product-card-wrap {
    position: relative;
    flex: 0 0 241px;
    width: 241px;
    min-height: 339px;
    height: 339px;
}

.uv-product-card {
    width: 100%;
    height: 100%;
    flex: unset;
    border: 1px solid #f0f0f0;
}

.uv-product-card-actions {
    position: absolute;
    top: 14px;
    right: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    opacity: 1; /* Always visible like sieumua247 */
    transition: opacity 0.2s ease;
    z-index: 3;
}

.uv-product-card-wrap:hover .uv-product-card-actions {
    opacity: 1;
}

.uv-product-action-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid #e5e7eb;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); /* Softer base shadow */
    transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
    font-size: 15px;
    color: #666;
    text-decoration: none;
}

.uv-product-action-btn:hover {
    background: var(--uv-blue);
    color: #ffffff;
    transform: scale(1.1); /* Pop effect */
    box-shadow: 0 4px 12px rgba(0, 53, 168, 0.2);
}

.uv-product-action-btn.is-favorited {
    color: #ef4444;
}

.uv-product-action-btn.is-favorited:hover {
    background: #ef4444;
    color: #ffffff;
}

/* ===== XEM THEM BUTTON ===== */
.uv-load-more {
    max-width: 1250px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    padding: 24px 0 0;
}

.uv-load-more-btn {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    color: var(--uv-navy);
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 18px;
    padding: 8px 36px;
    min-width: 209px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    text-decoration: none;
    border-radius: 24px;
    transition: background 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}

.uv-load-more-btn:hover {
    background: var(--uv-blue);
    color: #ffffff;
    text-decoration: none;
    box-shadow: 0 6px 16px rgba(0, 53, 168, 0.15);
}

/* ===== HOME RESPONSIVE ===== */
@media (max-width: 1279px) {
    .uv-home {
        padding-left: 15px;
        padding-right: 15px;
    }

    .uv-section,
    .uv-hot-deals,
    .uv-categories,
    .uv-twin-panels,
    .uv-suggestions,
    .uv-load-more,
    .uv-banner-slider {
        max-width: 100%;
    }

    .uv-twin-panels {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .uv-twin-panel {
        width: 100%;
    }

    .uv-suggestions-row {
        width: 100%;
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .uv-suggestions-row .uv-product-card,
    .uv-suggestions-row .uv-product-card-wrap {
        width: 100%;
        min-height: 0;
        height: 100%;
    }

    .uv-product-card-wrap {
        flex: 0 0 160px;
        width: 160px;
        min-height: 0;
        height: auto;
    }
}

@media (max-width: 991px) {
    .uv-twin-panels {
        grid-template-columns: 1fr;
    }

    .uv-hot-deals-track,
    .uv-categories-track {
        padding: 0 15px;
    }

    .uv-hot-deals .uv-section-header,
    .uv-categories .uv-section-header {
        padding: 0 15px 14px;
    }

    .uv-categories-scroll-btn,
    .uv-hot-deals-scroll-btn {
        display: none;
    }

    .uv-suggestions-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-bottom: 10px;
    }

    /* Show 6th item on mobile (hidden on desktop) for even 2-column grid */
    .uv-suggestions-row > :nth-child(6) {
        display: block;
    }
}

@media (max-width: 767px) {
    .uv-home {
        padding-top: 0px;
        padding-bottom: 80px;
    }

    .uv-banner-slider {
        margin-bottom: 15px;
    }

    .uv-banner-slider .swiper-slide img {
        height: 200px;
    }

    .uv-hot-deals,
    .uv-categories {
        margin-bottom: 15px;
    }

    .uv-product-card {
        flex: unset;
        width: 100%;
        min-height: 0;
        height: 100%;
    }

    .uv-product-card-inner {
        padding: 10px 10px 8px;
    }

    .uv-product-card-img {
        width: 140px;
        height: 140px;
    }

    .uv-product-card-body {
        width: 140px;
        padding: 4px 0 0;
    }

    .uv-product-card-prices {
        width: 100%;
    }

    .uv-product-card-price {
        font-size: 14px;
        width: 68px;
    }

    .uv-product-card-price-old {
        width: 68px;
        margin-left: 72px;
    }

    .uv-product-card-points,
    .uv-product-card-name {
        width: 100%;
        font-size: 13px;
    }

    .uv-section-title,
    .uv-suggestions-title,
    .uv-twin-panel-title {
        font-size: 18px;
    }

    .uv-suggestions-header {
        height: auto;
        margin-bottom: 12px;
    }

    .uv-suggestions-row {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .uv-suggestions-row .uv-product-card {
        width: 100%;
        max-width: none;
        margin: 0;
        min-height: 0;
        height: 100%;
    }

    .uv-twin-panel-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 5px;
    }

    .uv-category-card {
        flex: 0 0 150px;
        width: 150px;
        height: 150px;
    }

    .uv-category-card-img {
        width: 120px;
        height: 110px;
        top: 8px;
    }

    .uv-category-card-name {
        font-size: 13px;
        padding: 4px 5px 6px;
    }}



/* ========================================
   FAVORITE / WISHLIST PAGE STYLES
   ======================================== */

.favorite-page {
    background: var(--uv-bg);
    padding: 30px 0 60px;
    min-height: 400px;
}

.favorite-header {
    text-align: center;
    padding: 0 0 28px;
}

.favorite-title {
    font-size: 26px;
    font-weight: 700;
    color: var(--uv-blue);
    margin: 0 0 8px;
}

.favorite-title i {
    color: #ef4444;
    margin-right: 8px;
}

.favorite-subtitle {
    font-size: 13px;
    color: #888;
    margin: 0;
}

/* Favorite Products Grid */
.favorite-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    margin-bottom: 30px;
}

.favorite-product-card {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07);
    transition: transform 0.2s, box-shadow 0.2s;
    position: relative;
    display: flex;
    flex-direction: column;
}

.favorite-product-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}

.favorite-product-img-wrap {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    background: var(--uv-bg);
}

.favorite-product-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.3s;
}

.favorite-product-card:hover .favorite-product-img-wrap img {
    transform: scale(1.05);
}

.favorite-product-actions {
    position: absolute;
    top: 8px;
    right: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.favorite-action-btn {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #fff;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 1px 4px rgba(0,0,0,0.15);
    transition: all 0.2s;
    font-size: 15px;
    text-decoration: none;
    color: #666;
}

.favorite-action-btn:hover {
    background: var(--uv-blue);
    color: #fff;
}

.favorite-action-btn.active,
.favorite-action-btn.is-favorited {
    color: #ef4444;
}

.favorite-action-btn.is-favorited:hover {
    background: #ef4444;
    color: #fff;
}

.favorite-product-body {
    padding: 12px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.favorite-product-title {
    font-size: 13px;
    font-weight: 500;
    color: #333;
    line-height: 1.4;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-decoration: none;
    flex: 1;
}

.favorite-product-title:hover {
    color: var(--uv-blue);
}

.favorite-product-price {
    font-size: 15px;
    font-weight: 700;
    color: var(--uv-red);
    margin-top: auto;
}

.favorite-product-price .old-price {
    font-size: 12px;
    color: #bbb;
    text-decoration: line-through;
    font-weight: 400;
    margin-left: 4px;
}

/* Empty Favorite State */
.favorite-empty {
    text-align: center;
    padding: 70px 20px;
    background: #fff;
    border-radius: 10px;
}

.favorite-empty-icon {
    width: 90px;
    height: 90px;
    margin: 0 auto 20px;
    background: #fef2f2;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.favorite-empty-icon i {
    font-size: 44px;
    color: #ef4444;
}

.favorite-empty-title {
    font-size: 20px;
    font-weight: 600;
    color: #333;
    margin: 0 0 8px;
}

.favorite-empty-text {
    font-size: 14px;
    color: #888;
    margin: 0 0 22px;
}

.btn-favorite-shop {
    display: inline-block;
    padding: 12px 28px;
    background: var(--uv-blue);
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: background 0.2s;
}

.btn-favorite-shop:hover {
    background: var(--uv-navy);
    color: #fff;
}

/* Favorite Responsive */
@media (max-width: 1199px) {
    .favorite-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 991px) {
    .favorite-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 767px) {
    .favorite-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .favorite-title {
        font-size: 20px;
    }
}

@media (max-width: 400px) {
    .favorite-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
}

/* ─────────────────────────────────────────────
   SEARCH SUGGEST BOX
───────────────────────────────────────────── */
.uv-search-suggest-box {
    display: none;
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    width: 100%;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    box-shadow: 0 6px 24px rgba(0,0,0,0.10);
    z-index: 9999;
    max-height: 320px;
    overflow-y: auto;
}

.uv-search-suggest-box.open {
    display: block;
    animation: suggestFadeIn 0.15s ease;
}

@keyframes suggestFadeIn {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}

.uv-suggest-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.12s;
}

.uv-suggest-item:hover,
.uv-suggest-item.active {
    background: #f5f7ff;
    color: var(--primary-color, #164499);
}

.uv-suggest-item i {
    color: #aaa;
    font-size: 13px;
    flex-shrink: 0;
}

.uv-suggest-item span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
}

@media (max-width: 768px) {
    .uv-search-suggest-box {
        top: 100%;
        border-radius: 0 0 4px 4px;
    }
}

