@layer fc.components {
.fc-search {
position: relative;
display: block;
max-inline-size: 100%;
}
.fc-search__bar {
display: flex;
align-items: center;
gap: var(--fc-space-2);
min-block-size: var(--fc-size-target-comfortable);
padding-inline: var(--fc-space-3) var(--fc-space-1);
background-color: var(--fc-color-bg-surface);
color: var(--fc-color-text-default);
border: var(--fc-border-width-thin) solid var(--fc-color-border-interactive);
border-radius: var(--fc-radius-full);
transition:
border-color var(--fc-duration-fast) var(--fc-easing-standard),
box-shadow var(--fc-duration-fast) var(--fc-easing-standard);
}
@media (hover: hover) {
.fc-search__bar:hover {
border-color: color-mix(in oklab, var(--fc-color-border-interactive), var(--fc-color-text-default) 40%);
}
}
.fc-search__bar:has(:focus-visible) {
border-color: var(--fc-color-accent-border);
outline: var(--fc-border-width-focus) solid var(--fc-color-focus-ring);
outline-offset: var(--fc-space-0-5);
}
.fc-search__input:focus-visible {
outline-color: transparent;
}
.fc-search__icon {
display: inline-grid;
flex-shrink: 0;
place-items: center;
color: var(--fc-color-text-muted);
}
.fc-search__input {
flex: 1 1 auto;
min-inline-size: 0;
min-block-size: var(--fc-size-target-min);
margin: 0;
padding: 0;
background: transparent;
color: inherit;
border: 0;
font: inherit;
font-size: var(--fc-font-size-md);
}
.fc-search__input::placeholder {
color: var(--fc-color-text-subtle);
}
.fc-search__input--own-clear::-webkit-search-cancel-button {
-webkit-appearance: none;
appearance: none;
}
.fc-search__trailing {
display: inline-flex;
flex-shrink: 0;
align-items: center;
gap: var(--fc-space-1);
}
.fc-search__bar:has(:disabled) {
background-color: var(--fc-color-disabled-bg);
color: var(--fc-color-disabled-fg);
border-color: var(--fc-color-disabled-border);
cursor: not-allowed;
}
.fc-search__bar:has([aria-invalid="true"]) {
border-color: var(--fc-color-danger-border);
}
.fc-search__view {
position: absolute;
inset-inline: 0;
inset-block-start: calc(100% + var(--fc-space-1));
z-index: var(--fc-z-dropdown);
display: var(--fc-search-view, none);
max-block-size: min(60vh, 28rem);
overflow-y: auto;
overscroll-behavior-block: contain;
padding: var(--fc-space-1);
background-color: var(--fc-color-bg-raised);
color: var(--fc-color-text-default);
border: var(--fc-border-width-thin) solid var(--fc-color-border-subtle);
border-radius: var(--fc-radius-xl);
box-shadow: var(--fc-shadow-overlay);
}
.fc-search:focus-within {
--fc-search-view: block;
}
.fc-search__view[data-fc-open="true"] {
display: block;
}
.fc-search__view[data-fc-open="false"] {
display: none;
}
.fc-search__view[aria-busy="true"] {
border-style: dashed;
}
.fc-search__view-label {
margin: 0;
padding-block: var(--fc-space-2) var(--fc-space-1);
padding-inline: var(--fc-space-4);
color: var(--fc-color-text-muted);
font-size: var(--fc-font-size-xs);
font-weight: var(--fc-font-weight-medium);
}
.fc-search__view--docked {
position: static;
margin-block-start: var(--fc-space-2);
box-shadow: none;
}
@media (forced-colors: active) {
.fc-search__bar,
.fc-search__view {
border-color: CanvasText;
}
.fc-search__bar:has(:disabled) {
color: GrayText;
border-color: GrayText;
}
}
}