UNPKG

vuestic-ui

Version:
234 lines 7.22 kB
:root, :host { --va-input-wrapper-width: var(--va-form-element-default-width); --va-input-wrapper-color: var(--va-primary); --va-input-wrapper-background: var(--va-background-element, #f5f9fb); --va-input-wrapper-background-opacity: 1; --va-input-wrapper-border-width: var(--va-form-element-border-width); --va-input-wrapper-border-color: var(--va-background-border); --va-input-wrapper-border-radius: var(--va-form-element-border-radius); --va-input-wrapper-min-width: var(--va-form-element-min-width); --va-input-wrapper-display: inline-block; --va-input-wrapper-cursor: text; --va-input-wrapper-min-height: 36px; --va-input-wrapper-validation-background-opacity: 0.1; /* Counter container */ --va-input-wrapper-counter-line-height: 1.5; --va-input-wrapper-counter-font-size: 0.8rem; --va-input-wrapper-counter-color: var(--va-secondary); /* Content Wrapper */ --va-input-wrapper-horizontal-padding: 0.5rem; --va-input-wrapper-items-gap: 0.5rem; /* Validation */ --va-input-wrapper-success-background: var(--va-input-success-color); --va-input-wrapper-error-background: var(--va-input-error-color); } .va-input-wrapper { --va-input-wrapper-background: var(--va-background-computed); --va-input-wrapper-color: var(--va-color-computed); --va-input-wrapper-text-color: var(--va-text-color-computed); cursor: var(--va-input-wrapper-cursor); font-family: var(--va-font-family); display: inline-block; flex-direction: column; vertical-align: middle; min-width: auto; max-width: 100%; flex-grow: 0; flex-shrink: 1; } .va-input-wrapper__fieldset { border: none; } .va-input-wrapper__size-keeper { width: var(--va-input-wrapper-width); min-width: 100%; max-width: 100%; display: flex; flex-direction: column; height: 100%; } .va-input-wrapper__container { display: flex; align-items: center; gap: var(--va-input-content-items-gap); flex: 1; } .va-input-wrapper__field { position: relative; display: flex; align-items: center; flex: 1; min-height: var(--va-input-wrapper-min-height); border-color: var(--va-input-wrapper-border-color); border-style: solid; border-width: var(--va-input-wrapper-border-width); border-radius: var(--va-input-wrapper-border-radius); padding: 0 var(--va-input-wrapper-horizontal-padding); gap: var(--va-input-wrapper-items-gap); z-index: 0; overflow: hidden; color: var(--va-text-color-computed); align-self: stretch; z-index: 0; } .va-input-wrapper__field::after { position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ""; background: var(--va-input-wrapper-background); opacity: var(--va-input-wrapper-background-opacity); z-index: -1; transition: all 0.3s ease-in-out; } .va-input-wrapper__field input, .va-input-wrapper__field textarea { color: inherit; } .va-input-wrapper > .va-message-list { margin-top: 2px; } .va-input-wrapper__prepend-inner, .va-input-wrapper__append-inner { display: flex; justify-content: center; align-content: center; align-items: center; } .va-input-wrapper__text { width: 100%; position: relative; min-height: var(--va-input-line-height); display: flex; align-items: center; align-self: stretch; overflow: hidden; caret-color: var(--va-input-wrapper-text-color); color: var(--va-input-wrapper-text-color); } .va-input-wrapper__text input::-moz-placeholder, .va-input-wrapper__text textarea::-moz-placeholder { color: inherit; opacity: 0.5; } .va-input-wrapper__text input::placeholder, .va-input-wrapper__text textarea::placeholder { color: inherit; opacity: 0.5; } .va-input-wrapper__text input { scrollbar-color: var(--va-input-scroll-color) transparent; scrollbar-width: thin; transition: scrollbar-color 0.3s ease-in-out; width: 100%; min-height: var(--va-input-line-height); background-color: transparent; border-style: none; outline: none; line-height: var(--va-input-line-height); font-size: var(--va-input-font-size); font-family: inherit; font-weight: var(--va-input-font-weight); font-style: var(--va-input-font-style); font-stretch: var(--va-input-font-stretch); letter-spacing: var(--va-input-letter-spacing); cursor: inherit; align-self: stretch; } .va-input-wrapper__text input::-webkit-scrollbar { width: 4px; height: 4px; } .va-input-wrapper__text input::-webkit-scrollbar-track { box-shadow: none; border-radius: 10px; } .va-input-wrapper__text input::-webkit-scrollbar-thumb { background: var(--va-input-scroll-color); opacity: 0.3; border-radius: 2px; -webkit-transition: background 0.3s ease-in-out; transition: background 0.3s ease-in-out; } .va-input-wrapper__icons { display: flex; align-items: center; justify-content: center; } .va-input-wrapper__icons__reset:focus { outline: 2px solid var(--va-focus) !important; border-radius: 2px; } .va-input-wrapper__counter-wrapper { display: flex; align-items: center; justify-content: flex-end; color: var(--va-input-wrapper-counter-color); font-size: var(--va-input-wrapper-counter-font-size); line-height: var(--va-input-wrapper-counter-line-height); } .va-input-wrapper__label { max-width: 100%; width: 100%; display: block; } .va-input-wrapper__label--inner { position: absolute; left: 0; top: 0; padding-top: 1px; } .va-input-wrapper__label--outer { margin-bottom: 2px; } .va-input-wrapper--labeled-inner .va-input-wrapper__text { padding-top: 12px; box-sizing: content-box; } .va-input-wrapper--labeled-inner .va-input-wrapper__field { height: calc(var(--va-input-wrapper-min-height) - var(--va-input-wrapper-border-width) * 2); } .va-input-wrapper--labeled-inner textarea { margin-top: 0; } .va-input-wrapper--solid { --va-input-wrapper-border-color: var(--va-input-color); } .va-input-wrapper--bordered .va-input-wrapper__field { border-top-left-radius: var(--va-input-wrapper-border-radius); border-top-right-radius: var(--va-input-wrapper-border-radius); border-bottom-left-radius: 0; border-bottom-right-radius: 0; border-left-width: 0; border-right-width: 0; border-top-width: 0; } .va-input-wrapper--bordered .va-input-wrapper__field::after { bottom: 0; border-color: var(--va-input-wrapper-border-color); border-bottom-style: solid; } .va-input-wrapper--error { --va-input-wrapper-border-color: var(--va-input-wrapper-error-background, var(--va-danger)); --va-input-wrapper-background: var(--va-input-wrapper-error-background, var(--va-danger)); --va-input-wrapper-background-opacity: var(--va-input-wrapper-validation-background-opacity); } .va-input-wrapper--success { --va-input-wrapper-border-color: var(--va-input-wrapper-success-background, var(--va-success)); --va-input-wrapper-background: var(--va-input-wrapper-success-background, var(--va-success)); --va-input-wrapper-background-opacity: var(--va-input-wrapper-validation-background-opacity); } .va-input-wrapper--focused { --va-input-wrapper-border-color: var(--va-input-wrapper-color); } .va-input-wrapper--readonly { cursor: default; } .va-input-wrapper--disabled { cursor: default; opacity: 0.4; -webkit-user-select: none; -moz-user-select: none; user-select: none; }