@layer fc.components {
.fc-select {
display: inline-flex;
align-items: center;
justify-content: space-between;
gap: var(--fc-space-2);
inline-size: 100%;
min-block-size: var(--fc-select-block-size, var(--fc-size-target-comfortable));
padding-block: var(--fc-space-1-5);
padding-inline: var(--fc-space-3);
font-family: var(--fc-font-family-sans);
font-size: var(--fc-font-size-sm);
line-height: var(--fc-line-height-snug);
text-align: start;
color: var(--fc-color-text-default);
background-color: var(--fc-color-bg-surface);
border: var(--fc-border-width-thin) solid var(--fc-color-border-interactive);
border-radius: var(--fc-radius-lg);
cursor: pointer;
transition:
border-color var(--fc-duration-fast) var(--fc-easing-standard),
box-shadow var(--fc-duration-fast) var(--fc-easing-standard);
}
.fc-select:hover:not([aria-disabled="true"], [aria-expanded="true"]) {
border-color: color-mix(in oklab, var(--fc-color-border-interactive), var(--fc-color-text-default) 40%);
}
.fc-select[aria-disabled="true"] {
color: var(--fc-color-disabled-fg);
background-color: var(--fc-color-disabled-bg);
border-color: var(--fc-color-border-default);
cursor: not-allowed;
}
.fc-select:focus-visible {
outline: var(--fc-border-width-focus) solid var(--fc-color-focus-ring);
outline-offset: var(--fc-space-0-5);
}
.fc-select[aria-expanded="true"] {
border-color: var(--fc-color-accent-border);
background-color: var(--fc-color-bg-raised);
box-shadow: 0 0 0 var(--fc-space-1) var(--fc-color-accent-bg-subtle);
}
.fc-select__value {
min-inline-size: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.fc-select__value[data-fc-placeholder="true"] {
color: var(--fc-color-text-muted);
}
.fc-select__chevron {
flex: none;
color: var(--fc-color-text-muted);
transition: transform var(--fc-duration-normal) var(--fc-easing-standard);
}
.fc-select[aria-expanded="true"] .fc-select__chevron {
transform: rotate(180deg);
}
.fc-select__list {
margin: 0;
inset: auto;
position: fixed;
z-index: var(--fc-z-dropdown);
display: flex;
flex-direction: column;
max-block-size: min(60vh, 24rem);
overflow-y: auto;
overscroll-behavior-block: contain;
min-inline-size: 12rem;
padding-block: var(--fc-space-1);
padding-inline: var(--fc-space-1);
background-color: var(--fc-color-bg-overlay);
color: var(--fc-color-text-default);
border: var(--fc-border-width-thin) solid var(--fc-color-border-default);
border-radius: var(--fc-radius-lg);
box-shadow: var(--fc-shadow-overlay);
font-size: var(--fc-font-size-sm);
line-height: var(--fc-line-height-snug);
transition: opacity var(--fc-duration-normal) var(--fc-easing-decelerate);
}
@starting-style {
.fc-select__list {
opacity: 0;
}
}
.fc-select__list:not(:popover-open):not([data-fc-open="true"]) {
display: none;
}
.fc-select__option {
display: flex;
align-items: baseline;
gap: var(--fc-space-2);
min-block-size: var(--fc-size-target-min);
padding-block: var(--fc-space-1-5);
padding-inline: var(--fc-space-2);
color: var(--fc-color-text-default);
border-radius: var(--fc-radius-md);
border-inline-start: var(--fc-border-width-thick) solid transparent;
cursor: pointer;
}
.fc-select__option[data-fc-active="true"] {
background-color: var(--fc-color-selected-bg);
color: var(--fc-color-selected-fg);
border-inline-start-color: var(--fc-color-accent-border);
}
.fc-select__option[aria-selected="true"] {
font-weight: var(--fc-font-weight-semibold);
}
.fc-select__option-check {
flex: none;
inline-size: 1ch;
color: var(--fc-color-accent-text);
}
.fc-select__option[aria-disabled="true"] {
color: var(--fc-color-disabled-fg);
cursor: not-allowed;
}
.fc-select__option[aria-disabled="true"][data-fc-active="true"] {
background-color: transparent;
border-inline-start-color: transparent;
}
.fc-select__option-icon { flex: none; font-size: var(--fc-font-size-lg); }
.fc-select__option-content { display: grid; gap: var(--fc-space-0-5); min-inline-size: 0; }
.fc-select__option-description { font-size: var(--fc-font-size-xs); color: inherit; overflow-wrap: anywhere; }
.fc-select__option-meta { margin-inline-start: auto; font-size: var(--fc-font-size-xs); color: inherit; overflow-wrap: anywhere; }
.fc-select__group-label {
padding-block: var(--fc-space-2) var(--fc-space-1);
padding-inline: var(--fc-space-2);
color: var(--fc-color-text-muted);
font-size: var(--fc-font-size-xs);
font-weight: var(--fc-font-weight-semibold);
text-transform: none;
}
.fc-select__empty {
padding-block: var(--fc-space-2);
padding-inline: var(--fc-space-2);
color: var(--fc-color-text-muted);
font-size: var(--fc-font-size-sm);
}
@media (forced-colors: active) {
.fc-select,
.fc-select__list {
background-color: Canvas;
color: CanvasText;
border-color: CanvasText;
}
.fc-select[aria-expanded="true"] {
border-color: Highlight;
}
.fc-select__option[data-fc-active="true"] {
background-color: Highlight;
color: HighlightText;
border-inline-start-color: CanvasText;
}
.fc-select__option[aria-disabled="true"] {
color: GrayText;
}
.fc-select__option[aria-disabled="true"][data-fc-active="true"] {
background-color: Canvas;
color: GrayText;
border-inline-start-color: Canvas;
}
.fc-select__group-label,
.fc-select__empty {
color: GrayText;
}
}
@media (prefers-reduced-motion: reduce) {
.fc-select__chevron {
transition: none;
}
}
}