.main-row__left {
	background: #f3f4f5;
	height: auto;
	max-height: calc(100vh - 74px);
}

@media (max-width:1435px) {
	.main-row__right {
		display: none;
	}
	
	.main-row__middle {
		width: 80%;
	}
	
}

.main-row__mobi {
	height: auto;
	max-height: calc(100vh - 74px);
	z-index: 1;
}

.main-row__mobi__item {
	transition: background 0.2s ease;
}

.main-row__mobi__item:hover {
	background: rgba(26, 79, 140, .06);
}

.main-row__mobi__item::before {
	top: 50%;
    left: calc(100% + 8px);
    transform: translateY(-50%) translateX(-10px);
    border-width: 6px;
    border-color: transparent #007991 transparent transparent;
}

.main-row__mobi__item::after {
    top: 50%;
    left: calc(100% + 14px);
    transform: translateY(-50%) translateX(-6px);
    background: linear-gradient(135deg, #007991, #00b4a0);
	bottom: unset !important;
	font-weight: 500;
}

.main-row__mobi__item:hover::after {
	transform: translateY(-50%) translateX(0);
}

.main-row__mobi__item:hover::before {
	transform: translateY(-50%) translateX(-4px);
}

@media (max-width:900px) {
	.main-row__mobi {
		top: 20px;
	}
}

@media (max-width:550px) {
	.main-row__mobi {
		display: none !important;
	}
	
	.main-row__middle {
		width: 100% !important;
	}
	
	.option-container {
		display: block !important;
	}
}

@media (max-width:1080px) {
	.main-row__left {
		display: none !important;
	}
	
	.main-row__mobi {
		display: block;
	}
	
	.main-row__middle {
		width: calc(100% - 64px);
	}
}

/*** Main-Row-Left ***/
.main-row__left svg {
	min-width: 25px;
}

.left-menu {
	border-bottom: solid 1px #ccc;
}

.left-menu__item:hover {
	background: linear-gradient(90deg, rgba(0, 121, 145, .14), rgba(0, 180, 160, .06));
}

.left-menu__item a::before {
	content: "";
	position: absolute;
	background: var(--maincolor);
	width: 3px;
	height: 70%;
	left: 0;
	transform: scaleY(0);
	transform-origin: top;
	transition: transform .3s ease;
}

.left-menu__item:hover a::before {
	transform: scaleY(1);
}

.left-social__item svg {
	border-radius: 50%;
	box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}

/*** Main-Row-Middle ***/
.slider-wrapper {
	position: relative;
	min-height: 60px;
	margin: 0 -10px;
}

.slider-container {
	overflow: hidden;
	padding: 10px 0;
	z-index: 0;
}

.slider-track {
	display: flex;
	transition: transform .5s ease;
}

.slider-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #fff;
	color: var(--maincolor);
	font-size: 14px;
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	width: 40px;
	min-width: 40px;
	border: solid 2px var(--maincolor);
	border-radius: 50%;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .08);
}

.prev-btn {
	left: 0;
	margin-left: -10px;
}

.next-btn {
	right: 0;
	margin-right: -10px;
}

.option-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

.option-card {
  background: #ffffff;
  color: #1e293b;
  padding: 16px;
  border: 2px solid #e2e8f0;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05);
  cursor: pointer;
}

.option-card:hover {
  transform: translateY(-2px);
  color: #1e293b;
}

.option-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
}

.option-card__blue:hover {
  border-color: #3b82f6;
  box-shadow: 0 10px 15px -3px rgba(59, 130, 246, 0.1), 0 4px 6px -4px rgba(59, 130, 246, 0.1);
}

.option-card__blue .option-card__icon {
  background-color: #eff6ff;
  color: #3b82f6;
}

.option-card__blue:hover .option-card__icon {
  background-color: #3b82f6;
  color: #ffffff;
}

.option-card__red:hover {
  border-color: #ff4d4f;
  box-shadow: 0 10px 15px -3px rgba(239, 68, 68, 0.1), 0 4px 6px -4px rgba(239, 68, 68, 0.1);
}

.option-card__red .option-card__icon {
  background-color: #fef2f2;
  color: #ef4444;
}

.option-card__red:hover .option-card__icon {
  background-color: #ef4444;
  color: #ffffff;
}

.option-card__green:hover {
  border-color: #10b981;
  box-shadow: 0 10px 15px -3px rgba(16, 185, 129, 0.1), 0 4px 6px -4px rgba(16, 185, 129, 0.1);
}

.option-card__green .option-card__icon {
  background-color: #ecfdf5;
  color: #10b981;
}

.option-card__green:hover .option-card__icon {
  background-color: #10b981;
  color: #ffffff;
}


.silder-column {
	flex: 0 0 33.333333%;
	box-sizing: border-box;
	padding: 0 10px;
	margin: 0 !important;
}

@media (max-width:768px) {
	.silder-column {
		flex: 0 0 50%;
	}
}

@media (max-width:480px) {
	.silder-column {
		flex: 0 0 100%;
	}
}

.slider-main-container {
	overflow: hidden;
}

.slider-main-container .slider {
	transition: transform .5s ease-in-out;
}

.slider-main-container .slide {
	min-width: 100%;
}

.dots-container {
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
}

.dots-container .slide-dot {
	background-color: transparent;
	border: 2px solid #fff;
	border-radius: 50%;
	width: 12px;
	height: 12px;
	cursor: pointer;
	transition: background-color .2s;
}

.dots-container .slide-dot.active {
	background-color: #fff;
}

.slide-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(255, 255, 255, .33);
	color: #fff;
	cursor: pointer;
	font-size: 16px;
	border: none;
	border-radius: 50%;
	width: 50px;
	height: 50px;
	min-width: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: background .2s ease;
}

.slide-btn:hover {
	background: var(--maincolor);
}

.slide-btn.prev {
	left: 20px;
}

.slide-btn.next {
	right: 20px;
}

.countdown-container {
	background: linear-gradient(260.49deg, #39d389 11.31%, #0a9b81 89.87%), radial-gradient(58.84% 92.71% at 10.63% 22.22%, rgba(255, 255, 255, .12) 0%, rgba(255, 255, 255, 0) 100%);
	padding: 40px;
}

.countdown-mobi__box {
	background: rgba(255, 255, 255, .1);
	min-width: 80px;
	box-shadow: 0 6px 15px rgba(0, 0, 0, .3);
}

.countdown-mobi__text {
	opacity: 0.9;
}

.video_wrapper {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 0px;
	height: 0;
}

.video_wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0px;
	border-radius: 8px;
}

@media (max-width:768px) {
	.course-title {
		display: grid !important;
		justify-content: center !important;
		text-align: center;
	}
}


.combo_course {
	margin-bottom: -10px;
}

.combo-item {
	border-top: solid 2px #096dd9;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .08);
}

.combo-item__img {
	border-radius: 0;
}

.combo-item__borderprice {
	border-left: solid 2px #ccc;
	height: 15px;
}

.combo-item__btn {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 10px;
}

.combo-item__sale {
	position: absolute;
	top: 55px;
	left: 20px;
	background-color: #f35925;
	border-radius: 5px;
	padding: 1px 5px;
	font-size: 13px;
	color: #fff;
}

/*** Main-Row-Right ***/
.contact-box {
	border: solid 2px var(--maincolor);
	min-height: 350px;
}

@media (max-width:1435px) {
	.contact-box {
		min-height: auto;
	}
}

.contact-box__title {
	background-color: var(--maincolor);
	border-radius: 5px 5px 0 0;
}

.countdown {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 8px;
}

.countdown__time {
	background-color: #5ea68b;
	border-radius: 8px 8px 0 0;
}

.countdown__text {
	background-color: #054d32;
	border-radius: 0 0 8px 8px;
}

.phone-shake {
	background: #ffefef;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	box-shadow: 0 0 0 0 #ffefef;
	animation: phone_zoom 1.5s infinite linear;
}

.phone-shake__svg {
	animation: phone_shake 3s infinite linear;
}

.phone-shake__text {
	font-weight: 700;
	color: #f98106;
	font-size: 17px;
}

@keyframes phone_zoom {
	70% {
		box-shadow: 0 0 0 25px transparent;
	}
	
	100% {
		box-shadow: 0 0 0 0 transparent;
	}
}

@keyframes phone_shake {
	0%, 30% {
		transform: rotate(0deg);
	}
	
	33%, 39%, 45%, 51% {
		transform: rotate(-10deg);
	}
	
	36%, 42%, 48%, 54% {
		transform: rotate(10deg);
	}
	
	57% {
		transform: rotate(0deg);
	}
}

.support-container{
    border: 2px solid hsla(0, 0%, 74.5%, .2);
    box-shadow: 0 4px 10px 0 rgba(0, 0, 0, .1);
}

.header-icon.blue {
    background-color: #4a6ef5;
    color: #ffffff;
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
}

.divider {
    border-top: 1px solid #eaeaea;
    margin: 15px -15px; /* Kéo dài full chiều rộng thẻ */
}

.guide-card {
    background-color: #fffdf0;
    color: #856404;
    border: 1px solid #fff3cd; 
    transition: all 0.2s ease;
    
}

.guide-card:hover {
	background: #e0f4ee;
	color: var(--maincolor);
	border: 1px solid rgba(0, 121, 145, .2);
	box-shadow: 0 8px 20px rgba(0, 121, 145, .15);
}

.advise-card {
	position: relative;
	background: #f1f8f5;
	border-radius: 100px;
	transition: all 0.2s ease;
	border: 1px solid transparent;
}

.advise-card:hover {
	background: #e0f4ee;
	color: var(--maincolor);
	transform: translateY(-3px);
	border: 1px solid rgba(0, 121, 145, .2);
	box-shadow: 0 8px 20px rgba(0, 121, 145, .15);
}

.advise-card::after {
    content: "→";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) translateX(-8px);
    opacity: 0;
    transition: all 0.2s ease;
	font-size: 18px;
    font-weight: 600;
    color: var(--maincolor);
}

.advise-card:hover::after {
    opacity: 1;
    transform: translateY(-50%) translateX(0);
}




















/***Trạng thái đề thi và livestream***/
.status-badge {
	display: inline-flex;
	align-items: center;
	border-radius: 100px;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 500;
}

.upcoming-badge {
	background: #e6f4ff;
	color: #1677ff;
}

.active-badge {
	background: #fff1f0;
	color: #ff4d4f;
}

.ended-badge {
	background: #f6ffed;
	color: #52c41a;
}

.upcoming-icon {
	animation: blink-blue__live 1s infinite;
}

@keyframes blink-blue__live {
	0%, 100% {
		opacity: 1;
	}
	
	50% {
		opacity: .4;
	}
}

.active-icon {
	width: 8px;
	height: 8px;
	margin-right: 5px;
	background: #ff4d4f;
	border-radius: 50%;
	position: relative;
}

.active-icon::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	background: rgba(255, 77, 79, .6);
	border-radius: 50%;
	transform: translate(-50%, -50%);
	animation: pulse 1.5s infinite;
}

@keyframes pulse {
	0% {
		transform: translate(-50%, -50%) scale(1);
		opacity: .8;
	}
	
	70% {
		transform: translate(-50%, -50%) scale(3.4);
		opacity: 0;
	}
	
	100% {
		opacity: 0;
	}
}
  


/*** Mobi-Navbar ***/
.mobi-navbar {
	display: none;
}

@media (max-width:900px) {
	.mobi-navbar {
		display: block;
	}
}

.mobi-navbar__contact {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr);
}

.mobi-navbar__contact-item, .mobi-navbar__menu {
	height: 48px;
	line-height: 48px;
	background: var(--maincolor);
}

.mobi-navbar__panel {
	position: fixed;
	width: 50vw;
	height: 9999px;
	top: 0;
	bottom: 0;
	background-color: #fff;
	overflow: hidden;
	visibility: hidden;
	transition: ease .5s;
	z-index: 9999;
}

.mobi-navbar__left {
	left: 0;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

.mobi-navbar__right {
	right: 0;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

@media (max-width:550px) {
	.mobi-navbar__left, .mobi-navbar__right {
		width: 70vw;
	}
}

.mobi-navbar__panel.open {
	-webkit-transform: translateX(0);
	transform: translateX(0);
	visibility: visible;
}

.mobi-navbar__bg {
	z-index: 9998;
	position: fixed;
	background: rgba(0, 0, 0, .2);
	height: 9999px;
	width: 9999px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
}
.mobi-navbar__title {
	text-align: center;
	padding: 15px 0 10px;
	color: rgba(0, 0, 0, .2);
	border-bottom: solid 1px rgba(0, 0, 0, .1);
	font-weight: 600;
}

.mobi-navbar__list {
	max-height: calc(100vh - 50px) !important;
}

.mobi-navbar__list .drop-menu__folder {
	font-weight: bold;
	color: var(--maincolor);
}

.mobi-navbar__list .mobi-navbar__item {
	padding: 10px;
	border-bottom: solid 1px rgba(0, 0, 0, .1) !important;
}

/*** Main-Navbar ***/
.main-navbar {
	background: var(--maincolor);
	top: 0px;
	z-index: 2;
}

.main-navbar.sticky {
	box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}

@media (max-width:900px) {
	.main-navbar {
		display: none !important;
	}
}

.main-navbar .main-navbar__item {
	line-height: 54px;
	padding: 0 20px;
	transition: background 0.2s ease;
}

.main-navbar a.active .main-navbar__item, .main-navbar .main-navbar__item:hover {
	background: #0e9444;
}

.drop-menu {
	line-height: 54px;
	padding-right: 20px;
}

.drop-menu__list {
	left: 0;
	margin-top: 60px !important;
	width: 250px;
	box-shadow: 0 0 40px rgba(82, 85, 90, .2);
}

.drop-menu__list .drop-menu__folder {
	font-weight: bold;
	padding: 5px 10px;
	color: var(--maincolor);
}

.drop-menu__list .drop-menu__item {
	padding: 5px 10px;
	transition: background .2s ease;
}

.drop-menu__list .drop-menu__item:hover {
	background: var(--maincolor);
	color: #fff;
}

/*** Pay-Popup ***/
.pay-popup {
	top: 20px !important;
	width: 560px;
}

.pay-popup .swal2-title {
	font-size: 20px;
	color: var(--maincolor);
	font-weight: bold;
}

.pay-popup__description {
	text-align: justify;
	line-height: 1.5;
}

.suggest-item {
	background: #f3f4f5;
}




/*** Product-Items ***/
.course-item {
	position: relative;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 3px 4px rgba(44, 71, 146, .15);
	transition: box-shadow .2s ease;
}

.course-item:hover {
	box-shadow: 0 3px 10px rgba(44, 71, 146, .3) !important;
}

.course-item__img {
	width: 100%;
	border-radius: 8px 8px 0 0;
}

.course-item__infor {
	padding: 10px;
}

.course-item__title {
	min-height: 40px;
	margin-bottom: 10px;
	text-transform: uppercase;
	line-height: 1.25;
	font-weight: bold;
	color: #2970b8;
	transition: color .2s ease;
}

.course-item:hover .course-item__title {
	color: var(--maincolor);
}

.course-item__details {
	font-size: 14.5px;
}

.course-item__details span {
	color: #2970b8;
}

.course-item__footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 15px;
	font-size: 14px;
}

.course-item__price span {
	color: red;
}

.course-item__more {
	margin-right: -10px;
	background: #2970b8;
	border-radius: 5px 0 0 5px;
	color: #fff;
	font-size: 13px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 1px 15px 1px;
	transition: background .2s ease;
}

.course-item:hover .course-item__more {
	background: var(--maincolor);
}

.course-item__sale {
	position: absolute;
	top: 10px;
	right: 10px;
	background-color: #f35925;
	border-radius: 5px;
	padding: 1px 5px;
	font-size: 13px;
	color: #fff;
}

.course-item__footer .red-btn, .course-item__footer .blue-btn {
	font-size: 13.5px;
	height: auto !important;
	line-height: inherit;
	padding: 5px 10px;
}

.course-badge {
	display: flex;
	gap: 10px;
	position: absolute;
	top: 0;
	margin-top: 10px;
	margin-left: 10px;
}

.course-badge__freeship, .course-badge__sale {
	padding: 3px 10px;
	border-radius: 5px;
	color: #fff;
	font-size: 12.5px;
}

.course-badge__freeship {
	background-color: #46b795;
}

.course-badge__sale {
	background-color: #ffb416;
}

.noDataBg {
	background: #fff;
	text-align: center;
	padding: 25px 10px;
	border-radius: 20px;
}

/*** Button-SrollTop ***/
#scrollTopBtn {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 16px;
	background: var(--maincolor);
	color: #fff;
	cursor: pointer;
	transition: opacity .3s ease;
	justify-content: center;
	align-items: center;
	height: 50px;
	width: 50px;
	border-radius: 8px;
}

@media (max-width:900px) {
	#scrollTopBtn {
		display: none !important;
	}
}

/*** Pagination ***/
.pagination {
	margin-top: 20px;
	display: flex;
	justify-content: center;
	text-align: center;
}

.pagination button {
	margin: 0 3px;
	height: 30px;
	width: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: solid 1px var(--maincolor);
	border-radius: 3px;
	color: var(--maincolor);
	font-weight: 500;
	cursor: pointer;
	transition: .2s ease;
}

.pagination button:hover, .pagination button.active {
	background: var(--maincolor);
	color: #fff;
}

.pagination button[disabled] {
	opacity: .5;
	cursor: not-allowed;
	pointer-events: none;
	background-color: #ccc;
	color: #666;
	border-color: #bbb;
}


/*** Slider-Product ***/
.slider-wrapper {
	position: relative;
	min-height: 60px;
	margin: 0 -10px;
}

.slider-container {
	overflow: hidden;
	padding: 10px 0;
	z-index: 0;
}

.slider-track {
	display: flex;
	transition: transform .5s ease;
}

.slider-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #fff;
	color: var(--maincolor);
	font-size: 14px;
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	width: 40px;
	min-width: 40px;
	border: solid 2px var(--maincolor);
	border-radius: 50%;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .08);
}

.prev-btn {
	left: 0;
	margin-left: -10px;
}

.next-btn {
	right: 0;
	margin-right: -10px;
}



/* --- 1. Nút icon chat nổi (FAB) --- */
  .cskh-float-icon {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 3;
    cursor: pointer;
    background-color: #007991;
    color: white;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
  }

  .cskh-float-icon:hover {
    transform: scale(1.1);
  }

  .cskh-float-icon svg {
    width: 45px;
    height: 45px;
  }

  /* --- 2. Khung chat popup --- */
  .cskh-popup {
    position: fixed !important;
    bottom: 100px !important;
    right: 20px;
    width: 350px !important;
    max-width: 90vw;
    padding: 0 !important;
    display: none;
    z-index: 3 !important;
    animation: slideInUp 0.2s ease !important;
    transition: none !important;
    transform: translateY(0px);
  }

  @keyframes slideInUp {
    from { transform: translateY(80px); opacity: 0; }
    to { transform: translateY(40px); opacity: 1; }
  }

  .cskh-popup__header {
    background-color: #007991;
    color: #fff;
    padding: 15px 10px;
    font-weight: bold;
  }

.cskh-popup__body {
    padding: 20px;
}
  

  .cskh-popup__body textarea {
    resize: vertical;
    height: 80px;
  }

  


  .cskh-popup__footer {
    text-align: center;
    font-size: 11px;
    color: #888;
    padding: 8px;
    background-color: #f9f9f9;
    border-top: 1px solid #eee;
  }



.book-item {
    position: relative;
    background: #fff;
    border: solid 2px #f3f4f5;
    
}

.book-item__img {
    min-width: 150px;
    width: 80%;
    border-radius: 0px;
    box-shadow: -7px 7px 11px -3px #9e9e9e;
}



/* Nhãn giảm giá phong cách hiện đại */
.book-item__sale {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #ef4444;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 8px;
    border-radius: 6px;
    letter-spacing: 0.3px;
    box-shadow: 0 2px 5px rgba(239, 68, 68, 0.35);
    z-index: 2;
}

.book-item__infor {
    padding: 10px;
}

.book-item__title {
    min-height: 40px;
    margin-bottom: 10px;
    text-transform: uppercase;
    line-height: 1.25;
    font-weight: bold;
    color: #2970b8;
    transition: color .2s ease;
}

.book-item__title:hover {
    color: #007991;
}

.book-item__details {
    font-size: 14.5px;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: solid 1px rgba(0, 0, 0, .1);
}


.book-item__details-item span {
    color: #2970b8;
}

.book-item__price span{
    color: red;
}

.book-item__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    
}

.book-item__img-container {
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 25px 0;
    border-bottom: solid 2px #f3f4f5;
}

/* Lớp phủ mờ nhẹ trên ảnh khi hover để làm nổi bật nút giỏ hàng */
.book-item__img-container::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.2);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.book-item:hover .book-item__img-container::after {
    opacity: 1;
}

.book-item__img-container .btn-add-to-cart {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 999;
    background: #444;
    color: #fff;
    padding: 5px 10px;
    white-space: nowrap;
    text-transform: uppercase;
    font-size: 13px;
    border: none;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    margin-top: 20px;
    pointer-events: none; 
    transition: all 0.2s ease;
}

.book-item:hover .btn-add-to-cart {
    opacity: 1;
    visibility: visible;
    margin-top: 0;
    animation: hvr-adtocart 1s ease-in-out 1 forwards;
    pointer-events: none; 
}

@keyframes hvr-adtocart {
    16.65% {
        margin-top: 10px;
        opacity: .2;
    }
    33.3% {
        margin-top: -15px;
        opacity: .4;
    }
    49.95% {
        margin-top: 10px;
        opacity: .6;
    }
    66.6% {
        margin-top: -5px;
        opacity: .8;
    }
    83.6% {
        margin-top: 3px;
        opacity: .9;
    }
    to {
        margin-top: 0;
        opacity: 1;
    }
}

@keyframes enablePointer {
    to { pointer-events: auto; }
}

.book-item:hover .btn-add-to-cart {
    animation: hvr-adtocart 1s ease-in-out 1 forwards, enablePointer 0s 1s forwards;
}

.book-item .btn-add-to-cart:hover {
    animation: none !important; /* Chặn đứng việc lặp lại animation */
    background: var(--maincolor) ; /* Đổi màu khi hover vào nút */
    pointer-events: auto !important;
}