.igz-component {
    display: block;
}

.no-select {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.allow-user-select {
    -webkit-touch-callout: initial;
    -webkit-user-select: initial;
    -khtml-user-select: initial;
    -moz-user-select: initial;
    -ms-user-select: initial;
    user-select: initial;
}

.pull-right {
    float: right !important;
}

.pull-left {
    float: left !important;
}

.text-ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}

.no-text-ellipsis {
    white-space: inherit !important;
}

.align-items-center {
    display: flex;
    align-items: center;
}

.align-items-baseline {
    display: flex;
    align-items: baseline;
}

.justify-content-center {
    display: flex;
    justify-content: center;
}

.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.flex-none {
    flex: 0 0 auto;
}

.flex-auto {
    flex: 1 1 auto;
}

.default-cursor {
    cursor: default !important;
}

.pointer-cursor {
    cursor: pointer !important;
}

.capitalized {
    text-transform: capitalize !important;
}

.uppercase {
    text-transform: uppercase !important;
}

.inactive {
    .helpers-color-set();

    color: @inactive-color;
    cursor: pointer;
    opacity: .5;
}

.disable-behavior {
    pointer-events: none;
}

.no-padding {
    padding: 0 !important;
}

.no-margin {
    margin: 0 !important;
}

.text-left {
    text-align: left !important;
}

.text-centered {
    text-align: center !important;
}

.text-right {
    text-align: right !important;
}

.overflow-hidden {
    overflow: hidden;
}

[data-ng-click] {
    cursor: pointer;
}

.rotate-45 {
    display: inline-block;
    line-height: 1;
    transform: rotate(45deg);
}

.asterisk:after {
    .helpers-color-set();

    color: @asterisk-after-color;
    content: " *";
}

.translate3d-anti-blur-fix {
    filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='0');
    -ms-filter: blur(0px);
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
}

.triangle-arrow(down; @color; @w; @h) {
    border-top: @h solid @color;
    border-bottom: none;
    border-left: @w solid transparent !important;
    border-right: @w solid transparent !important;;
}

.triangle-arrow(up; @color; @w; @h) {
    border-top: none;
    border-bottom: @h solid @color;
    border-left: @w solid transparent !important;;
    border-right: @w solid transparent !important;;
}

.triangle-arrow(left; @color; @w; @h) {
    border-top: @h solid transparent !important;;
    border-bottom: @h solid transparent !important;;
    border-left: @w solid @color;
    border-right: none;
}

.triangle-arrow(right; @color; @w; @h) {
    border-top: @h solid transparent !important;;
    border-bottom: @h solid transparent !important;;
    border-left: none;
    border-right: @w solid @color;
}

.button(@btn-color; @btn-border-color; @btn-pressed-color) {
    background-color: @btn-color;
    border-color: @btn-border-color;

    &:active, &:hover {
        background-color: @btn-pressed-color;
        border-color: @btn-pressed-color;
    }

    &:focus {
        background-color: @btn-color;
        border-color: @btn-border-color;
    }

    &:active {
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

.clearfix() {
    &:before,
    &:after {
        content: " ";
        display: table;
    }
    &:after {
        clear: both;
    }
}

.link {
    .helpers-color-set();

    color: @link-color;
    text-decoration: none;

    &:hover, &:focus, &:active {
        color: @link-hover-active-focus-color;
        text-decoration: none;
        outline: none;
    }

    &.disabled {
        color: @link-disabled-color;
        pointer-events: none;
    }
}

.external-link-icon {
    .helpers-color-set();
    .igz-icon-external-link-after();

    cursor: pointer;

    &:after {
        color: @external-link-icon-after-color;
        font-size: 9px;
        margin-left: 8px;
    }
}
