@osui-input-number-class-prefix: osui-input-number-compact;
@osui-prefix: osui;

.@{osui-input-number-class-prefix} {
    &.@{ant-prefix}-input-group.@{ant-prefix}-input-group-compact {
        display: inline-block;
        width: auto;
    }

    &-input-number {
        max-width: ~"calc(100% - 60px)";
        border-color: var(--component-color-border);
        z-index: 1;

        &:hover,
        &:focus,
        &.@{ant-prefix}-input-number-focused {
            z-index: 2;
        }

        .@{ant-prefix}-input-number-input {
            text-align: center;
        }
    }

    &-minus-btn,
    &-plus-btn {
        font-size: 16px;

        &.@{ant-prefix}-btn .@{ant-prefix}-btn-icon {
            line-height: .125em;
        }

        &.@{osui-prefix}-button:not(.@{osui-prefix}-button-disabled) {
            color: var(--text-color-secondary);
            border-color: var(--component-color-border);

            &:hover {
                color: var(--icon-brand-color-hover);
                border-color: var(--brand-color-hover);
            }

            &:focus {
                color: var(--icon-brand-color-active);
                border-color: var(--brand-color-active);
                box-shadow: 0 0 0 1px var(--brand-color-light-active);
            }
        }

        &.@{ant-prefix}-btn.@{osui-prefix}-button-disabled {
            color: var(--text-color-disabled);
            border-color: var(--component-color-border);
            background: var(--component-color-grayB-disable);
        }

        &:hover,
        &:focus {
            z-index: 2;
        }
    }

    /* Chrome, Safari, Edge, Opera */
    input::-webkit-outer-spin-button,
    input::-webkit-inner-spin-button {
        margin: 0;
        -webkit-appearance: none;
    }

    /* Firefox */
    input[type=number] {
        -moz-appearance: textfield;
    }
}

.osui-input-number-tail-label {
    position: absolute;
    top: 25%;
    margin-left: 4px;
    color: var(--label-color);
}
