/* Inlined component-base mixin */
*,
*::before,
*::after {
	box-sizing: border-box;
}

:host {
	display: block;
}

.button-group {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	background: var(--g-color-background-default);
	border-radius: var(--g-border-radius-md);
	min-width: fit-content;
	max-width: 100%;
	overflow: hidden;
}

.button-group ::slotted(grantcodes-button) {
	--button-border-radius-start: 0;
	--button-border-radius-end: 0;
}

.button-group ::slotted(grantcodes-button:first-child) {
	--button-border-radius-start: var(--g-border-radius-md);
}

.button-group ::slotted(grantcodes-button:last-child) {
	--button-border-radius-end: var(--g-border-radius-md);
}

.button-group ::slotted(grantcodes-button:focus-visible) {
	position: relative;
	z-index: 1;
}
