.elsaTabBlock {
	display: block;
	width: 100%;
	min-width: 0;
}

.elsaTabList {
	display: flex;
	align-items: stretch;
	gap: 2px;
	width: 100%;
}

.elsaTabButton {
	flex: 1 1 0;
	min-width: 0;
	min-height: 44px;
	padding: 8px 12px;
	border: 1px solid var(--elsa-field-tab-background-color, #aaa);
	border-bottom: 0;
	border-radius: 4px 4px 0 0;
	background: var(--elsa-button-default-bg, #d2d2d2);
	color: var(--elsa-button-default-color, #555);
	font: inherit;
	font-weight: 600;
	line-height: 1.4;
	cursor: pointer;
}

.elsaTabButton[aria-selected="true"] {
	background: var(--elsa-primary-color, #24333f);
	color: var(--elsa-primary-contrast, #fff);
}

.elsaTabButton:focus-visible {
	position: relative;
	z-index: 1;
	outline: 2px solid var(--elsa-primary-color, #24333f);
	outline-offset: 2px;
}

.elsaTabPanel {
	display: grid;
	gap: var(--elsa-block-spacing, 8px);
	min-width: 0;
	padding: 16px;
	border: 1px solid var(--elsa-field-tab-background-color, #aaa);
	border-radius: 0 0 4px 4px;
	background: var(--elsa-content-background, #fff);
}

.elsaTabPanel[hidden] {
	display: none;
}

@media (max-width: 640px) {
	.elsaTabButton {
		min-height: 48px;
		padding: 8px;
	}

	.elsaTabPanel {
		padding: 12px;
	}
}
