[class*="square-"] {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
}

@each $screen in map-keys($tab-screen) {
    @include media-screen($screen) {
        $infix: infix-elt($screen, $tab-screen);

        @each $size in $tab-sizing-px {
            .#{$infix}square-#{$size} {
                font-size: rem($size / 2);
                padding: 0 !important;
                width: #{$size}px !important;
                height: #{$size}px !important;
            }
        }

        @each $size in $tab-sizing-per {
            $value: if($size == auto, auto, #{$size+"%"});

            .#{$infix}w-#{$size} {
                width: $value !important;
            }

            .#{$infix}h-#{$size} {
                height: $value !important;
            }

            @if $size == 100 {
                .#{$infix}min-w-#{$size} {
                    max-width: $value !important;
                }

                .#{$infix}max-h-#{$size} {
                    max-height: $value !important;
                }

                .#{$infix}min-vw-#{$size} {
                    min-width: 100vw !important;
                }

                .#{$infix}min-vh-#{$size} {
                    min-height: 100vh !important;
                }

                .#{$infix}vw-#{$size} {
                    width: 100vw !important;
                }

                .#{$infix}vh-#{$size} {
                    height: 100vh !important;
                }
            }
        }
    }
}