/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/ 
.container-icon img {
	width:50px;
}
.rank-math-breadcrumb p {
	margin-bottom: 0px;
}
#ftwp-postcontent  a {
	color:#288ad6 !important;
}
.column-quytrinh {
	flex-basis: 20% !important;
    max-width: 20% !important; 
}
.col-qtl::before{
	content: "";
	background-image: url("/wp-content/uploads/2023/10/Ellipse-79.png");
	width: 147px;
	height: 15px;
	position: absolute;
	top: 30px;
	left: 165px;
	background-size: cover;
}
.col-qtc::before{
	content: "";
	background-image: url("/wp-content/uploads/2023/10/Ellipse-80.png");
	width: 147px;
	height: 15px;
	position: absolute;
	left: 165px;
	top: 30px;
	background-size: cover;
}
.section-hero {
	padding-top: 0px !important;
	overflow: hidden;
}
.section-hero .lg-x50 {
	padding-left: 30px;
}
.list_cate ul {
	display: flex;
	justify-content: center;
	align-items: center;
	list-style: none;
	gap: 15px;
}
.menu-item {
	font-size: 13px !important;
}
.list_cate ul li {
	margin-left: 0px;
	border-radius: 99px;
	padding: 10px 20px;
	margin-right: 10px;
	text-transform: uppercase;
	margin-top: 10px;
	margin-bottom: 10px;
	box-shadow: 0 3px 6px -4px rgba(0,0,0,.16), 0 3px 6px rgba(0,0,0,.23);
	background-color: white;
	color: #334862;
}
.list_cate ul li:hover{
	color: #333333 !important;
}
.list_cate ul li a {

	color: #333333 !important;
	font-weight: 600;
}
.column-blog {
	padding-bottom: 0px;
}
.column-blog .post-item {
	padding-bottom: 0;
}
.post-item .col-inner {
	background: #fff;
}
.mt-0 {
	margin-bottom: 0px !important;
	padding-bottom: 0px !important;
}
.headding-title {
	font-family: "Roboto Slab", sans-serif;
	font-weight: 500;
	font-size: 20px;
}
.heading-container::before {
    content: "";
    width: 80px;
    height: 80px;
    background-image: url(/wp-content/uploads/2023/10/shape_ehKbFinVoL-1.png);
    background-size: contain;
    position: absolute;
    top: -5px;
    left: -35px;
}
h2.button.primary.headding-title {
	width: auto;
}
.section-staff .headding-title {
	font-size: 24px;
	margin: 0;
}
.section-staff .col {
	padding-bottom: 0 !important;
}
.accor_faq .accordion-item .accordion-title > span {
	font-size: 16px !important;
}
.header-post.entry-meta {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 14px;
}
.header-post.entry-meta>span {
	margin-right: 10px;
}
.header-post.entry-meta a.url {
	font-weight: bold;
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	margin-left: 5px;
}
.header-post.entry-meta .vcard {
	display: flex;
	align-items: center;
}
.header-post.entry-meta .vcard svg {
	margin-right: 5px;
}
.single footer.entry-meta {
	padding: 15px 0px;
}
.single .entry-title {
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
	font-family: "Roboto Slab", sans-serif;
}
.tags-list strong,
.footer-siger.blog-share strong {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	margin-right: 15px;
}
.tags-list a {
	display: inline-block;
	margin-right: 10px;
	padding: 6px 12px;
	justify-content: center;
	align-items: center;
	border-radius: 3px;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	background: var(--Gray-6---F1F1F1, #F1F1F1);
}
.footer-siger.blog-share {
	border-bottom: 1px solid #ececec;
    font-size: .8em;
    padding: 15px 0px;
}
.footer-siger.blog-share a {
	color : #333333;
	font-size: 18px;
	margin-right: 10px;
}
.home .section-hero .banner-bg {
/*    padding-bottom: 56.25% !important;*/
}
.home .banner-bg iframe {
	position: absolute;
    top: -30%;
    left: 0;
    width: 100%;
    height: 100%;
}
.list-post-top-cate {
    background-image: url('images/bg1.png') no-repeat;
	background-color: rgb(240, 246, 246);
    margin-bottom: 30px;
}
.list-post-top-cate ul {
    margin-left: 0;
    margin-top: 15px;
}
.list-post-top-cate ul li {
	list-style: none;
    float: left;
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 25%;
    margin-bottom: 20px;
}
.list-post-top-cate ul li:first-child {
    width: 50%;
}
.list-post-top-cate .post-inner {
    position: relative;
    padding-bottom: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #99D8D6;
    border-radius: 5px;
    background: #fff;
}
.list-post-top-cate .post-inner .entry-summary .excerpt,
.from_the_blog_excerpt {
	font-size: 15px;
}
.list-post-top-cate ul li:first-child .post-inner {
	height: 666px;
}
.list-post-top-cate ul li .image-thumb img
.list-post-top-cate ul li .image-thumb {
    height: 165px;
    overflow: hidden;
}
.list-post-top-cate ul li .image-thumb img {
	height: 165px;
	object-fit: cover;
}
.list-post-top-cate ul li:first-child .image-thumb {
	height: 340px;
}
.list-post-top-cate ul li:first-child .image-thumb img {
    height: 340px;
}
.list-post-top-cate ul li:first-child h3.entry-title {
    font-size: 18px;
    font-weight: 700;
    white-space: nowrap;
  	text-overflow: ellipsis;
  	overflow: hidden;
    line-height: initial;
    margin-top: 15px;
}
.list-post-top-cate ul li .entry-title, .list-post-top-cate ul li .entry-meta, .list-post-top-cate ul li .entry-summary {
    padding-left: 10px;
    padding-right: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.list-post-top-cate ul li h3.entry-title {
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
    -webkit-line-clamp: 2;
    height: fit-content;
    line-height: 25px;
    overflow: hidden;
}
.list-post-top-cate ul li h3.entry-title a {
	color: #333;
	font-size:16px;
	font-weight: 900;font-family: 'Open Sans';
}
.custom-title {
	position: relative;
}
.custom-title svg {
	fill: rgb(255, 174, 15);
	width: 80px;
	height: 80px;
	margin-left: 10px;
}
.custom-title a {
	font-size: 16px;
	font-family: "Roboto Slab", sans-serif;
    font-weight: 500;
	margin-left: -30px;
    bottom: 5px;
    position: absolute;
}
.list-category-bottom {
	padding-top: 20px;
	padding-bottom: 20px;
	background: rgba(244, 249, 255, 1.0);
}
.list-category-bottom p {
	color: #333;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}
.list-category-bottom .list_cate ul {
	justify-content: flex-start;
}
.list-category-bottom .list_cate ul li {
	margin-top: 0px;
	margin-bottom: 0px;
}
.archive .page-wrapper,
.single .page-wrapper {
	padding-bottom: 0px;
	padding-top: 15px;
}
.amlab_slider {
	margin-top: 10px;
}
.hautruong .amlab_slider {
	margin-top: 0px;
}
.amlab_slider.row-small>.flickity-viewport>.flickity-slider>.col {
	padding-bottom: 0px;
}
.readmore_video {
	width: 100%;
}
.slider-thumbnail .slider {
	max-height: 550px;
}
.slider-thumbnail .slider img {
	max-height: 550px;
	object-fit: cover;
}
.headding-title {
	background-color: #000 !important;
}
.headding-title.our-team {
	font-size: 25px;
}
.footer-infomation h3 {
	font-family: "Open Sans", sans-serif;
}
.pd-0 {
	padding-bottom: 0px !important;
}
.mg-0{
	margin-bottom: 0 !important;
}
.section-blog .row {
	margin: 0 auto !important;
	padding: 0;
}
.section-blog .row .col {
	padding: 0;
}
.list_cate ul {
	margin-bottom: 0;
}
.section-canhac .flickity-viewport {
	height: 257.688px !important;
}
.service-item h3 {
	font-size: 16px;
    font-weight: 500;
}
.service-item .box-overlay .box-text {
	padding-left: 5px;
	padding-right: 5px;
}
#footer .icon-box-img img {
	padding-top: 0px;
}
.list-post-top-cate ul li .entry-summary .excerpt,
.from_the_blog_excerpt {
    display: block;
    display: -webkit-box;
    max-width: 100%;
    height: 72px;
    margin: 0 auto;
    line-height: 18px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.section-gioithieu .col > div > a > span {
	font-size: 26px;
}
.section-gioithieu .col > div > a.title_Khachhang {
	padding: 0px 20px 0px 20px;
}
.tuyendung-title {
	margin: 0;
	font-size:30px;
	font-weight:900;
	padding-top:30px;
}
.button-expand {
	width:85% !important;
	left:7%;
	font-size:16px;
	text-align: left;
	padding-left: 10px !important;
}
.title-site {
	margin-left: -10px;
	margin-right:20px;
	color: #fff;
	font-size: 18px; 
	font-weight: 700;
	font-family:'Roboto Slab',sans-serif;
}
@media only screen and (min-width: 800px) and (max-width: 1200px) {
	.title-site {
		font-size: 11px;
	}
}
@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
	.container-icon img {
		width:30px;
	}
	.list_cate ul {
		overflow-x: scroll;
	    white-space: nowrap;
	    display: block;
	}
	.list_cate ul li {
		width: fit-content;
		display: inline-block;
		margin-top: 20px;
		margin-bottom: 20px;
		margin-left: 0px;
	}
	.list-post-top-cate ul li:first-child {
        width: 100%;
    }
    .list-post-top-cate ul li {
        width: 49%;
    }
	.list-post-top-cate ul li h3.entry-title a {
		color: #333;
		font-size:15px;
	}
    .list-post-top-cate ul li .entry-summary .excerpt,
    .from_the_blog_excerpt {
        font-size: 13px !important;
        line-height: 1;
    }
    .list-post-top-cate ul li:first-child .post-inner {
		height: auto;
	}
	.list-post-top-cate {
		margin-bottom: 15px;
	}
	.list-post-top-cate ul li .image-thumb img {
		height: 100px;
	}
	.list-post-top-cate ul li:first-child .image-thumb img,
	.list-post-top-cate ul li:first-child .image-thumb {
    	height: 205px;
	}
	.list-category-bottom .list_cate ul {
		padding-bottom: 20px;
		margin-bottom: 0px;
	}
	.headding-title {
		font-size: 14px !important;
		margin-left: 40px !important;
		margin-top: 5px !important;
	}
	.text-container {
		padding: 0 15px;
		font-size: 14px !important;
		text-align: justify !important;
	}
	.shape1,
	.custom-title svg {
		width: 60px !important;
		height: 60px !important;

	}
	.custom-title a {
		margin-bottom: 10px;
	}
	.custom-title a span {
		font-weight: bold;
	}
	.archive-page-header .col,
	.archive .col.post-item,
	.archive .col.post-item .box-text.text-left {
		padding-bottom: 0px !important;
	}
	.list-post-top-cate ul li h3.entry-title {
		line-height: 1.3;
		font-size: 13px;
		margin-bottom: 0.1em;
    	margin-top: 0.1em;
	}
	.is-divider {
		width: 90%;
		margin:0 auto;
	}
	.row-small>.col, .row-small>.flickity-viewport>.flickity-slider>.col{
		padding: 0 9.8px 10px;
	}
	.amlab_slider {
		margin-top: 0;
	}
	.amlab_slider .text h2{
		font-size: 14px !important;
	}
	
	.text-para {
		font-size: 12px !important;
	}
	.feature-title h3 {
		font-size: 13px !important;
	}
	.imgGiaiphap.img .img-inner {
		margin-top: 0px !important;
	}
	/* .hautruong .amlab_slider {
		margin-top: 15px;
	} */
	.service-list-footer {
		margin-top: 30px;
	}
	.section-gioithieu .col > div > a > span {
		font-size:16px;
	}
	.section-gioithieu .col > div > a.title_Khachhang {
		display: block;
		padding: 10px 20px !important;
	}
	.section-gioithieu .col > div > a.title_Khachhang > span {
		display: block;
	}
	.tuyendung-title {
		font-size: 25px;
		padding-bottom: 10px;
	}
	.tuyendungheader .is-divider {
		margin-bottom: 15px;
	}
	.gallery-tuyendung {
		padding-top: 0px !important;
		padding-bottom: 0px !important;
	}
	.item-tuyendung .flex.items-end {
		flex-wrap: wrap;
	}
	.item-cnt_right {
		width: 100% !important;
		text-align: center;
	}
	.list_cate {
		background: #02223d;
		padding-left: 15px;
		padding-right: 15px;
	}
	.hautruongsanxuatvideoblog .col {
		padding-bottom: 15px;
	}
	.title-duandathuchien-blog.button-expand {
		width: 65% !important;
	}
	.button-expand.hautruongvideotitle {
		width: 75% !important;
	}
	.list-post-top-cate ul {
		margin-top: 0px;
	}
	.header-post.entry-meta {
		flex-wrap: wrap;
	}
	.content-blog.col {
		padding-bottom: 0px;
	}
	.content-blog.col .post {
		margin-bottom: 15px;
	}
	.single-post .hautruong .amlab_slider {
		margin-top: 0px;
	}
	.single-post .heading-container {
		padding-bottom: 10px;
	}
	.heading-container::before {
		content: "";
		width: 60px;
		height: 60px;
		background-image: url(/wp-content/uploads/2023/10/shape_ehKbFinVoL-1.png);
		background-size: contain;
		position: absolute;
		top: -10px;
		left: 15px;
	}
	.column-quytrinh{
		flex-basis: 50% !important;
    	max-width: 50% !important; 
	}
	.col-qtl::before{
		content: "";
    background-image: url("/wp-content/uploads/2023/10/Ellipse-79.png");
    background-repeat: no-repeat;
    width: 95px;
    height: 15px;
    position: absolute;
    top: 30px;
    left: 100px;
    background-size: contain;
	}
	.divider {
		margin-bottom: 10px !important;
	}
	.readmore_video {
		margin-bottom: 0;
	}
	.sectionFAQ .accordion .accordion-item .accordion-title > span{
		font-size: 16px !important;
	}
	.section-canhac .flickity-viewport {
		height: 170px !important;
	}
}


/* ==========================================================================
   ✨ KAI NGUYEN HAI - HIGH-END LUXURY EDITORIAL (NỀN SÁNG CAO CẤP)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=Playfair+Display:ital,wght@0,600;0,700;1,400&display=swap');

:root {
    --kai-bg-primary: #ffffff;
    --kai-bg-canvas: #f8fafc;
    --kai-bg-card: #ffffff;
    --kai-text-dark: #0f172a;
    --kai-text-muted: #64748b;
    --kai-border-light: rgba(226, 232, 240, 0.85);
    --kai-accent-gold: #c5a059;
    --kai-accent-gold-hover: #b48c36;
    --kai-shadow-soft: 0 4px 20px -2px rgba(15, 23, 42, 0.05), 0 1px 3px rgba(15, 23, 42, 0.03);
    --kai-shadow-hover: 0 20px 35px -5px rgba(15, 23, 42, 0.12), 0 8px 16px -3px rgba(15, 23, 42, 0.05);
    --kai-radius-card: 16px;
    --kai-radius-btn: 99px;
}

#main {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    background-color: var(--kai-bg-canvas) !important;
    color: #334155 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 1. Header & Topbar Menu: Giữ nguyên 100% gốc (nền đen, chữ trắng, logo trắng) */

/* 2. Chuẩn hóa màu nền các Section sang Tone Sáng Cao Cấp */
#main section.section {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
    border-top: 1px solid rgba(226, 232, 240, 0.6) !important;
    background-color: var(--kai-bg-canvas) !important;
}

/* Section chẵn lẻ xen kẽ tạo nhịp điệu hài hòa */
#main section.section:nth-of-type(even) {
    background-color: #ffffff !important;
}

#main section.section:nth-of-type(odd) {
    background-color: #f8fafc !important;
}

/* Loại bỏ lớp phủ màu cũ */
#main section.section .section-bg-overlay {
    display: none !important;
}

/* 3. Làm biến mất hoàn toàn phần màu vàng/cam ở chỗ tiêu đề mỗi loại */
.heading-container::before,
.heading-container::after,
#main .heading-container::before,
#main .heading-container::after,
.shape1,
#main .shape1,
.custom-title svg,
#main .custom-title svg {
    display: none !important;
    content: none !important;
    background: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

/* 4. Nút tiêu đề thể loại sát bên trái, KHÔNG CÓ BORDER bao ngoài nút và KHÔNG CÓ BORDER phần tiêu đề/mô tả */
#main .heading-container,
#main .heading-container .col-inner,
#main .heading-container ~ .col,
#main .heading-container ~ .col .col-inner,
#main .heading-container + .col,
#main .heading-container + .col .col-inner,
#main .text-container,
#main .text-container .col-inner {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

#main .heading-container {
    text-align: left !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

#main .heading-container .col-inner {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

#main .headding-title,
#main a.headding-title,
#main .heading-container .button.headding-title {
    margin-left: 0 !important;
    margin-right: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-radius: 99px !important;
    padding: 10px 24px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    background-color: #0f172a !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    display: inline-block !important;
    text-align: left !important;
}

#main .heading-container ~ .col .text-container p,
#main .heading-container + .col .text-container p {
    font-size: 13.5px !important;
    color: #475569 !important;
    line-height: 1.55 !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    border: none !important;
    background: transparent !important;
}

/* 5. Thẻ Video & Dự Án (Chỉ áp dụng card cho slider video, tuyệt đối không dính vào tiêu đề hay footer) */
#main .amlab_slider .col .col-inner,
#main .flickity-slider .col-inner,
#main .section .flickity-viewport .col-inner {
    background: var(--kai-bg-card) !important;
    border-radius: var(--kai-radius-card) !important;
    overflow: hidden !important;
    border: 1px solid var(--kai-border-light) !important;
    box-shadow: var(--kai-shadow-soft) !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#main .amlab_slider .col .col-inner:hover,
#main .flickity-slider .col-inner:hover,
#main .section .flickity-viewport .col-inner:hover {
    transform: translateY(-6px) !important;
    box-shadow: var(--kai-shadow-hover) !important;
    border-color: rgba(197, 160, 89, 0.45) !important;
}

/* Banner Thumbnail */
#main .section .col-inner .banner {
    border-radius: 15px 15px 0 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

#main .section .col-inner .banner .bg {
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#main .section .col-inner:hover .banner .bg {
    transform: scale(1.05) !important;
}

/* 6. Nút Play ở giữa video: Nhỏ lại, KHÔNG CÓ VIỀN, vòng tròn trắng và tam giác đen CHÍNH XÁC CHÍNH TÂM */
#main .section .col-inner .banner::after {
    display: none !important;
    content: none !important;
}

#main .video-button-wrapper {
    font-size: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
}

#main .video-button-wrapper a.button.open-video {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    max-width: 36px !important;
    max-height: 36px !important;
    padding: 0 !important;
    margin: 0 auto !important;
    font-size: 0 !important; /* Triệt tiêu hoàn toàn khoảng trắng text-node gây lệch */
    line-height: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: none !important;
    outline: none !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
    border-radius: 50% !important;
    position: relative !important;
    display: inline-block !important;
    vertical-align: middle !important;
    overflow: hidden !important;
    transition: transform 0.2s ease !important;
}

#main .video-button-wrapper a.button.open-video:hover {
    background: #ffffff !important;
    background-color: #ffffff !important;
    transform: scale(1.1) !important;
    border: none !important;
    outline: none !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

#main .video-button-wrapper a.button.open-video i,
#main .video-button-wrapper a.button.open-video i.icon-play {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-46%, -50%) !important; /* -46% cân quang học hoàn hảo tam giác nhọn hướng phải */
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13px !important;
    line-height: 1 !important;
    width: 13px !important;
    height: 13px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #000000 !important;
    border: none !important;
    vertical-align: top !important;
}

#main .video-button-wrapper a.button.open-video i::before,
#main .video-button-wrapper a.button.open-video i.icon-play::before {
    display: block !important;
    line-height: 1 !important;
    font-size: 13px !important;
    color: #000000 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    height: 100% !important;
    text-align: center !important;
}

/* 7. Nút mũi tên chuyển slide (Arrow): Nhỏ gọn, cân chính giữa, icon nằm đúng tâm */
#main button.flickity-button,
#main button.flickity-prev-next-button,
#main .flickity-prev-next-button {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    max-width: 32px !important;
    max-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    outline: none !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16) !important;
    opacity: 0.95 !important;
    cursor: pointer !important;
    z-index: 20 !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
    font-size: 14px !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    transition: opacity 0.2s ease, box-shadow 0.2s ease !important;
}

#main button.flickity-button:hover,
#main button.flickity-prev-next-button:hover,
#main .flickity-prev-next-button:hover {
    background: #ffffff !important;
    background-color: #ffffff !important;
    opacity: 1 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
}

/* Vị trí mặc định (áp dụng cho Hero Slider trên cùng) */
#main .flickity-prev-next-button.previous {
    left: 16px !important;
    right: auto !important;
}

#main .flickity-prev-next-button.next {
    right: 16px !important;
    left: auto !important;
}

/* Riêng các slider video (amlab_slider): căn giữa thumbnail 16:9 và đặt ở 2 mép ngoài */
#main .amlab_slider .flickity-prev-next-button {
    top: 100px !important;
    transform: translateY(-50%) !important;
}

#main .amlab_slider .flickity-prev-next-button.previous {
    left: -14px !important;
    right: auto !important;
}

#main .amlab_slider .flickity-prev-next-button.next {
    right: -14px !important;
    left: auto !important;
}

/* SVG icon mũi tên: tuyệt đối chính giữa tâm vòng tròn, vô hiệu hóa style mặc định của Flatsome */
#main .flickity-prev-next-button svg,
#main button.flickity-button svg,
#main .slider-nav-circle .flickity-prev-next-button svg {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    min-height: 14px !important;
    max-width: 14px !important;
    max-height: 14px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block !important;
}

#main .flickity-prev-next-button:hover svg,
#main button.flickity-button:hover svg,
#main .slider-nav-circle .flickity-prev-next-button:hover svg {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Màu icon mũi tên: Đen tuyền sắc nét */
#main .flickity-prev-next-button svg,
#main .flickity-prev-next-button .arrow,
#main button.flickity-button svg,
#main button.flickity-button .arrow,
#main .slider-nav-circle .flickity-prev-next-button .arrow,
#main .slider-nav-circle .flickity-prev-next-button svg,
#main .slider-nav-light .flickity-prev-next-button .arrow,
#main .slider-nav-light .flickity-prev-next-button svg {
    fill: #000000 !important;
    stroke: none !important;
}

#main .flickity-prev-next-button:hover svg,
#main .flickity-prev-next-button:hover .arrow,
#main button.flickity-button:hover svg,
#main button.flickity-button:hover .arrow,
#main .slider-nav-circle .flickity-prev-next-button:hover .arrow,
#main .slider-nav-circle .flickity-prev-next-button:hover svg {
    fill: #000000 !important;
    stroke: none !important;
}

@media (max-width: 549px) {
    #main button.flickity-button,
    #main button.flickity-prev-next-button,
    #main .flickity-prev-next-button {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
        min-height: 28px !important;
        max-width: 28px !important;
        max-height: 28px !important;
    }
    #main .amlab_slider .flickity-prev-next-button {
        top: 54px !important;
    }
    #main .amlab_slider .flickity-prev-next-button.previous {
        left: -4px !important;
    }
    #main .amlab_slider .flickity-prev-next-button.next {
        right: -4px !important;
    }
    #main .flickity-prev-next-button svg,
    #main button.flickity-button svg,
    #main .slider-nav-circle .flickity-prev-next-button svg {
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        min-height: 12px !important;
        max-width: 12px !important;
        max-height: 12px !important;
    }
}

/* Tiêu đề Video bên dưới thumbnail - Căn giữa card video */
#main .amlab_slider .col-inner > .text,
#main .amlab_slider_mobi .col-inner > .text,
#main .flickity-slider .col-inner > .text,
#main .section .flickity-viewport .col-inner > .text,
#main .section .col-inner:has(.open-video) > .text,
#main .section .col-inner:has(.banner) > .text {
    padding: 14px 16px 16px 16px !important;
    text-align: center !important;
}

#main .amlab_slider .col-inner > .text *,
#main .amlab_slider_mobi .col-inner > .text *,
#main .flickity-slider .col-inner > .text *,
#main .section .col-inner:has(.open-video) > .text * {
    text-align: center !important;
}

#main .amlab_slider .col-inner > .text h2,
#main .amlab_slider .col-inner > .text h3,
#main .amlab_slider .col-inner > .text h4,
#main .amlab_slider .col-inner > .text p,
#main .amlab_slider .col-inner > .text a,
#main .amlab_slider_mobi .col-inner > .text h2,
#main .amlab_slider_mobi .col-inner > .text h3,
#main .amlab_slider_mobi .col-inner > .text h4,
#main .amlab_slider_mobi .col-inner > .text p,
#main .amlab_slider_mobi .col-inner > .text a,
#main .flickity-slider .col-inner > .text h2,
#main .flickity-slider .col-inner > .text h3,
#main .flickity-slider .col-inner > .text a,
#main .section .col-inner:has(.open-video) > .text h2,
#main .section .col-inner:has(.open-video) > .text h3,
#main .section .col-inner:has(.open-video) > .text a {
    font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    line-height: 1.45 !important;
    margin: 0 auto !important;
    text-align: center !important;
    transition: color 0.2s ease !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 40px;
}

#main .amlab_slider .col-inner:hover .text h2,
#main .amlab_slider .col-inner:hover .text h3,
#main .amlab_slider .col-inner:hover .text a,
#main .amlab_slider_mobi .col-inner:hover .text h2,
#main .amlab_slider_mobi .col-inner:hover .text h3,
#main .amlab_slider_mobi .col-inner:hover .text a,
#main .flickity-slider .col-inner:hover .text h2,
#main .flickity-slider .col-inner:hover .text h3,
#main .flickity-slider .col-inner:hover .text a,
#main .section .col-inner:has(.open-video):hover .text h2,
#main .section .col-inner:has(.open-video):hover .text h3,
#main .section .col-inner:has(.open-video):hover .text a {
    color: var(--kai-accent-gold) !important;
}

/* 8. Nâng cấp Section Báo Chí Truyền Thông */
#main .hautruong .col-inner p > a[href*="http"] {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 11px 16px !important;
    margin-bottom: 10px !important;
    background: #ffffff !important;
    border: 1px solid rgba(226, 232, 240, 0.9) !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    text-decoration: none !important;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.03) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    word-break: break-all;
}

#main .hautruong .col-inner p > a[href*="http"]:hover {
    border-color: var(--kai-accent-gold) !important;
    color: var(--kai-text-dark) !important;
    transform: translateX(4px) translateY(-2px);
    box-shadow: 0 8px 18px rgba(197, 160, 89, 0.16) !important;
    background: #fffdf9 !important;
}

#main .hautruong .col-inner p > a[href*="http"]::before {
    content: "📰";
    margin-right: 8px;
    font-size: 14px;
    flex-shrink: 0;
}

/* 9. Nút Bấm Sang Trọng (Pill Buttons) */
#main .button:not(.open-video):not(.flickity-button),
#main button:not(.flickity-button),
#main input[type='submit'],
#main .button.readmore_video {
    border-radius: var(--kai-radius-btn) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    padding: 10px 26px !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08) !important;
}

#main .button.primary {
    background: var(--kai-text-dark) !important;
    border-color: var(--kai-text-dark) !important;
    color: #ffffff !important;
}

#main .button.primary:hover {
    background: var(--kai-accent-gold) !important;
    border-color: var(--kai-accent-gold) !important;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(197, 160, 89, 0.32) !important;
}

/* 7. Danh Mục Pills (Category Filters) */
#main .list_cate ul li {
    border-radius: 99px !important;
    border: 1px solid rgba(226, 232, 240, 0.8) !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
    transition: all 0.25s ease !important;
}

#main .list_cate ul li:hover {
    border-color: var(--kai-accent-gold) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(197, 160, 89, 0.2) !important;
}

#main .list_cate ul li a {
    color: #1e293b !important;
}

#main .list_cate ul li:hover a {
    color: var(--kai-accent-gold) !important;
}

/* Chi tiết nút huy hiệu bài báo */
#main .press-badge {
    display: inline-block !important;
    padding: 3px 8px !important;
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #475569 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-right: 8px !important;
    flex-shrink: 0 !important;
}

#main .press-title {
    flex-grow: 1 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: #1e293b !important;
    font-weight: 500 !important;
}

#main .press-arrow {
    margin-left: 8px !important;
    color: #94a3b8 !important;
    font-weight: bold !important;
    flex-shrink: 0 !important;
    transition: transform 0.2s ease !important;
}

#main .hautruong .col-inner p > a:hover .press-badge {
    background: #fdf6e7 !important;
    border-color: var(--kai-accent-gold) !important;
    color: var(--kai-accent-gold) !important;
}

#main .hautruong .col-inner p > a:hover .press-arrow {
    color: var(--kai-accent-gold) !important;
    transform: translate(2px, -2px) !important;
}

/* ==========================================================================
   ✨ SECTION GIỚI THIỆU KAI NGUYỄN HẢI - EQUAL HEIGHT & OBJECT-FIT SLIDER
   Crop & zoom ảnh để slide luôn luôn cao bằng phần text bên trái, loại bỏ hoàn toàn khoảng trắng trống
   ========================================================================== */

/* 1. Thiết lập Row Giới thiệu hiển thị 2 cột cân xứng tuyệt đối */
#main .section .row:has(.container-giaiphap),
#main .row-gioithieu {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

@media (min-width: 850px) {
    #main .section .row:has(.container-giaiphap),
    #main .row-gioithieu {
        gap: 28px !important;
    }
    #main .container-giaiphap {
        flex: 1 1 calc(50% - 14px) !important;
        max-width: calc(50% - 14px) !important;
    }
    #main .container-giaiphap + .col,
    #main .col-gioithieu-slider {
        flex: 1 1 calc(50% - 14px) !important;
        max-width: calc(50% - 14px) !important;
    }
}

/* 2. Cột chữ bên trái (Card thông tin) */
#main .container-giaiphap {
    display: flex !important;
    flex-direction: column !important;
}

#main .container-giaiphap > .col-inner {
    flex: 1 1 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    border-radius: 16px !important;
    box-shadow: var(--kai-shadow-soft) !important;
    border: 1px solid var(--kai-border-light) !important;
    background: #ffffff !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#main .container-giaiphap > .col-inner:hover {
    box-shadow: var(--kai-shadow-hover) !important;
    border-color: rgba(197, 160, 89, 0.35) !important;
}

/* 3. Cột Slide bên phải: Luôn luôn bằng chiều cao cột chữ bên trái */
#main .container-giaiphap + .col,
#main .col-gioithieu-slider {
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    height: auto !important;
}

#main .container-giaiphap + .col > .col-inner,
#main .col-gioithieu-slider > .col-inner {
    flex: 1 1 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    background: transparent !important;
    padding: 0 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: var(--kai-shadow-soft) !important;
    border: 1px solid var(--kai-border-light) !important;
    position: relative !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#main .container-giaiphap + .col > .col-inner:hover,
#main .col-gioithieu-slider > .col-inner:hover {
    box-shadow: var(--kai-shadow-hover) !important;
    border-color: rgba(197, 160, 89, 0.35) !important;
}

/* Slider wrapper bao trọn 100% chiều cao */
#main .container-giaiphap + .col .slider-wrapper,
#main .col-gioithieu-slider .slider-wrapper {
    flex: 1 1 100% !important;
    height: 100% !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
}

/* Flickity slider & viewport ghi đè chiều cao inline */
#main .container-giaiphap + .col .slider,
#main .col-gioithieu-slider .slider {
    flex: 1 1 100% !important;
    height: 100% !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

#main .container-giaiphap + .col .flickity-viewport,
#main .col-gioithieu-slider .flickity-viewport {
    flex: 1 1 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    width: 100% !important;
    position: relative !important;
    overflow: hidden !important;
}

#main .container-giaiphap + .col .flickity-slider,
#main .col-gioithieu-slider .flickity-slider {
    height: 100% !important;
    width: 100% !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
}

/* Mỗi slide item */
#main .container-giaiphap + .col .flickity-slider > .img,
#main .container-giaiphap + .col .flickity-slider > div,
#main .col-gioithieu-slider .flickity-slider > .img,
#main .col-gioithieu-slider .flickity-slider > div {
    height: 100% !important;
    width: 100% !important;
    max-height: none !important;
    position: absolute !important;
    top: 0 !important;
}

#main .container-giaiphap + .col .flickity-slider .img-inner,
#main .col-gioithieu-slider .flickity-slider .img-inner {
    height: 100% !important;
    width: 100% !important;
    padding-top: 0 !important;
    position: relative !important;
}

/* CROP VÀ ZOOM IN: Ảnh luôn luôn full khung 100% chiều cao và chiều rộng, không bị méo */
#main .container-giaiphap + .col .flickity-slider img,
#main .col-gioithieu-slider .flickity-slider img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center 20% !important; /* Cân đối khuôn mặt ở phần trên khung hình */
    display: block !important;
}

/* Căn giữa nút mũi tên điều hướng slider chính xác ở giữa slider */
#main .container-giaiphap + .col .flickity-prev-next-button,
#main .col-gioithieu-slider .flickity-prev-next-button {
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border-radius: 50% !important;
    background-color: rgba(255, 255, 255, 0.95) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16) !important;
    opacity: 0.95 !important;
    z-index: 10 !important;
    border: none !important;
    outline: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

#main .container-giaiphap + .col .flickity-prev-next-button:hover,
#main .col-gioithieu-slider .flickity-prev-next-button:hover {
    background-color: #ffffff !important;
    opacity: 1 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
}

#main .container-giaiphap + .col .flickity-prev-next-button svg,
#main .col-gioithieu-slider .flickity-prev-next-button svg {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 14px !important;
    height: 14px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    background: transparent !important;
    box-shadow: none !important;
}

#main .container-giaiphap + .col .flickity-prev-next-button .arrow,
#main .col-gioithieu-slider .flickity-prev-next-button .arrow {
    fill: #000000 !important;
}

#main .container-giaiphap + .col .flickity-prev-next-button.previous,
#main .col-gioithieu-slider .flickity-prev-next-button.previous {
    left: 16px !important;
    right: auto !important;
}

#main .container-giaiphap + .col .flickity-prev-next-button.next,
#main .col-gioithieu-slider .flickity-prev-next-button.next {
    right: 16px !important;
    left: auto !important;
}

#main .container-giaiphap + .col .flickity-page-dots,
#main .col-gioithieu-slider .flickity-page-dots {
    bottom: 16px !important;
    z-index: 10 !important;
}

/* Xử lý hiển thị mượt mà trên Mobile & Tablet khi 2 cột xếp chồng */
@media (max-width: 849px) {
    #main .section .row:has(.container-giaiphap),
    #main .row-gioithieu {
        gap: 20px !important;
    }
    #main .container-giaiphap {
        margin-bottom: 20px !important;
    }
    #main .container-giaiphap + .col,
    #main .col-gioithieu-slider {
        height: 520px !important;
        min-height: 520px !important;
    }
    #main .container-giaiphap + .col .slider-wrapper,
    #main .container-giaiphap + .col .flickity-viewport,
    #main .col-gioithieu-slider .slider-wrapper,
    #main .col-gioithieu-slider .flickity-viewport {
        height: 520px !important;
        min-height: 520px !important;
    }
}

@media (max-width: 549px) {
    #main .container-giaiphap + .col,
    #main .col-gioithieu-slider {
        height: 420px !important;
        min-height: 420px !important;
    }
    #main .container-giaiphap + .col .slider-wrapper,
    #main .container-giaiphap + .col .flickity-viewport,
    #main .col-gioithieu-slider .slider-wrapper,
    #main .col-gioithieu-slider .flickity-viewport {
        height: 420px !important;
        min-height: 420px !important;
    }
}

/* ==========================================================================
   🔒 KAI NGUYEN HAI - PROTECTED YOUTUBE SHIELD & PLAYER SYSTEM
   Che link YouTube, Chặn click out ra YouTube, Chặn tải video & kiểm tra mã nguồn
   ========================================================================== */

/* 1. KHÓA TƯƠNG TÁC TRỰC TIẾP LÊN IFRAME YOUTUBE */
.kai-video-iframe,
.review-youtube-shield iframe,
.mfp-iframe-scaler iframe {
    pointer-events: none !important;
    touch-action: none !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    border: none !important;
    outline: none !important;
}

/* 2. KHUNG CONTAINER BẢO VỆ VIDEO */
.kai-protected-player-container {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    background-color: #030712 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 25px 60px -10px rgba(0, 0, 0, 0.85), 0 0 0 1px rgba(255, 255, 255, 0.1) !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

.kai-protected-player-container iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: none !important;
}

/* 3. THANH CHE PHÍA TRÊN (TOP COVER)
   Che phủ hoàn toàn tiêu đề, avatar kênh YouTube và nút chia sẻ */
.kai-video-top-cover {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 54px !important;
    background: linear-gradient(180deg, rgba(3, 7, 18, 0.96) 0%, rgba(3, 7, 18, 0.82) 75%, transparent 100%) !important;
    z-index: 35 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 18px !important;
    pointer-events: auto !important;
    border-top-left-radius: 16px !important;
    border-top-right-radius: 16px !important;
}

.kai-video-brand-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 5px 12px !important;
    background: rgba(250, 204, 21, 0.12) !important;
    border: 1px solid rgba(250, 204, 21, 0.35) !important;
    border-radius: 6px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    color: #facc15 !important;
    text-transform: uppercase !important;
    flex-shrink: 0 !important;
}

.kai-video-title-text {
    flex: 1 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #f8fafc !important;
    margin: 0 16px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-shadow: 0 2px 4px rgba(0,0,0,0.6) !important;
    text-align: left !important;
}

.kai-video-close-btn {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
}

.kai-video-close-btn:hover {
    background: #ef4444 !important;
    border-color: #ef4444 !important;
    color: #ffffff !important;
    transform: scale(1.08) !important;
}

/* 4. ẨN CÁC Ô CHE RỜI RẠC DƯỚI ĐÁY ĐỂ DÀNH TRỌN CHO THANH ĐIỀU KHIỂN & THANH TUA */
.kai-video-bottom-left-cover,
.kai-video-bottom-cover {
    display: none !important;
}

/* 5. WATERMARK BẢN QUYỀN */
.kai-video-watermark {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) rotate(-15deg) !important;
    pointer-events: none !important;
    z-index: 15 !important;
    opacity: 0.08 !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

/* 6. LỚP KHIÊN CLICK SHIELD (CLICK TO PLAY / PAUSE) */
.kai-video-click-shield {
    position: absolute !important;
    inset: 0 !important;
    bottom: 52px !important; /* Dành không gian thao tác cho thanh điều khiển */
    z-index: 20 !important;
    cursor: pointer !important;
    background: transparent !important;
}

/* 7. NÚT PLAY LỚN Ở GIỮA MÀN HÌNH */
.kai-video-big-play {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 68px !important;
    height: 68px !important;
    border-radius: 50% !important;
    background: rgba(250, 204, 21, 0.95) !important;
    color: #0f172a !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.45), 0 0 20px rgba(250, 204, 21, 0.5) !important;
    z-index: 25 !important;
    pointer-events: none !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    opacity: 0.96 !important;
}

.kai-video-big-play svg {
    margin-left: 4px !important;
}

.is-playing .kai-video-big-play {
    opacity: 0 !important;
    transform: translate(-50%, -50%) scale(0.8) !important;
    pointer-events: none !important;
}

/* 8. THANH ĐIỀU KHIỂN CUSTOM BÊN DƯỚI & THANH TUA MÀU VÀNG NỔI BẬT */
.kai-video-controls {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 52px !important;
    background: linear-gradient(0deg, rgba(3, 7, 18, 0.98) 0%, rgba(3, 7, 18, 0.88) 75%, transparent 100%) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    z-index: 35 !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 18px !important;
    gap: 12px !important;
    border-bottom-left-radius: 16px !important;
    border-bottom-right-radius: 16px !important;
    box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.4) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

.kai-ctrl-btn {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
    transition: all 0.2s ease !important;
    flex-shrink: 0 !important;
}

.kai-ctrl-btn:hover {
    background: rgba(250, 204, 21, 0.18) !important;
    color: #facc15 !important;
    transform: scale(1.08) !important;
}

.kai-ctrl-btn.kai-btn-cc {
    opacity: 0.6 !important;
    transition: all 0.2s ease !important;
}

.kai-ctrl-btn.kai-btn-cc:hover {
    opacity: 1 !important;
    color: #facc15 !important;
}

.kai-ctrl-btn.kai-btn-cc.is-active {
    opacity: 1 !important;
    color: #facc15 !important;
    background: rgba(250, 204, 21, 0.22) !important;
    box-shadow: 0 0 10px rgba(250, 204, 21, 0.45) !important;
}

.kai-ctrl-time {
    font-size: 12px !important;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-weight: 600 !important;
    color: #cbd5e1 !important;
    flex-shrink: 0 !important;
    min-width: 42px !important;
}

/* KHUNG THANH TUA VIDEO MÀU VÀNG */
.kai-ctrl-scrubber-wrap {
    flex: 1 !important;
    position: relative !important;
    height: 8px !important;
    background: rgba(255, 255, 255, 0.22) !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
    transition: height 0.15s ease !important;
    touch-action: none !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

/* Vùng đệm bắt click 32px để bấm hoặc kéo đều cực nhạy */
.kai-ctrl-scrubber-wrap::before {
    content: '' !important;
    position: absolute !important;
    top: -12px !important;
    bottom: -12px !important;
    left: 0 !important;
    right: 0 !important;
    cursor: pointer !important;
    z-index: 1 !important;
}

.kai-ctrl-scrubber-wrap:hover,
.kai-ctrl-scrubber-wrap.is-dragging {
    height: 10px !important;
}

/* DẢI TUA MÀU VÀNG RỰC RỠ SANG TRỌNG */
.kai-ctrl-progress-fill {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    background: #facc15 !important;
    background: linear-gradient(90deg, #f59e0b 0%, #facc15 60%, #fef08a 100%) !important;
    border-radius: 999px !important;
    pointer-events: none !important;
    box-shadow: 0 0 10px rgba(250, 204, 21, 0.75), 0 0 3px rgba(250, 204, 21, 0.9) !important;
    transition: width 0.04s linear !important;
    z-index: 2 !important;
}

/* NÚT TRÒN TRÊN THANH TUA */
.kai-ctrl-progress-thumb {
    position: absolute !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 50% !important;
    background: #facc15 !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5), 0 0 10px rgba(250, 204, 21, 0.8) !important;
    pointer-events: none !important;
    z-index: 3 !important;
    transition: transform 0.15s ease !important;
}

.kai-ctrl-scrubber-wrap:hover .kai-ctrl-progress-thumb,
.kai-ctrl-scrubber-wrap.is-dragging .kai-ctrl-progress-thumb {
    transform: translate(-50%, -50%) scale(1.25) !important;
}

.kai-ctrl-scrubber {
    position: absolute !important;
    top: -12px !important;
    bottom: -12px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: calc(100% + 24px) !important;
    opacity: 0 !important;
    cursor: pointer !important;
    margin: 0 !important;
    z-index: 4 !important;
}

/* HUY HIỆU BẢN QUYỀN GÓC PHẢI THANH ĐIỀU KHIỂN */
.kai-ctrl-brand-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 4px 10px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 6px !important;
    flex-shrink: 0 !important;
    pointer-events: none !important;
}

.kai-ctrl-brand-tag .kai-brand-lock {
    font-size: 11px !important;
}

.kai-ctrl-brand-tag .kai-brand-text {
    font-size: 10.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    color: #f1f5f9 !important;
    text-transform: uppercase !important;
}

@media (max-width: 640px) {
    .kai-ctrl-brand-tag {
        display: none !important;
    }
}

/* 9. CINEMA MODAL WRAPPER (TO RƠN, TỶ LỆ HOÀNH TRÁNG, NỀN HƠI MỜ) */
.kai-video-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity 0.28s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.28s ease !important;
}

.kai-video-modal.active {
    opacity: 1 !important;
    visibility: visible !important;
}

/* NỀN HƠI MỜ: Độ mờ nhẹ và độ tối vừa phải, giữ nhận diện giao diện bên dưới */
.kai-video-backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.58) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    cursor: pointer !important;
}

/* KHUNG MODAL TO RA KHI PHÁT VIDEO */
.kai-video-dialog {
    position: relative !important;
    width: 95vw !important;
    max-width: 1220px !important;
    max-height: 92vh !important;
    z-index: 2 !important;
    transform: scale(0.96) translateY(8px) !important;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.kai-video-modal.active .kai-video-dialog {
    transform: scale(1) translateY(0) !important;
}

@media (min-width: 1600px) {
    .kai-video-dialog {
        max-width: 1380px !important;
    }
}

@media (max-width: 767px) {
    .kai-video-modal {
        padding: 10px !important;
    }
    .kai-video-dialog {
        width: 100% !important;
        max-width: 100% !important;
    }
}

body.kai-modal-open {
    overflow: hidden !important;
}

/* 10. TRIỆT TIÊU TOÀN BỘ Ô VUÔNG ĐEN CỦA MAGNIFIC POPUP (FLATSOME LIGHTBOX) */
.mfp-wrap.my-mfp-video,
.mfp-bg.my-mfp-video,
.mfp-iframe-holder,
.mfp-iframe-scaler,
.mfp-wrap:has(.mfp-iframe-scaler),
.mfp-bg:has(+ .mfp-wrap .mfp-iframe-scaler) {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* 11. INLINE PLAYER SPECIFIC STYLES */
.kai-inline-player {
    margin: 28px 0 !important;
}

/* 12. TỐI ƯU KHOẢNG CÁCH CÁC CARD VIDEO (THU HẸP KHOẢNG CÁCH TRÊN DƯỚI) */
#main .row.amlab_slider,
#main .row.amlab_slider_mobi {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#main .amlab_slider .flickity-viewport,
#main .amlab_slider_mobi .flickity-viewport {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

#main .amlab_slider.row-small > .flickity-viewport > .flickity-slider > .col,
#main .amlab_slider_mobi.row-small > .flickity-viewport > .flickity-slider > .col {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* Thu gọn thanh màu trắng chứa tiêu đề dưới mỗi video: ôm sát, thanh thoát hơn */
#main .amlab_slider .col-inner .text,
#main .amlab_slider_mobi .col-inner .text,
#main .flickity-slider .col-inner .text,
#main .section .flickity-viewport .col-inner .text {
    padding: 8px 12px 10px 12px !important;
}

#main .amlab_slider .col-inner .text h2,
#main .amlab_slider .col-inner .text h3,
#main .amlab_slider_mobi .col-inner .text h2,
#main .amlab_slider_mobi .col-inner .text h3 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    line-height: 1.35 !important;
    min-height: 34px !important;
}

/* 13. BỘ CHỌN CHẤT LƯỢNG VIDEO (QUALITY SELECTOR) TRÊN THANH ĐIỀU KHIỂN */
.kai-ctrl-quality-wrap {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
}

.kai-ctrl-quality-select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(251, 191, 36, 0.45) !important;
    color: #fbbf24 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    border-radius: 6px !important;
    padding: 3px 22px 3px 8px !important;
    height: 28px !important;
    outline: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    font-family: inherit !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fbbf24'%3e%3cpath d='M7 10l5 5 5-5z'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 4px center !important;
    background-size: 14px !important;
}

.kai-ctrl-quality-select:hover {
    background-color: rgba(251, 191, 36, 0.18) !important;
    border-color: #fbbf24 !important;
    color: #ffffff !important;
}

.kai-ctrl-quality-select option {
    background: #090d16 !important;
    color: #ffffff !important;
    padding: 6px !important;
}

/* Toast thông báo chất lượng video */
.kai-quality-toast {
    position: absolute !important;
    top: 60px !important;
    right: 20px !important;
    z-index: 40 !important;
    background: rgba(9, 13, 22, 0.94) !important;
    border: 1px solid rgba(251, 191, 36, 0.5) !important;
    color: #fbbf24 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 6px 14px !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.6) !important;
    pointer-events: none !important;
    opacity: 0 !important;
    transform: translateY(-6px) !important;
    transition: opacity 0.25s ease, transform 0.25s ease !important;
    backdrop-filter: blur(8px) !important;
}

.kai-quality-toast.is-show {
    opacity: 1 !important;
    transform: translateY(0) !important;
}