.vtxvn-tag-header {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	overflow: hidden;
	margin-bottom: 16px !important;
	padding: 24px 28px;
	border: 1px solid #cae2ef;
	border-radius: 18px;
	background:
		radial-gradient(circle at 82% 20%, rgba(80, 205, 247, 0.2), transparent 28%),
		linear-gradient(135deg, #073d65 0%, #096a9f 68%, #0787b8 100%);
	box-shadow: 0 12px 32px rgba(13, 77, 116, 0.11);
	color: #fff;
}

.vtxvn-tag-header::after {
	position: absolute;
	right: -70px;
	bottom: -120px;
	width: 300px;
	height: 300px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	box-shadow: 0 0 0 42px rgba(255, 255, 255, 0.035), 0 0 0 84px rgba(255, 255, 255, 0.025);
	content: '';
	pointer-events: none;
}

.vtxvn-tag-header__icon {
	display: flex;
	width: 58px;
	height: 58px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.1);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.vtxvn-tag-header__icon .dashicons {
	width: 29px;
	height: 29px;
	color: #8ee9ff;
	font-size: 29px;
}

.vtxvn-tag-header__copy {
	min-width: 0;
}

.vtxvn-tag-header__copy small {
	display: block;
	margin-bottom: 4px;
	color: #9de8ff;
	font-size: 0.64rem;
	font-weight: 700;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.woocommerce .vtxvn-tag-header .woocommerce-products-header__title {
	margin: 0;
	color: #fff;
	font-size: clamp(1.8rem, 3.4vw, 2.65rem);
	line-height: 1.05;
}

.vtxvn-tag-header__copy > p,
.woocommerce .vtxvn-tag-header .term-description {
	width: 100%;
	max-width: 760px;
	margin: 8px 0 0;
	color: #d5ecf6;
	font-size: 0.84rem;
	line-height: 1.55;
}

.vtxvn-tag-header__copy .term-description > :last-child {
	margin-bottom: 0;
}

.vtxvn-tag-header__count {
	position: relative;
	z-index: 1;
	display: flex;
	min-width: 126px;
	align-items: flex-end;
	flex-direction: column;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 13px;
	background: rgba(3, 43, 70, 0.22);
}

.vtxvn-tag-header__count strong {
	color: #fff;
	font-size: 1.55rem;
	line-height: 1;
}

.vtxvn-tag-header__count span {
	margin-top: 4px;
	color: #c8e8f5;
	font-size: 0.66rem;
}

.vtxvn-tag-filter {
	position: relative;
	top: auto;
	margin-bottom: 18px;
	padding: 16px;
	border-radius: 16px;
}

.vtxvn-tag-filter .vtxvn-category-filter-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 12px;
}

.vtxvn-tag-filter .vtxvn-category-filter-header small {
	display: block;
	margin-bottom: 3px;
	color: #198bbb;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.vtxvn-tag-filter .vtxvn-category-filter-header h2 {
	font-size: 1.08rem;
}

.vtxvn-tag-filter .vtxvn-category-filter-header p {
	margin: 0;
	color: #6c8293;
	font-size: 0.73rem;
}

.vtxvn-tag-filter .vtxvn-category-filter-panel {
	max-height: min(62vh, 500px);
	overflow-y: auto;
}

.vtxvn-tag-filter .vtxvn-category-filter-all-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 767px) {
	.vtxvn-tag-header {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 12px;
		padding: 18px;
		border-radius: 15px;
	}

	.vtxvn-tag-header__icon {
		width: 46px;
		height: 46px;
		border-radius: 13px;
	}

	.vtxvn-tag-header__icon .dashicons {
		width: 24px;
		height: 24px;
		font-size: 24px;
	}

	.woocommerce .vtxvn-tag-header .woocommerce-products-header__title {
		font-size: 1.75rem;
	}

	.vtxvn-tag-header__copy > p,
	.woocommerce .vtxvn-tag-header .term-description {
		grid-column: 1 / -1;
		font-size: 0.78rem;
	}

	.vtxvn-tag-header__count {
		grid-column: 1 / -1;
		align-items: center;
		justify-content: flex-start;
		flex-direction: row;
		gap: 6px;
		min-width: 0;
		padding: 7px 10px;
	}

	.vtxvn-tag-header__count strong {
		font-size: 1rem;
	}

	.vtxvn-tag-header__count span {
		margin-top: 0;
	}

	.vtxvn-tag-filter {
		padding: 13px;
	}

	.vtxvn-tag-filter .vtxvn-category-filter-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 5px;
	}

	.vtxvn-tag-filter .vtxvn-category-filter-groups {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: 4px;
		scrollbar-width: thin;
	}

	.vtxvn-tag-filter .vtxvn-category-filter-master,
	.vtxvn-tag-filter .vtxvn-category-filter-toggle {
		min-height: 38px;
		flex: 0 0 auto;
		padding: 7px 11px;
	}

	.vtxvn-tag-filter .vtxvn-category-filter-all-grid {
		grid-template-columns: 1fr;
	}
}
