UNPKG

@ebay/skin

Version:

Skin - CSS modules that represent the brand eBay

200 lines (183 loc) 5.05 kB
:root { --input-default-height: 40px; --input-large-height: 48px; } .textbox { align-items: center; background-color: var( --textbox-background-color, var(--color-background-secondary) ); border-color: var(--textbox-border-color, var(--color-stroke-default)); border-radius: var(--textbox-border-radius, var(--border-radius-50)); border-style: solid; border-width: 1px; box-sizing: border-box; color: var( --textbox-foreground-color, var(--color-foreground-on-secondary) ); display: inline-flex; font-size: var(--font-size-default); gap: var(--spacing-100); overflow: hidden; position: relative; width: -moz-fit-content; width: fit-content; } .textbox button.icon-btn { background-color: initial; padding: 0; } .textbox--focus, .textbox:has(> .textbox__control:focus):not(.textbox--readonly):not( :has(> .textbox__control[readonly]) ) { background-color: var( --textbox-focus-background-color, var(--color-background-primary) ); border-color: var(--textbox-focus-border-color, var(--color-stroke-strong)); box-shadow: 0 0 0 1px var(--color-stroke-strong); } .textbox--readonly, .textbox:has(> .textbox__control[readonly]) { background-color: initial; border: none; } .textbox--disabled, .textbox:has(> .textbox__control[disabled]) { border-color: var( --textbox-disabled-border-color, var(--color-background-disabled) ); color: var( --textbox-disabled-foreground-color, var(--color-foreground-disabled) ); } .textbox--invalid, .textbox:has(> .textbox__control[aria-invalid="true"]) { border-color: var( --textbox-invalid-border-color, var(--color-stroke-attention) ); } .textbox__control { background-color: initial; border: none; box-sizing: border-box; color: inherit; } textarea.textbox__control { font-family: inherit; min-height: 200px; overflow: auto; padding: var(--spacing-200); resize: vertical; vertical-align: middle; } input.textbox__control { font-family: inherit; padding: 0; vertical-align: middle; } input.textbox__control:first-child:not([readonly]) { padding-inline-start: var(--spacing-200); } input.textbox__control:last-child:not([readonly]) { padding-inline-end: var(--spacing-200); } input.textbox__control, textarea.textbox__control { -webkit-appearance: none; -moz-appearance: none; appearance: none; flex-grow: 1; font-size: 1em; height: 40px; margin: 0; outline: none; } input.textbox__control[disabled], textarea.textbox__control[disabled] { border-color: var( --textbox-disabled-border-color, var(--color-background-disabled) ); color: var( --textbox-disabled-foreground-color, var(--color-foreground-disabled) ); } input.textbox__control[disabled]::-webkit-input-placeholder, textarea.textbox__control[disabled]::-webkit-input-placeholder { color: var( --textbox-disabled-placeholder-color, var(--color-foreground-ghost) ); } input.textbox__control[disabled]::-moz-placeholder, textarea.textbox__control[disabled]::-moz-placeholder { color: var( --textbox-disabled-placeholder-color, var(--color-foreground-ghost) ); } input.textbox__control[disabled]:-ms-input-placeholder, textarea.textbox__control[disabled]:-ms-input-placeholder { color: var( --textbox-disabled-placeholder-color, var(--color-foreground-ghost) ); } input.textbox__control[aria-invalid="true"], textarea.textbox__control[aria-invalid="true"] { border-color: var( --textbox-invalid-foreground-color, var(--color-stroke-attention) ); } input.textbox__control::placeholder, textarea.textbox__control::placeholder { color: var(--textbox-placeholder-color, var(--color-foreground-secondary)); font-weight: 200; opacity: 1; } input.textbox__control { height: calc(var(--input-default-height) - 2px); } .textbox--large input.textbox__control { height: calc(var(--input-large-height) - 2px); } .textbox .icon-btn > svg, .textbox > svg { color: var(--textbox-icon-color, var(--color-foreground-secondary)); display: inline-flex; height: 1lh; pointer-events: none; width: 14px; fill: var(--textbox-icon-color, var(--color-foreground-secondary)); } .textbox > span:first-child, .textbox > svg:first-child { margin-inline-start: var(--spacing-200); } .textbox > span:last-child, .textbox > svg:last-child { margin-inline-end: var(--spacing-200); } .textbox .icon-btn:last-child { margin-inline-start: calc(var(--spacing-100) * -1); } .textbox .icon-btn:first-child { margin-inline-end: calc(var(--spacing-100) * -1); } input.textbox__control[readonly]:focus, textarea.textbox__control[readonly]:focus { text-decoration: underline; } .textbox--fluid, .textbox--fluid .textbox__control { width: 100%; }