UNPKG

@studiocms/ui

Version:

The UI library for StudioCMS. Includes the layouts & components we use to build StudioCMS.

164 lines (163 loc) 4.16 kB
.sui-search-select-label { width: fit-content; display: flex; flex-direction: column; gap: 0.25rem; min-width: 200px; position: relative; } .sui-search-select-label.full { width: 100%; } .sui-search-select-label.disabled { opacity: 0.5; pointer-events: none; color: hsl(var(--text-muted)); } .label { font-size: 14px; } .req-star { color: hsl(var(--danger-base)); font-weight: 700; } .sui-search-select-dropdown-container { width: 100%; display: flex; flex-direction: column; gap: 0.25rem; position: relative; height: fit-content; } .sui-search-select-dropdown { position: absolute; width: 100%; top: calc(100% + 0.25rem); left: 0; display: none; max-height: 300px; border: 1px solid hsl(var(--border)); border-radius: var(--radius-md); background-color: hsl(var(--background-step-2)); z-index: 90; box-shadow: 0px 4px 8px hsl(var(--shadow), 0.5); overflow: hidden; } .sui-search-select-dropdown-list { width: 100%; list-style: none; margin: 0; padding: 0; flex-direction: column; overflow-y: auto; scrollbar-color: hsl(var(--border)) hsl(var(--background-step-2)); } .sui-search-select-dropdown.above { top: auto; bottom: calc(100% - 1.5rem); } .sui-search-select-option, .empty-search-results { padding: 0.5rem; cursor: pointer; font-size: 0.975em; transition: all 0.15s ease; } .empty-search-results:hover { background-color: hsl(var(--background-step-2)); cursor: default; } .sui-search-select-option.disabled { pointer-events: none; color: hsl(var(--text-muted)); } .sui-search-select-option:hover, .sui-search-select-option.focused { background-color: hsl(var(--background-step-3)); } .sui-search-select-label[data-multiple=true] .sui-search-select-option.selected:hover, .sui-search-select-label[data-multiple=true] .sui-search-select-option.selected:focus, .sui-search-select-label[data-multiple=true] .sui-search-select-option.selected.focused { background-color: hsl(var(--primary-hover)); } .sui-search-select-option.selected { background-color: hsl(var(--primary-base)); color: hsl(var(--text-inverted)); cursor: default; } .sui-search-select-label[data-multiple=true] .sui-search-select-option.selected { cursor: pointer; } .sui-hidden-select { height: 0; width: 0; border: none; outline: none; position: absolute; background-color: transparent; pointer-events: none; opacity: 0; } .sui-search-input-wrapper { width: 100%; position: relative; height: fit-content; cursor: pointer; } .sui-search-input-wrapper input { padding-right: 2.5rem; } .sui-search-select-indicator { position: absolute; bottom: .675rem; right: .675rem; } .sui-search-input-wrapper:has(input:focus) + .sui-search-select-dropdown { display: flex; } .sui-search-select-dropdown.active, .sui-search-select-dropdown:has(> li:active) { display: flex; } .sui-search-select-badge-container { width: 100%; display: flex; flex-wrap: wrap; flex-direction: row; gap: 0.5rem; margin-top: 0.5rem; } .sui-search-select-label:has(.sui-search-select-max-span) .sui-search-select-badge-container { margin-top: 0rem; } .sui-search-select-badge-container .sui-search-select-badge.sui-badge { white-space: nowrap; cursor: default; position: relative; padding-right: 2rem; border-block: 1.5px solid rgba(0, 0, 0, 0); } .sui-search-select-badge-container .sui-search-select-badge.sui-badge svg { position: absolute; right: 0.25rem; padding: 4px; height: 20px; width: 20px; aspect-ratio: 1 / 1; border-radius: 999px; cursor: pointer; outline: 1px solid hsla(var(--border), 0); transition: background-color 0.15s ease, outline 0.15s ease; } .sui-search-select-badge-container .sui-search-select-badge.sui-badge svg:hover { background-color: hsla(100, 100%, 95%, 0.2); } .sui-search-select-badge-container .sui-search-select-badge.sui-badge svg:active, .sui-search-select-badge-container .sui-search-select-badge.sui-badge svg:focus { background-color: hsla(100, 100%, 95%, 0.2); outline: 1px solid hsl(var(--border)); } .sui-search-select-max-span { font-size: 0.875em; color: hsl(var(--text-muted)); }