/*
 * ETheme-Block — tabs-content（内容 Tab）
 *
 * 结构：section（全宽）→ .etb-tabs-content__inner（标准宽度 1350px）
 *      → header / nav / panels（多个 tab 面板堆叠）
 * 风格：underline（默认）| pill（胶囊）| card（卡片）
 */

.etb-tabs-content {
	box-sizing: border-box;
	width: 100%;
	padding-block: var(--eth-section-space-y, 3rem);
}

.etb-tabs-content__inner {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--eth-container, 1350px);
	margin-inline: auto;
	padding-inline: var(--eth-section-space-x, 1.5rem);
}

/* ============================================================
 * 导航
 * ============================================================ */

.etb-tabs-content__nav {
	display: flex;
	flex-wrap: wrap;
	gap: var(--eth-space-2xs, 0.6rem);
	border-bottom: 1px solid var(--eth-border, rgba(0, 0, 0, 0.12));
}

/* 顶部布局：标签可随区块设置左、中、右或均分。 */
.etb-tabs-content--layout-top.etb-tabs-content--nav-left .etb-tabs-content__nav { justify-content: flex-start; }
.etb-tabs-content--layout-top.etb-tabs-content--nav-center .etb-tabs-content__nav { justify-content: center; }
.etb-tabs-content--layout-top.etb-tabs-content--nav-right .etb-tabs-content__nav { justify-content: flex-end; }
.etb-tabs-content--layout-top.etb-tabs-content--nav-stretch .etb-tabs-content__tab { flex: 1 1 0; }

.etb-tabs-content__nav-empty {
	padding: var(--eth-space-2xs, 0.6rem) 0;
	color: var(--eth-text-muted, #555);
}

.etb-tabs-content button.etb-tabs-content__tab {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4em;
	margin: 0;
	padding: 0.65em 1.2em;
	-webkit-appearance: none;
	appearance: none;
	font-family: inherit;
	font-size: var(--eth-fs-small, 0.9rem);
	font-weight: var(--eth-fw-semibold, 600);
	line-height: 1.2;
	color: var(--eth-text-muted, #555);
	text-align: center;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
	white-space: nowrap;
	border: 1px solid transparent;
	background: transparent;
	transition: color var(--eth-transition-s, 0.15s ease), background var(--eth-transition-s, 0.15s ease), border-color var(--eth-transition-s, 0.15s ease), box-shadow var(--eth-transition-s, 0.15s ease);
}

.etb-tabs-content button.etb-tabs-content__tab:hover,
.etb-tabs-content button.etb-tabs-content__tab:focus {
	background: transparent;
	color: var(--eth-primary, #4f46e5);
}

.etb-tabs-content button.etb-tabs-content__tab:focus-visible {
	outline: 2px solid var(--eth-primary, #4f46e5);
	outline-offset: 2px;
}

/* ============================================================
 * 面板
 * ============================================================ */

.etb-tabs-content__panel {
	display: none;
	margin-top: var(--eth-space-m, 1.5rem);
}

.etb-tabs-content__panel.is-active {
	display: block;
}

/* ============================================================
 * 风格 1：下划线（默认）
 * ============================================================ */

.etb-tabs-content.is-style-underline .etb-tabs-content__tab {
	border-bottom: 2px solid transparent;
	border-radius: 0;
	padding: 0.7em 0.35em;
	margin-bottom: -1px;
}

.etb-tabs-content.is-style-underline .etb-tabs-content__tab.is-active {
	background: transparent;
	color: var(--eth-primary, #4f46e5);
	border-bottom-color: var(--eth-primary, #4f46e5);
}

/* ============================================================
 * 风格 2：胶囊（pill）
 * ============================================================ */

.etb-tabs-content.is-style-pill .etb-tabs-content__nav {
	border-bottom: 0;
}

.etb-tabs-content.is-style-pill .etb-tabs-content__tab {
	border-radius: var(--eth-radius-full, 999rem);
	border: 1px solid var(--eth-border, rgba(0, 0, 0, 0.12));
	background: var(--eth-bg-surface, #fff);
}

.etb-tabs-content.is-style-pill .etb-tabs-content__tab.is-active {
	background: var(--eth-primary, #4f46e5);
	border-color: var(--eth-primary, #4f46e5);
	color: var(--eth-light, #fff);
}

.etb-tabs-content.is-style-pill button.etb-tabs-content__tab:not(.is-active):hover,
.etb-tabs-content.is-style-pill button.etb-tabs-content__tab:not(.is-active):focus {
	background: var(--eth-bg-muted, #f5f5f7);
	color: var(--eth-primary, #4f46e5);
}

.etb-tabs-content.is-style-pill button.etb-tabs-content__tab.is-active:hover,
.etb-tabs-content.is-style-pill button.etb-tabs-content__tab.is-active:focus,
.etb-tabs-content.is-style-pill button.etb-tabs-content__tab.is-active:active {
	background: var(--eth-primary, #4f46e5);
	border-color: var(--eth-primary, #4f46e5);
	color: var(--eth-light, #fff);
}

/* ============================================================
 * 风格 3：卡片（card）
 * ============================================================ */

.etb-tabs-content.is-style-card .etb-tabs-content__nav {
	border-bottom: 0;
}

.etb-tabs-content.is-style-card .etb-tabs-content__tab {
	border: 1px solid var(--eth-border, rgba(0, 0, 0, 0.12));
	border-radius: var(--eth-radius-m, 0.8rem);
	background: var(--eth-bg-surface, #fff);
	box-shadow: var(--eth-shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.06));
}

.etb-tabs-content.is-style-card .etb-tabs-content__tab.is-active {
	background: var(--eth-bg-surface, #fff);
	border-color: var(--eth-primary, #4f46e5);
	color: var(--eth-primary, #4f46e5);
	box-shadow: var(--eth-shadow-s, 0 2px 6px rgba(0, 0, 0, 0.08));
}

.etb-tabs-content.is-style-card button.etb-tabs-content__tab:hover,
.etb-tabs-content.is-style-card button.etb-tabs-content__tab:focus,
.etb-tabs-content.is-style-card button.etb-tabs-content__tab:active {
	background: var(--eth-bg-surface, #fff);
	color: var(--eth-primary, #4f46e5);
}

/* ============================================================
 * 左右布局（标签在左）：inner 两列 grid，总宽 1350
 * ============================================================ */

.etb-tabs-content--layout-left .etb-tabs-content__inner {
	display: grid;
	grid-template-columns: minmax(0, 240px) minmax(0, 1fr);
	grid-template-areas:
		"header header"
		"nav panel";
	gap: var(--eth-space-m, 1.5rem);
}

.etb-tabs-content--layout-left .etb-tabs-content__header {
	grid-area: header;
}

.etb-tabs-content--layout-left .etb-tabs-content__nav {
	grid-area: nav;
	flex-direction: column;
	align-items: stretch;
	border-bottom: 0;
	border-right: 1px solid var(--eth-border, rgba(0, 0, 0, 0.12));
}

.etb-tabs-content--layout-left .etb-tabs-content__panel {
	grid-area: panel;
	margin-top: 0;
}

/* 左右布局：标签垂直对齐 */
.etb-tabs-content--layout-left.etb-tabs-content--navv-top .etb-tabs-content__nav {
	justify-content: flex-start;
}

.etb-tabs-content--layout-left.etb-tabs-content--navv-center .etb-tabs-content__nav {
	justify-content: center;
}

.etb-tabs-content--layout-left.etb-tabs-content--navv-stretch .etb-tabs-content__tab {
	width: 100%;
}

/* 左右布局下 styles 的 tab 修正 */
.etb-tabs-content--layout-left.is-style-underline .etb-tabs-content__tab {
	border-bottom: 0;
	border-right: 2px solid transparent;
	margin-bottom: 0;
	margin-right: -1px;
}

.etb-tabs-content--layout-left.is-style-underline .etb-tabs-content__tab.is-active {
	border-bottom: 0;
	border-right-color: var(--eth-primary, #4f46e5);
}

/* ============================================================
 * 响应式
 * ============================================================ */

@media (max-width: 992px) {
	.etb-tabs-content--layout-left .etb-tabs-content__inner {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"header"
			"nav"
			"panel";
	}

	.etb-tabs-content--layout-left .etb-tabs-content__nav {
		flex-direction: row;
		flex-wrap: wrap;
		border-right: 0;
		border-bottom: 1px solid var(--eth-border, rgba(0, 0, 0, 0.12));
	}

	.etb-tabs-content--layout-left.is-style-underline .etb-tabs-content__tab {
		border-right: 0;
		border-bottom: 2px solid transparent;
	}

	.etb-tabs-content--layout-left.is-style-underline .etb-tabs-content__tab.is-active {
		border-right: 0;
		border-bottom-color: var(--eth-primary, #4f46e5);
	}
}

@media (max-width: 600px) {
	.etb-tabs-content__nav {
		gap: var(--eth-space-2xs, 0.6rem);
	}

	.etb-tabs-content__tab {
		padding: 0.55em 1em;
	}
}
