.text-wap {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-flex: 1;
    -webkit-box-orient: vertical;
    margin-bottom: 3px;
}

.btn-gdt {
    display: inline-flex;
    appearance: none;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    user-select: none;
    position: relative;
    white-space: nowrap;
    vertical-align: middle;
    outline: transparent solid 2px;
    outline-offset: 2px;
    line-height: 1;
    border-radius: 9px;
    font-weight: 700;
    transition-property: background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;
    transition-duration: 200ms;
    height: 2.3rem;
    min-width: 2.5rem;
    font-size: 14px;
    padding-inline-start: 1rem;
    padding-inline-end: 1rem;
    background: linear-gradient(45deg, var(--color-btn-1), var(--color-btn-2));
    color: var(--color-black);
    text-transform: uppercase;
    padding: 10px 20px;
}

.btn-gdt:hover {
    transition-property: background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;
    transition-duration: 200ms;
    background: linear-gradient(45deg, var(--color-btn-2), var(--color-btn-1));
    color: var(--color-black);
}

.btn-brown {
    display: inline-flex;
    appearance: none;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    user-select: none;
    position: relative;
    white-space: nowrap;
    vertical-align: middle;
    outline: transparent solid 2px;
    outline-offset: 2px;
    line-height: 1;
    border-radius: 9px;
    font-weight: 600;
    transition-property: background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;
    transition-duration: 200ms;
    height: 2.3rem;
    min-width: 2.5rem;
    font-size: 14px !important;
    padding-inline-start: 1rem;
    padding-inline-end: 1rem;
    background: #282828;
    color: var(--color-white);
    text-transform: uppercase;
    padding: 10px 20px;
}

.btn-brown:hover {
    transition-property: background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;
    transition-duration: 200ms;
    background: #525252;
}

.btn-close {
    display: inline-flex;
    appearance: none;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    user-select: none;
    position: relative;
    white-space: nowrap;
    vertical-align: middle;
    outline: transparent solid 2px;
    outline-offset: 2px;
    line-height: 1;
    border-radius: 5px;
    color: #fff;
    font-weight: 600;
    transition-property: background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;
    transition-duration: 200ms;
    height: 2.3rem;
    min-width: 2.5rem;
    font-size: 14px !important;
    padding-inline-start: 1rem;
    padding-inline-end: 1rem;
    text-transform: uppercase;
    padding: 20px;
    border-width: 1.5px;
    border-style: solid;
    border-image: initial;
    border-color: #2139c0;
}

.btn-close:hover {
    background: #253266;
    color: #fff;
}

.text-header-hover:hover {
    text-decoration: none;
    color: red;
    border-bottom: 1px solid;
}

.hover-sub-header:hover {
    color:#ED64A6;
}

/* --- Tổng thể pagination --- */
.dt-paging nav {
    display: flex;
    justify-content: left;
    align-items: center;
    flex-wrap: wrap;
    list-style: none;
}

/* --- Nút phân trang chung --- */
.dt-paging-button {
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    outline: none;
    border-radius: 5px;
    background: transparent;
    color: #9ca3af;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.25s ease;
}

/* --- Hover hiệu ứng --- */
.dt-paging-button:hover:not(.disabled):not(.current) {
    background: #1e293b;
    color: #fff;
}

/* --- Nút hiện tại --- */
.dt-paging-button.current {
    background: #2542dd;
    color: #fff !important;
    font-weight: 600;
}

/* --- Nút mũi tên (previous / next) --- */
.dt-paging-button.previous,
.dt-paging-button.next {
    background: transparent;
    color: #cbd5e1;
    font-size: 18px;
    font-weight: bold;
}

.dt-paging-button.previous:hover,
.dt-paging-button.next:hover {
    color: #fff;
    transform: translateY(-1px);
}

/* --- Ẩn first/last nếu không cần --- */
.dt-paging-button.first,
.dt-paging-button.last {
    display: none !important;
}

/* --- Trạng thái disabled --- */
.dt-paging-button.disabled {
    opacity: 0.3;
    cursor: not-allowed;
    background: transparent;
}


/* ANIMATION */
.changeColor {
    animation:changeColor .3s linear infinite;
}

.showText {
    animation-duration:2.5s;
    animation-delay:0ms;
    animation-name:showText;
    animation-iteration-count:1;
}

.input-animation {
    animation-duration:.5s;
    animation-delay:50ms;
    animation-name:input-animation;
    animation-iteration-count:1;
}

.frame-service {
    position:absolute;
    top:0;
    inset:1px;
    pointer-events:none;
}

.image-with-blur-border {
    position:relative;
    display:inline-block;
    background-size:cover;
    background-position:center center;
    overflow:hidden;
}

.image-with-blur-border:after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:20px;
    box-shadow:0 -8px 8px #00000080;
    pointer-events:none;
}

@keyframes input-animation {
    0% {
        width:0;
    }
    to {
        width:100%;
    }
}

@keyframes changeColor {
    0% {
        background:var(--bg-item3-main-color);
    }
    50% {
        background:var(--bg-item2-main-color);
    }
    to {
        background:var(--bg-item3-main-color);
    }
}

@keyframes showText {
    0% {
        clip-path:polygon(0% 0%,0% 0%,0% 0%);
    }
    to {
        clip-path:polygon(0% 0%,200% 0%,0% 200%);
    }
}

.skeleton {
    background-color:var(--bg-item4-main-color);
    width:100%;
    height:auto;
    position:relative;
    overflow:hidden;
}

.skeleton:before {
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(to right,transparent,rgba(57,77,225,.5),transparent);
    animation:skeleton-loading 1.5s linear infinite;
}

@keyframes skeleton-loading {
    0% {
        left:-100%;
    }
    to {
        left:100%;
    }
}

.transaction-new-item {
    position:absolute;
    animation:transaction-new-item-loading .7s normal;
}

@keyframes transaction-new-item-loading {
    0% {
        opacity:0;
        left:100%;
    }
    to {
        opacity:1;
        left:0%;
    }
}

@keyframes rotating {
    0% {
        transform:rotate(0);
    }
    to {
        transform:rotate(360deg);
    }
}

.rotating {
    animation:rotating .3s linear infinite;
}

.lucky-card-light {
    z-index:1;
    position:relative;
    display:inline-block;
    animation:light 1s linear infinite;
}

.lucky-card-light:before {
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:50%;
    height:50%;
    border-radius:50%;
    transform:translate(-50%,-50%);
}

@keyframes light {
    0% {
        box-shadow:0 0 #dcdcfea7;
    }
    to {
        box-shadow:0 0 0 100px #fff0;
    }
}

.shake-card:hover {
    animation:shake .5s;
    animation-iteration-count:infinite;
}

.shake-card .flip {
    animation:flip 1s;
    animation-fill-mode:forwards;
}

.shake-card .flip-back {
    animation:flip-back 1s;
    animation-fill-mode:forwards;
}

.transtion {
    transition:.5s;
}

.lucky-card-light {
    z-index: 1;
    position: relative;
    display: inline-block;
    animation: light 1s linear infinite !important
}

@keyframes shake {
    0% {
        transform:translate(0);
    }
    25% {
        transform:translate(-5px) rotate(-5deg);
    }
    50% {
        transform:translate(0) rotate(0);
    }
    75% {
        transform:translate(5px) rotate(5deg);
    }
    to {
        transform:translate(0) rotate(0);
    }
}

@keyframes flip {
    0% {
        transform:rotateY(0);
    }
    50% {
        transform:rotateY(90deg);
    }
    to {
        transform:rotateY(180deg);
    }
}

@keyframes flip-back {
    0% {
        transform:rotateY(180deg);
    }
    50% {
        transform:rotateY(90deg);
    }
    to {
        transform:rotateY(0);
    }
}

@keyframes light {
    0% {
        box-shadow: 0 0 #dcdcfea7;
    }
    100% {
        box-shadow: 0 0 0 100px #fff0;
    }
}