/* for debugging */ // *:focus { // outline: 1px red solid !important; // } @keyframes react-widgets-autofill-start { from { /**/ } to { /**/ } } @keyframes react-widgets-autofill-cancel { from { /**/ } to { /**/ } } .rw-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } .rw-widget { .border-box(); border: none; color: @text-color; font-size: @font-size; font-family: @font-family; outline: none; position: relative; // ensure that the "chrome" is the same width as the actual container & > .rw-widget-container { width: 100%; margin: 0; } } .rw-widget-container { background-color: @input-bg; border: @input-border @input-border-width solid; border-radius: @input-border-radius; &.rw-state-focus, .rw-state-focus > & { &, &:hover { background-color: @input-bg-focus; border-color: @input-border-focus; box-shadow: @input-focus-box-shadow; } } &.rw-state-readonly, .rw-state-readonly > & { cursor: not-allowed; } &.rw-state-disabled, .rw-state-disabled > &, fieldset[disabled] & { &, &:hover, &:active { box-shadow: none; .state-disabled(); } } } .rw-widget-picker { position: relative; overflow: hidden; border-collapse: separate; display: inline-table; height: @input-height; & > * { position: relative; border: none; outline: none; width: 100%; height: 100%; display: table-cell; } & > .rw-select { width: 1%; white-space: nowrap; } .rw-open > & { .border-bottom-radius(0); } .rw-open-up > & { .border-top-radius(0); } fieldset[disabled] &, .rw-state-disabled > & { background-color: @input-bg-disabled; } } .rw-select { cursor: pointer; & > * { width: 1.9em; height: 100%; } .rw-state-readonly &, .rw-state-disabled & { cursor: not-allowed; } } .rw-select-bordered { .make-btn-state(@select-btn-bg-hover); border: none; border-left: @input-border 1px solid; .rw-rtl & { border-right: @input-border 1px solid; border-left: none; } } .rw-rtl { direction: rtl; } .rw-input-reset { .placeholder(); outline: 0; } .rw-input { &:extend(.rw-input-reset); color: @input-color; padding: 0 @input-padding-horizontal; background-color: @input-bg; &[type='text']::-ms-clear { display: none; } &[disabled], fieldset[disabled] & { .state-disabled(); opacity: 1; background-color: @input-bg-disabled; border-color: @input-border-disabled; } &[readonly] { cursor: not-allowed; } } .rw-i.rw-loading { display: block; background: @img-busy no-repeat center; min-width: 16px; width: 1.9em; height: 16px; &:before { content: ''; } } .rw-placeholder { color: @input-color-placeholder; } // https://github.com/klarna/ui/blob/master/Field/styles.scss .rw-detect-autofill { &:-webkit-autofill { animation-name: react-widgets-autofill-start; // Make the backgound color become yellow _really slowly_ transition: background-color 50000s ease-in-out 0s; } &:not(:-webkit-autofill) { animation-name: react-widgets-autofill-cancel; } } .rw-webkit-autofill .rw-widget-container, .rw-input:-webkit-autofill { background-color: @input-bg-color-autofill !important; background-image: none !important; color: @input-color-autofill !important; } //input inset .rw-widget-input { box-shadow: @input-box-shadow; } .rw-widget-input.rw-state-focus { box-shadow: ~'@{input-focus-box-shadow}, @{input-box-shadow}'; }