UNPKG

raft-ui

Version:

React UI components for Raft.

884 lines (757 loc) • 26.4 kB
.r-float-button { --r-float-button-size: 32px; --r-float-button-width: var(--r-float-button-size); --r-float-button-padding-x: 0px; --r-float-button-border-radius: 9999px; --r-float-button-border-width: 2px; --r-float-button-border-style: solid; --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--layer-panel); --r-float-button-bg-hover: var(--layer-panel); --r-float-button-text-color: var(--foreground-strong); --r-float-button-text-hover-color: var(--r-float-button-text-color); --r-float-button-text-disabled-color: var(--r-float-button-text-color); --r-float-button-box-shadow: var(--theme-shadow-md); --r-float-button-shadow-hover: var(--theme-shadow-lg); --r-float-button-shadow-active: var(--theme-shadow-sm); --r-float-button-transform-hover: translate(-1px, -1px); --r-float-button-transform-active: translate(0, 0); --r-float-button-outline: 2px solid var(--line-strong); --r-float-button-outline-offset: 2px; --r-float-button-font-size: 12px; --r-float-button-font-weight: 700; --r-float-button-desc-font-size: 10px; --r-float-button-icon-size: 16px; --r-float-button-opacity-disabled: .4; &.r-float-button--xs { --r-float-button-size: 24px; --r-float-button-icon-size: 12px; --r-float-button-font-size: 11px; --r-float-button-desc-font-size: 8px; --r-float-button-padding-x: 8px; } &.r-float-button--sm { --r-float-button-size: 28px; --r-float-button-icon-size: 14px; --r-float-button-font-size: 12px; --r-float-button-desc-font-size: 9px; --r-float-button-padding-x: 10px; } &.r-float-button--md { --r-float-button-size: 32px; --r-float-button-icon-size: 16px; --r-float-button-font-size: 12px; --r-float-button-desc-font-size: 10px; --r-float-button-padding-x: 12px; } &.r-float-button--lg { --r-float-button-size: 36px; --r-float-button-icon-size: 18px; --r-float-button-font-size: 14px; --r-float-button-desc-font-size: 11px; --r-float-button-padding-x: 14px; } &.r-float-button--with-text { --r-float-button-width: auto; } &.r-float-button--circle { --r-float-button-border-radius: 9999px; } &.r-float-button--pill { --r-float-button-border-radius: 9999px; --r-float-button-width: auto; padding-left: var(--r-float-button-padding-x); padding-right: var(--r-float-button-padding-x); } &.r-float-button--square { --r-float-button-border-radius: 0px; } &.r-float-button--default { --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--layer-panel); --r-float-button-bg-hover: var(--layer-panel); --r-float-button-text-color: var(--foreground-strong); } &.r-float-button--primary { --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--color-brutal-yellow, var(--primary-400)); --r-float-button-bg-hover: var(--color-brutal-yellow, var(--primary-400)); --r-float-button-text-color: var(--foreground-strong); } &.r-float-button--accent { --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--color-brutal-pink, var(--accent-400)); --r-float-button-bg-hover: var(--color-brutal-pink, var(--accent-400)); --r-float-button-text-color: var(--foreground-strong); } &.r-float-button--outline { --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--layer-panel); --r-float-button-bg-hover: var(--layer-panel); --r-float-button-text-color: var(--foreground-strong); } &.r-float-button--ghost { --r-float-button-border-color: transparent; --r-float-button-bg: transparent; --r-float-button-text-color: var(--foreground-strong); --r-float-button-box-shadow: none; --r-float-button-bg-hover: var(--fill-muted); --r-float-button-shadow-hover: var(--theme-shadow-sm); } &.r-float-button--warning { --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--color-brutal-orange, var(--warning)); --r-float-button-bg-hover: var(--color-brutal-orange, var(--warning)); --r-float-button-text-color: var(--foreground-strong); } &.r-float-button--danger { --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--color-brutal-red, var(--danger)); --r-float-button-bg-hover: var(--color-brutal-red, var(--danger)); --r-float-button-text-color: var(--foreground-strong); } &.r-float-button--elegant, :where([data-theme="elegant"]) & { --r-float-button-border-width: 1px; --r-float-button-font-weight: 500; --r-float-button-border-color: var(--line-muted); --r-float-button-bg: var(--layer-panel); --r-float-button-bg-hover: var(--fill-muted); --r-float-button-text-color: var(--foreground); --r-float-button-text-hover-color: var(--foreground); --r-float-button-box-shadow: var(--theme-shadow-md); --r-float-button-transform-hover: none; --r-float-button-transform-active: scale(.97); --r-float-button-shadow-hover: var(--theme-shadow-md); --r-float-button-shadow-active: var(--theme-shadow-md); --r-float-button-outline: 2px solid color-mix(in oklch, var(--primary-400) 80%, transparent); --r-float-button-outline-offset: 2px; } &.r-float-button--elegant.r-float-button--square.r-float-button--xs, :where([data-theme="elegant"]) &.r-float-button--square.r-float-button--xs, &.r-float-button--elegant.r-float-button--square.r-float-button--sm, :where([data-theme="elegant"]) &.r-float-button--square.r-float-button--sm { --r-float-button-border-radius: 4px; } &.r-float-button--elegant.r-float-button--square.r-float-button--md, :where([data-theme="elegant"]) &.r-float-button--square.r-float-button--md { --r-float-button-border-radius: 6px; } &.r-float-button--elegant.r-float-button--square.r-float-button--lg, :where([data-theme="elegant"]) &.r-float-button--square.r-float-button--lg { --r-float-button-border-radius: 8px; } &.r-float-button--elegant.r-float-button--default, :where([data-theme="elegant"]) &.r-float-button--default { --r-float-button-border-color: var(--line-muted); --r-float-button-bg: var(--layer-panel); --r-float-button-bg-hover: var(--fill-muted); --r-float-button-text-color: var(--foreground); } &.r-float-button--elegant.r-float-button--primary, :where([data-theme="elegant"]) &.r-float-button--primary { --r-float-button-border-color: transparent; --r-float-button-bg: var(--primary-400); --r-float-button-bg-hover: var(--primary-500); --r-float-button-text-color: var(--primary-950); } &.r-float-button--elegant.r-float-button--accent, :where([data-theme="elegant"]) &.r-float-button--accent { --r-float-button-border-color: transparent; --r-float-button-bg: var(--accent-400); --r-float-button-bg-hover: var(--accent-500); --r-float-button-text-color: var(--accent-950); } &.r-float-button--elegant.r-float-button--outline, :where([data-theme="elegant"]) &.r-float-button--outline { --r-float-button-border-color: var(--line-strong); --r-float-button-bg: var(--layer-panel); --r-float-button-bg-hover: var(--fill-muted); --r-float-button-text-color: var(--foreground); } &.r-float-button--elegant.r-float-button--ghost, :where([data-theme="elegant"]) &.r-float-button--ghost { --r-float-button-border-color: transparent; --r-float-button-bg: transparent; --r-float-button-bg-hover: var(--fill-muted); --r-float-button-text-color: var(--foreground); --r-float-button-box-shadow: none; --r-float-button-shadow-hover: var(--theme-shadow-sm); } &.r-float-button--elegant.r-float-button--warning, :where([data-theme="elegant"]) &.r-float-button--warning { --r-float-button-border-color: transparent; --r-float-button-bg: var(--warning); --r-float-button-bg-hover: var(--warning); --r-float-button-text-color: var(--warning-foreground); } &.r-float-button--elegant.r-float-button--danger, :where([data-theme="elegant"]) &.r-float-button--danger { --r-float-button-border-color: transparent; --r-float-button-bg: var(--danger); --r-float-button-bg-hover: var(--danger-hover); --r-float-button-text-color: var(--danger-foreground); } } .r-float-button { user-select: none; cursor: pointer; box-sizing: border-box; width: var(--r-float-button-width, var(--r-float-button-size)); min-width: var(--r-float-button-size); height: var(--r-float-button-size); border-radius: var(--r-float-button-border-radius); border-width: var(--r-float-button-border-width); border-style: var(--r-float-button-border-style); border-color: var(--r-float-button-border-color); background-color: var(--r-float-button-bg); color: var(--r-float-button-text-color); box-shadow: var(--r-float-button-box-shadow); font-size: var(--r-float-button-font-size); font-weight: var(--r-float-button-font-weight); outline: none; flex-shrink: 0; justify-content: center; align-items: center; padding: 0; transition: transform .15s cubic-bezier(.4, 0, .2, 1), box-shadow .15s cubic-bezier(.4, 0, .2, 1), background-color .15s cubic-bezier(.4, 0, .2, 1), border-color .15s cubic-bezier(.4, 0, .2, 1), color .15s cubic-bezier(.4, 0, .2, 1); display: inline-flex; position: relative; @media (prefers-reduced-motion: reduce) { transition: none; } &.r-float-button--with-text, &.r-float-button--pill { padding-left: var(--r-float-button-padding-x); padding-right: var(--r-float-button-padding-x); } &:hover:not(:disabled) { background-color: var(--r-float-button-bg-hover); color: var(--r-float-button-text-hover-color); box-shadow: var(--r-float-button-shadow-hover); transform: var(--r-float-button-transform-hover); } &:active:not(:disabled) { box-shadow: var(--r-float-button-shadow-active); transform: var(--r-float-button-transform-active); } &:focus-visible { outline: var(--r-float-button-outline); outline-offset: var(--r-float-button-outline-offset); } &:disabled { pointer-events: none; opacity: var(--r-float-button-opacity-disabled); cursor: not-allowed; color: var(--r-float-button-text-disabled-color); } & svg { pointer-events: none; width: var(--r-float-button-icon-size); height: var(--r-float-button-icon-size); flex-shrink: 0; } & > .r-float-button__content { white-space: nowrap; justify-content: center; align-items: center; gap: 6px; display: inline-flex; &.r-float-button__content--with-desc { flex-direction: column; gap: 2px; } } &.r-float-button--square.r-float-button--with-desc { padding-top: 2px; padding-bottom: 2px; } & .r-float-button__text { white-space: nowrap; align-items: center; line-height: 1; display: inline-flex; } & .r-float-button__desc { font-size: var(--r-float-button-desc-font-size); text-align: center; text-overflow: ellipsis; white-space: nowrap; line-height: 1.25; overflow: hidden; } } .r-float-button-group { --r-float-button-group-gap: 10px; user-select: none; box-sizing: border-box; align-items: center; gap: var(--r-float-button-group-gap); display: inline-flex; &.r-float-button-group--vertical { flex-direction: column; } &.r-float-button-group--horizontal { flex-direction: row; } &.r-float-button-group--attached { --r-float-button-group-gap: 0px; gap: 0; } &.r-float-button-group--attached.r-float-button-group--vertical > .r-float-button:not(:last-child) { border-bottom-width: 0; } &.r-float-button-group--attached.r-float-button-group--vertical > .r-float-button:not(:first-child):not(:last-child) { border-radius: 0; } &.r-float-button-group--attached.r-float-button-group--horizontal > .r-float-button:not(:last-child) { border-right-width: 0; } &.r-float-button-group--attached.r-float-button-group--horizontal > .r-float-button:not(:first-child):not(:last-child) { border-radius: 0; } &.r-float-button-group--attached.r-float-button-group--vertical.r-float-button-group--circle > .r-float-button:first-child:not(:last-child) { border-radius: 9999px 9999px 0 0; } &.r-float-button-group--attached.r-float-button-group--vertical.r-float-button-group--circle > .r-float-button:last-child:not(:first-child) { border-radius: 0 0 9999px 9999px; } &.r-float-button-group--attached.r-float-button-group--horizontal.r-float-button-group--circle > .r-float-button:first-child:not(:last-child) { border-radius: 9999px 0 0 9999px; } &.r-float-button-group--attached.r-float-button-group--horizontal.r-float-button-group--circle > .r-float-button:last-child:not(:first-child) { border-radius: 0 9999px 9999px 0; } &.r-float-button-group--attached.r-float-button-group--square:not(.r-float-button-group--elegant):not([data-theme="elegant"] *) > .r-float-button { border-radius: 0; } &.r-float-button-group--attached.r-float-button-group--vertical.r-float-button-group--square.r-float-button-group--elegant > .r-float-button:first-child:not(:last-child), :where([data-theme="elegant"]) &.r-float-button-group--attached.r-float-button-group--vertical.r-float-button-group--square > .r-float-button:first-child:not(:last-child) { border-radius: 6px 6px 0 0; } &.r-float-button-group--attached.r-float-button-group--vertical.r-float-button-group--square.r-float-button-group--elegant > .r-float-button:last-child:not(:first-child), :where([data-theme="elegant"]) &.r-float-button-group--attached.r-float-button-group--vertical.r-float-button-group--square > .r-float-button:last-child:not(:first-child) { border-radius: 0 0 6px 6px; } &.r-float-button-group--attached.r-float-button-group--horizontal.r-float-button-group--square.r-float-button-group--elegant > .r-float-button:first-child:not(:last-child), :where([data-theme="elegant"]) &.r-float-button-group--attached.r-float-button-group--horizontal.r-float-button-group--square > .r-float-button:first-child:not(:last-child) { border-radius: 6px 0 0 6px; } &.r-float-button-group--attached.r-float-button-group--horizontal.r-float-button-group--square.r-float-button-group--elegant > .r-float-button:last-child:not(:first-child), :where([data-theme="elegant"]) &.r-float-button-group--attached.r-float-button-group--horizontal.r-float-button-group--square > .r-float-button:last-child:not(:first-child) { border-radius: 0 6px 6px 0; } } .r-timeline { --r-timeline-icon-size: var(--r-timeline-custom-icon-size, 14px); --r-timeline-title-font-size: 14px; --r-timeline-content-font-size: 14px; --r-timeline-time-font-size: 12px; --r-timeline-line-height: 1.5; --r-timeline-title-font-family: var(--font-heading); --r-timeline-title-font-weight: 700; --r-timeline-gap: 12px; --r-timeline-item-gap: 20px; --r-timeline-horizontal-item-gap: 40px; --r-timeline-line-width: 2px; --r-timeline-line-color: var(--line-strong); --r-timeline-marker-border-width: 2px; --r-timeline-marker-radius: 9999px; --r-timeline-marker-fill: 100%; --r-timeline-marker-border-color: var(--line-strong); --r-timeline-axis-offset: calc((var(--r-timeline-title-font-size) * var(--r-timeline-line-height) - var(--r-timeline-icon-size)) / 2); &.r-timeline--lg { --r-timeline-icon-size: var(--r-timeline-custom-icon-size, 16px); --r-timeline-title-font-size: 16px; --r-timeline-content-font-size: 15px; } &.r-timeline--horizontal { --r-timeline-axis-offset: 0px; } &.r-timeline--elegant, :where([data-theme="elegant"]) & { --r-timeline-icon-size: var(--r-timeline-custom-icon-size, 12px); --r-timeline-title-font-family: var(--font-sans); --r-timeline-title-font-weight: 500; --r-timeline-line-color: var(--line-muted); --r-timeline-marker-fill: 0%; --r-timeline-marker-border-color: initial; } &.r-timeline--elegant.r-timeline--lg, :where([data-theme="elegant"]) &.r-timeline--lg { --r-timeline-icon-size: var(--r-timeline-custom-icon-size, 14px); } } .r-timeline-item { --r-timeline-item-color: var(--foreground-hint); --r-timeline-item-fill: var(--layer-panel); &.r-timeline-item--information { --r-timeline-item-color: var(--info-strong); --r-timeline-item-fill: var(--info); } &.r-timeline-item--success { --r-timeline-item-color: var(--success-strong); --r-timeline-item-fill: var(--success); } &.r-timeline-item--warning { --r-timeline-item-color: var(--warning-strong); --r-timeline-item-fill: var(--warning); } &.r-timeline-item--danger { --r-timeline-item-color: var(--danger-strong); --r-timeline-item-fill: var(--danger); } &.r-timeline-item--color { --r-timeline-item-color: var(--r-timeline-custom-color); --r-timeline-item-fill: var(--r-timeline-custom-color); } } .r-timeline { line-height: var(--r-timeline-line-height); flex-direction: column; margin: 0; padding: 0; list-style: none; display: flex; } .r-timeline-item { gap: var(--r-timeline-gap); margin: 0; padding: 0; display: flex; } .r-timeline-item__axis { padding-top: var(--r-timeline-axis-offset); width: var(--r-timeline-icon-size); flex-direction: column; flex: none; align-items: center; display: flex; } .r-timeline-item__marker { background: color-mix(in oklch, var(--r-timeline-item-fill) var(--r-timeline-marker-fill), transparent); border: var(--r-timeline-marker-border-width) solid var(--r-timeline-marker-border-color, var(--r-timeline-item-color)); border-radius: var(--r-timeline-marker-radius); box-sizing: border-box; height: var(--r-timeline-icon-size); width: var(--r-timeline-icon-size); flex: none; } .r-timeline-item__icon { color: var(--r-timeline-item-color); font-size: var(--r-timeline-icon-size); height: var(--r-timeline-icon-size); width: var(--r-timeline-icon-size); flex: none; justify-content: center; align-items: center; display: flex; & svg { width: 1em; height: 1em; } } .r-timeline-item__line { border-inline-start: var(--r-timeline-line-width) solid var(--r-timeline-line-color); margin-bottom: calc(var(--r-timeline-axis-offset) * -1); flex: 1; } .r-timeline-item--dashed > .r-timeline-item__axis > .r-timeline-item__line { border-style: dashed; } .r-timeline-item:last-child > .r-timeline-item__axis > .r-timeline-item__line { visibility: hidden; } .r-timeline-item__body { min-width: 0; padding-bottom: var(--r-timeline-item-gap); flex: 1; } .r-timeline-item:last-child > .r-timeline-item__body { padding-bottom: 0; } .r-timeline-title { color: var(--foreground-strong); font-family: var(--r-timeline-title-font-family); font-size: var(--r-timeline-title-font-size); font-weight: var(--r-timeline-title-font-weight); margin-bottom: 4px; } .r-timeline-content { color: var(--foreground-muted); font-size: var(--r-timeline-content-font-size); } .r-timeline-time { color: var(--foreground-hint); font-size: var(--r-timeline-time-font-size); margin-top: 4px; } .r-timeline--right > .r-timeline-item { text-align: end; flex-direction: row-reverse; } .r-timeline--horizontal { flex-direction: row; } .r-timeline--horizontal > .r-timeline-item { flex-direction: column; flex: none; & > .r-timeline-item__axis { height: var(--r-timeline-icon-size); flex-direction: row; width: auto; padding-top: 0; } & > .r-timeline-item__axis > .r-timeline-item__line { border-inline-start: 0; border-top: var(--r-timeline-line-width) solid var(--r-timeline-line-color); margin-bottom: 0; } &.r-timeline-item--dashed > .r-timeline-item__axis > .r-timeline-item__line { border-top-style: dashed; } & > .r-timeline-item__body { padding-bottom: 0; padding-inline-end: var(--r-timeline-horizontal-item-gap); } } .r-combobox-select { min-width: 0; position: relative; } .r-combobox-select__control { box-sizing: border-box; border: 1px solid var(--line-muted); background: var(--layer-panel); min-width: 0; color: var(--foreground-strong); box-shadow: 0 1px 1px color-mix(in oklch, var(--ink) 5%, transparent); border-radius: .375rem; outline: 0; align-items: center; gap: .5rem; padding: .375rem .5rem; transition: background-color .15s, border-color .15s, box-shadow .15s; display: flex; } .r-combobox-select__control:focus-within { box-shadow: 0 0 0 1px var(--primary-400); } .r-combobox-select__input { box-sizing: border-box; width: 100%; min-width: 3rem; color: inherit; font: inherit; background: none; border: 0; outline: 0; flex: 1; padding: 0; } .r-combobox-select__input::placeholder { color: var(--foreground-placeholder); } .r-combobox-select__chips { border: 0; flex-wrap: wrap; flex: 1; align-items: center; gap: .25rem; min-width: 0; min-height: 2.25rem; padding: .25rem .5rem; display: flex; } .r-combobox-select__chip { background: var(--fill-muted); max-width: 100%; min-height: 1.5rem; color: var(--foreground-strong); border-radius: .25rem; align-items: center; gap: .25rem; padding: .125rem .375rem .125rem .5rem; font-size: .75rem; line-height: 1.25rem; display: inline-flex; overflow: hidden; } .r-combobox-select__control:not(:focus-within) .r-combobox-select__chip[data-overflow] { display: none; } .r-combobox-select__text { text-overflow: ellipsis; white-space: nowrap; min-width: 0; overflow: hidden; } .r-combobox-select__actions { flex: none; align-items: center; gap: .125rem; display: inline-flex; } .r-combobox-select__action, .r-combobox-select__remove { width: 1.5rem; height: 1.5rem; color: inherit; background: none; border: 0; outline: 0; flex: none; justify-content: center; align-items: center; padding: 0; transition: color .15s, background-color .15s; display: inline-flex; } .r-combobox-select__remove { width: 1.125rem; height: 1.125rem; } .r-combobox-select__action > svg, .r-combobox-select__remove > svg { pointer-events: none; width: .875rem; height: .875rem; } .r-combobox-select__action:hover, .r-combobox-select__remove:hover { background: var(--ink-4); color: var(--foreground); } .r-combobox-select__positioner { z-index: 50; isolation: isolate; outline: 0; } .r-combobox-select__popup { box-sizing: border-box; width: var(--anchor-width, max-content); min-width: 13.75rem; max-width: var(--available-width); max-height: min(var(--available-height), 24rem); background: var(--layer-popover); color: var(--foreground-strong); box-shadow: var(--theme-shadow-lg); border: 0; border-radius: .375rem; outline: 0; overflow: hidden; } .r-combobox-select__list { overscroll-behavior: contain; max-height: 16rem; padding-block: .25rem; scroll-padding-block: .25rem; overflow-y: auto; } .r-combobox-select__option { box-sizing: border-box; cursor: default; user-select: none; width: 100%; min-height: 2rem; color: var(--foreground-muted); outline: 0; justify-content: space-between; align-items: center; gap: .5rem; padding: .375rem .75rem; font-size: .875rem; line-height: 1.5rem; transition: background-color .12s, color .12s; display: flex; overflow: hidden; } .r-combobox-select__option:hover, .r-combobox-select__option[data-highlighted] { background: var(--ink-4); color: var(--foreground); } .r-combobox-select__option[data-disabled] { pointer-events: none; color: var(--foreground-disabled); } .r-combobox-select__option > svg { pointer-events: none; flex: none; width: .875rem; height: .875rem; } .r-combobox-select__indicator { flex: none; justify-content: center; align-items: center; margin-inline-start: auto; display: inline-flex; } .r-combobox-select__indicator > svg { width: .875rem; height: .875rem; } .r-combobox-select__group-label { color: var(--foreground-strong); padding: .5rem .75rem .25rem; font-size: .6875rem; font-weight: 600; line-height: 1; } .r-combobox-select__message { color: var(--foreground-muted); text-align: center; padding: 1rem .75rem; font-size: .875rem; line-height: 1.25rem; } .r-combobox-select__overflow { color: var(--foreground-muted); font-size: .75rem; } .r-combobox-select__spinner { width: .875rem; height: .875rem; animation: .7s linear infinite r-combobox-select-spin; } .r-combobox-select--sm.r-combobox-select__control { min-height: 1.75rem; padding-block: .125rem; font-size: .75rem; } .r-combobox-select--sm .r-combobox-select__chips { min-height: 1.5rem; padding-block: .125rem; } .r-combobox-select--lg.r-combobox-select__control { padding-block: .625rem; font-size: .9375rem; } .r-combobox-select__control[data-status="error"] { border-color: var(--danger); } .r-combobox-select__control[data-status="warning"] { border-color: var(--warning); } .r-combobox-select--brutal.r-combobox-select__control { border: 2px solid var(--line-strong); box-shadow: var(--theme-shadow-sm); border-radius: 0; font-weight: 600; } .r-combobox-select--brutal.r-combobox-select__popup { border: 2px solid var(--line-strong); box-shadow: var(--theme-shadow-lg); border-radius: 0; } .r-combobox-select--brutal .r-combobox-select__option { border-bottom: 1px solid var(--ink-10); color: var(--foreground-strong); font-weight: 600; } .r-combobox-select--brutal .r-combobox-select__option:hover, .r-combobox-select--brutal .r-combobox-select__option[data-highlighted] { background: color-mix(in oklch, var(--color-brutal-yellow) 30%, transparent); } .r-combobox-select--brutal .r-combobox-select__option[data-disabled] { color: var(--foreground-disabled); cursor: not-allowed; background: none; } .r-combobox-select--brutal .r-combobox-select__chip { border: 1px solid var(--line-strong); background: var(--color-brutal-yellow); border-radius: 0; font-weight: 700; } @keyframes r-combobox-select-spin { to { transform: rotate(360deg); } } @media (prefers-reduced-motion: reduce) { .r-combobox-select *, .r-combobox-select__positioner { transition-duration: .01ms !important; animation-duration: .01ms !important; } }