@use '@lucca-front/scss/src/commons/config';
@use '@lucca-front/scss/src/commons/utils/media';

@mixin layoutFixed {
	table-layout: fixed;
}

@mixin layoutFixedWithBreakpoint {
	@each $breakpoint, $value in config.$breakpoints {
		@include media.min($breakpoint) {
			&.mod-layoutFixedAtMediaMin#{$breakpoint} {
				table-layout: fixed;
			}
		}
	}
}

@mixin layoutFixedCells {
	.table-head-row-cell,
	.table-body-row-cell,
	.table-foot-row-cell {
		--cell-width: var(--table-layoutFixed-width);
	}

	&.mod-layoutFixed {
		.table-head-row-cell,
		.table-body-row-cell,
		.table-foot-row-cell {
			@include cellInlineSize;
		}
	}

	@each $breakpoint, $value in config.$breakpoints {
		@include media.min($breakpoint) {
			&.mod-layoutFixedAtMediaMin#{$breakpoint} {
				.table-head-row-cell,
				.table-body-row-cell,
				.table-foot-row-cell {
					@include cellInlineSize;
				}
			}
		}
	}
}

@mixin cellInlineSize {
	min-inline-size: var(--cell-width, auto);
	inline-size: var(--cell-width, auto);
}
