/**
 * DS Elements — Về tác giả
 */

.elementor-widget-ds-author-box {
	width: 100%;
	min-width: 0;
}

.ds-ab {
	--ds-ab-padding: var(--ds-space-6);
	--ds-ab-avatar: 72px;

	width: 100%;
	min-width: 0;
	padding: var(--ds-ab-padding);
	background: var(--ds-ab-bg, var(--ds-color-white));
	border: 1px solid var(--ds-ab-border, var(--ds-color-border));
	border-radius: var(--ds-ab-radius, var(--ds-radius-md));
}

.ds-ab *,
.ds-ab *::before,
.ds-ab *::after {
	box-sizing: border-box;
}

.ds-ab__heading {
	margin: 0 0 var(--ds-space-4);
	color: var(--ds-ab-heading-color, var(--ds-color-brand));
	font-size: var(--ds-fs-h4);
	font-weight: var(--ds-fw-bold);
	line-height: var(--ds-lh-h4);
}

/* Ảnh · chữ · icon. Cột chữ ăn hết chỗ thừa để dãy icon luôn dạt sang phải. */
.ds-ab__body {
	display: flex;
	align-items: center;
	gap: var(--ds-space-4);
	min-width: 0;
}

.ds-ab__avatar {
	flex: 0 0 auto;
	width: var(--ds-ab-avatar);
	height: var(--ds-ab-avatar);
}

.ds-ab__avatar img {
	width: 100%;
	height: 100%;
	display: block;
	border-radius: var(--ds-radius-pill);
	object-fit: cover;
	background: var(--ds-color-surface);
}

.ds-ab__text {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.ds-ab__name {
	color: var(--ds-ab-name-color, var(--ds-color-heading));
	font-size: var(--ds-fs-h4);
	font-weight: var(--ds-fw-bold);
	line-height: var(--ds-lh-tight);
}

.ds-ab__name a {
	color: inherit;
	text-decoration: none;
}

.ds-ab__name a:hover {
	color: var(--ds-color-brand-light);
}

.ds-ab__role,
.ds-ab__bio {
	margin: 0;
	color: var(--ds-ab-bio-color, var(--ds-color-body));
	font-size: var(--ds-fs-small);
	line-height: var(--ds-lh-body);
}

/* --- Dãy icon ----------------------------------------------------------- */

.ds-ab__links {
	flex: 0 0 auto;
	display: flex;
	gap: var(--ds-space-2);
}

.ds-ab__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;

	color: var(--ds-ab-icon-color, var(--ds-color-brand));
	border: 1px solid var(--ds-ab-icon-border, var(--ds-color-border));
	border-radius: var(--ds-radius-pill);
	text-decoration: none;
	transition: color var(--ds-transition), border-color var(--ds-transition);
}

.ds-ab__link:hover {
	color: var(--ds-color-brand-light);
	border-color: var(--ds-color-brand-light);
}

.ds-ab__link svg {
	width: 15px;
	height: 15px;
	fill: currentColor;
}

.ds-ab__link i {
	font-size: 15px;
	line-height: 1;
}

/* --- Màn nhỏ ------------------------------------------------------------ */

/* Ba cột ngang không còn vừa. Cho dãy icon chiếm trọn một dòng để nó tự rớt
   xuống dưới, còn ảnh và chữ vẫn đứng cạnh nhau ở dòng trên. */
@media (max-width: 767px) {
	.ds-ab__body {
		flex-wrap: wrap;
		align-items: flex-start;
	}

	.ds-ab__links {
		flex: 1 1 100%;
		justify-content: flex-start;
	}
}
