.#{$ns}InputGroup { display: inline-flex; flex-wrap: nowrap; &.#{$ns}Form-control--sizeXs, &.#{$ns}Form-control--sizeSm, &.#{$ns}Form-control--sizeMd, &.#{$ns}Form-control--sizeLg { display: inline-flex; } &-addOn, & .#{$ns}Form-control { display: inline-block; white-space: nowrap; } &-addOn { background: $InputGroup-addOn-bg; border: $InputGroup-addOn-borderWidth solid $InputGroup-addOn-borderColor; line-height: $InputGroup-height - $InputGroup-paddingY * 2 - $InputGroup-addOn-borderWidth * 2; height: $InputGroup-height; box-sizing: border-box; padding: $InputGroup-paddingY $InputGroup-paddingX; &:not(:last-child) { border-right: 0; } &:first-child { @if $InputGroup-addOn-borderRadius { border-top-left-radius: $InputGroup-addOn-borderRadius; border-bottom-left-radius: $InputGroup-addOn-borderRadius; } } &:last-child { @if $InputGroup-addOn-borderRadius { border-top-right-radius: $InputGroup-addOn-borderRadius; border-bottom-right-radius: $InputGroup-addOn-borderRadius; } } } &-btn { .#{$ns}Button { border-radius: 0; border: $InputGroup-button-borderWidth solid $InputGroup-button-borderColor; } &:not(:last-child) .#{$ns}Button { border-right: 0; } &:first-child .#{$ns}Button { @if $InputGroup-button-borderRadius { border-top-left-radius: $InputGroup-button-borderRadius; border-bottom-left-radius: $InputGroup-button-borderRadius; } } &:last-child .#{$ns}Button { @if $InputGroup-button-borderRadius { border-top-right-radius: $InputGroup-button-borderRadius; border-bottom-right-radius: $InputGroup-button-borderRadius; } } } .#{$ns}TextControl-input { flex-basis: 0; flex-grow: 1; display: inline-flex; &:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; } &:not(:last-child) { border-right-width: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; } } .#{$ns}SelectControl { @if $InputGroup-select-borderWidth { .#{$ns}Select { background-color: $InputGroup-select-bg; border: $InputGroup-select-borderWidth solid $InputGroup-select-borderColor; @if $InputGroup-select-color !=$Form-select-color { color: $InputGroup-select-color; } } &:not(:last-child) .#{$ns}Select { border-right: 0; } &:first-child .#{$ns}Select { @if $InputGroup-select-borderRadius { border-top-left-radius: $InputGroup-select-borderRadius; border-bottom-left-radius: $InputGroup-select-borderRadius; } } &:last-child .#{$ns}Select { @if $InputGroup-select-borderRadius { border-top-right-radius: $InputGroup-select-borderRadius; border-bottom-right-radius: $InputGroup-select-borderRadius; } } } &:not(:first-child) .#{$ns}Select { border-top-left-radius: 0; border-bottom-left-radius: 0; } &:not(:last-child) .#{$ns}Select { border-right-width: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; } } @if $InputGroup-select-arrowColor !=$Form-select-caret-iconColor { .#{$ns}Select-arrow { color: $InputGroup-select-arrowColor; } } &.is-focused { .#{$ns}InputGroup-addOn, .#{$ns}TextControl-input, .#{$ns}Select, .#{$ns}InputGroup-btn .#{$ns}Button { border-color: $InputGroup-addOn-onFocused-borderColor; } @if $InputGroup-select-onFocused-bg !=$InputGroup-select-bg { .#{$ns}Select { background-color: $InputGroup-select-onFocused-bg; } } @if $InputGroup-select-onFocused-color !=$InputGroup-select-color { .#{$ns}Select { color: $InputGroup-select-onFocused-color; } } @if $InputGroup-select-onFocused-arrowColor !=$Form-select-caret-iconColor { .#{$ns}Select-arrow { color: $InputGroup-select-onFocused-arrowColor; } } .#{$ns}InputGroup-addOn { color: $primary; } } } .#{$ns}InputGroup:not(.is-inline) { display: flex; }