Files

212 lines
3.4 KiB
CSS

.trigger {
@media (hover: hover) {
&:hover {
background: var(--gray-a3);
}
}
&:active {
background: var(--gray-a3);
}
&[data-popup-open] {
background: var(--gray-a3);
}
&:focus-visible {
outline: 2px solid var(--gray-100);
outline-offset: -1px;
}
}
.backdrop {
position: fixed;
inset: 0;
}
.positioner {
z-index: 2147483647;
outline: 0;
}
.popup {
box-sizing: border-box;
min-width: 200px;
color: var(--gray-11);
background: var(--gray-1);
border-radius: 8px;
box-shadow: var(--shadow-3);
transform-origin: var(--transform-origin);
transition: all 200ms ease;
&[data-starting-style],
&[data-ending-style] {
opacity: 0;
transform: scale(0.9);
}
}
.arrow {
display: flex;
&[data-side="top"] {
bottom: -8px;
rotate: 180deg;
}
&[data-side="bottom"] {
top: -8px;
rotate: 0deg;
}
&[data-side="left"] {
right: -13px;
rotate: 90deg;
}
&[data-side="right"] {
left: -13px;
rotate: -90deg;
}
}
.item {
position: relative;
z-index: 1;
display: flex;
gap: 8px;
align-items: center;
justify-content: space-between;
height: 32px;
padding-right: 12px;
padding-left: 14px;
overflow: hidden;
text-overflow: ellipsis;
font-size: 13px;
font-weight: var(--font-weight-normal);
color: var(--gray-10);
letter-spacing: var(--font-letter-spacing-13px);
white-space: nowrap;
user-select: none;
transition: all 200ms ease;
&[data-highlighted],
&[data-checked] {
color: var(--gray-12);
}
&[data-highlighted]::before {
position: absolute;
inset-block: 0;
inset-inline: 4px;
z-index: -1;
content: "";
background: var(--gray-3);
border-radius: 6px;
}
&[data-disabled] {
cursor: not-allowed;
opacity: 0.5;
}
}
.itemRich {
position: relative;
z-index: 1;
display: flex;
gap: 10px;
align-items: flex-start;
padding: 8px 12px 8px 14px;
overflow: hidden;
user-select: none;
transition: all 200ms ease;
&[data-highlighted]::before {
position: absolute;
inset-block: 4px;
inset-inline: 4px;
z-index: -1;
content: "";
background: var(--gray-3);
border-radius: 6px;
}
&[data-disabled] {
cursor: not-allowed;
opacity: 0.5;
}
}
.itemIcon {
flex-shrink: 0;
width: 16px;
height: 16px;
margin-top: 2px;
color: var(--gray-10);
}
.itemContent {
display: flex;
flex: 1;
flex-direction: column;
gap: 1px;
min-width: 0;
}
.itemTitle {
display: flex;
gap: 4px;
align-items: center;
font-size: 13px;
font-weight: var(--font-weight-normal);
color: var(--gray-11);
letter-spacing: var(--font-letter-spacing-13px);
transition: color 200ms ease;
[data-highlighted] & {
color: var(--gray-12);
}
}
.itemDescription {
font-size: 13px;
font-weight: var(--font-weight-normal);
line-height: 16px;
color: var(--gray-9);
letter-spacing: var(--font-letter-spacing-12px);
}
.itemExternal {
flex-shrink: 0;
width: 12px;
height: 12px;
color: var(--gray-8);
}
.separator {
height: 1px;
/* margin-block: 6px; */
background: var(--gray-a4);
}
.label {
padding-block: 8px;
padding-inline: 12px;
font-size: 12px;
font-weight: var(--font-weight-medium);
line-height: 16px;
color: var(--gray-10);
user-select: none;
}
.indicator {
display: flex;
align-items: center;
justify-content: center;
&[data-unchecked] {
display: none;
}
}