@plone/components
Version:
ReactJS components for Plone
2,056 lines (1,724 loc) • 94.1 kB
CSS
:root {
--quanta-air: #fff;
--quanta-space: #000;
--quanta-denim: #021322;
--quanta-snow: #f3f5f7;
--quanta-smoke: #e4e8ec;
--quanta-silver: #c3cdd5;
--quanta-dolphin: #8296a6;
--quanta-pigeon: #617789;
--quanta-iron: #4a5b68;
--quanta-arctic: #e2f1fd;
--quanta-sky: #c5e3fc;
--quanta-azure: #7cc0f8;
--quanta-cobalt: #2597f4;
--quanta-sapphire: #0b78d0;
--quanta-royal: #085696;
--quanta-ballet: #fee9e7;
--quanta-flamingo: #fcd0ca;
--quanta-poppy: #f9a094;
--quanta-rose: #f54e38;
--quanta-candy: #d0220b;
--quanta-wine: #a91c09;
--quanta-cream: #fcf3cf;
--quanta-banana: #faeaad;
--quanta-lemmon: #f6d355;
--quanta-gold: #b48f09;
--quanta-dijon: #917308;
--quanta-bronze: #6b5506;
--quanta-daiquiri: #e2f7de;
--quanta-mint: #c5efbe;
--quanta-celery: #8bde7c;
--quanta-neon: #3da72a;
--quanta-emerald: #318722;
--quanta-turtle: #256619;
--quanta-aqua: #d6f5f2;
--quanta-spa: #baeee9;
--quanta-tiffany: #74dcd4;
--quanta-turquoise: #29a399;
--quanta-peacock: #207e77;
--quanta-puya: #175e58;
}
:root {
--background-color: #fff;
--gray-50: #fff;
--gray-100: #d0d0d0;
--gray-200: #afafaf;
--gray-300: #8f8f8f;
--gray-400: #717171;
--gray-500: #555;
--gray-600: #393939;
--purple-100: #d5c9fa;
--purple-200: #b8a3f6;
--purple-300: #997cf2;
--purple-400: #7a54ef;
--purple-500: #582ddc;
--purple-600: #3c1e95;
--red-100: #f7c4ba;
--red-200: #f29887;
--red-300: #eb664d;
--red-400: #de2300;
--red-500: #a81b00;
--red-600: #731200;
--highlight-hover: rgba(0, 0, 0, .07);
--highlight-pressed: rgba(0, 0, 0, .15);
--basic-50: #fff;
--basic-100: #f1f5f9;
--basic-200: #e2e8f0;
--basic-300: #cbd5e1;
--basic-400: #94a3b8;
--basic-500: #64748b;
--basic-600: #475569;
--basic-700: #334155;
--basic-800: #1e293b;
--basic-900: #0f172a;
--basic-950: #020617;
--text-color: var(--basic-950);
--text-color-base: var(--basic-600);
--text-color-hover: var(--basic-950);
--text-color-disabled: var(--basic-500);
--text-color-placeholder: var(--gray-400);
--link-color: var(--quanta-sapphire);
--link-color-secondary: var(--quanta-royal);
--link-color-pressed: var(--quanta-cobalt);
--border-color: var(--basic-400);
--border-color-hover: var(--basic-500);
--border-color-pressed: var(--basic-500);
--border-color-disabled: var(--basic-300);
--focus-ring-color: var(--basic-400);
--field-background: var(--basic-50);
--field-text-color: var(--basic-950);
--button-background: var(--basic-50);
--button-background-pressed: var(--background-color);
--overlay-background: var(--basic-50);
--highlight-background: var(--basic-600);
--highlight-background-pressed: var(--basic-800);
--highlight-background-invalid: var(--quanta-candy);
--highlight-background-hover: var(--basic-400);
--highlight-foreground: var(--basic-50);
--highlight-foreground-pressed: var(--basic-200);
--highlight-overlay: var(--basic-400);
--color-invalid: var(--red-400);
--color-pressed-invalid: var(--red-500);
--layout-container-width: 1440px;
--default-container-width: 940px;
--narrow-container-width: 620px;
}
@media (forced-colors: active) {
:root {
--background-color: Canvas;
--focus-ring-color: Highlight;
--text-color: ButtonText;
--text-color-base: ButtonText;
--text-color-hover: ButtonText;
--text-color-disabled: GrayText;
--text-color-placeholder: ButtonText;
--link-color: LinkText;
--link-color-secondary: LinkText;
--link-color-pressed: LinkText;
--border-color: ButtonBorder;
--border-color-hover: ButtonBorder;
--border-color-pressed: ButtonBorder;
--border-color-disabled: GrayText;
--field-background: Field;
--field-text-color: FieldText;
--overlay-background: Canvas;
--button-background: ButtonFace;
--button-background-pressed: ButtonFace;
--highlight-background: Highlight;
--highlight-background-pressed: Highlight;
--highlight-background-invalid: LinkText;
--highlight-foreground: HighlightText;
--highlight-foreground-pressed: HighlightText;
--color-invalid: LinkText;
--color-pressed-invalid: LinkText;
}
}
@layer plone-components.base {
:root {
--quanta-icon-size: .25rem;
}
.q.icon {
color: inherit;
fill: currentColor;
display: inline-block;
}
.q.icon:not(:root) {
overflow: hidden;
}
.q.icon {
pointer-events: none;
}
@media (forced-colors: active) {
.q.icon {
forced-color-adjust: auto;
}
}
.q.icon-2xs {
width: calc(var(--quanta-icon-size) * 3);
height: calc(var(--quanta-icon-size) * 3);
}
.q.icon-2xs img {
width: calc(var(--quanta-icon-size) * 3);
height: calc(var(--quanta-icon-size) * 3);
}
.q.icon-2xs svg {
width: calc(var(--quanta-icon-size) * 3);
height: calc(var(--quanta-icon-size) * 3);
}
.q.icon-xs {
width: calc(var(--quanta-icon-size) * 4);
height: calc(var(--quanta-icon-size) * 4);
}
.q.icon-xs img {
width: calc(var(--quanta-icon-size) * 4);
height: calc(var(--quanta-icon-size) * 4);
}
.q.icon-xs svg {
width: calc(var(--quanta-icon-size) * 4);
height: calc(var(--quanta-icon-size) * 4);
}
.q.icon-sm {
width: calc(var(--quanta-icon-size) * 5);
height: calc(var(--quanta-icon-size) * 5);
}
.q.icon-sm img {
width: calc(var(--quanta-icon-size) * 5);
height: calc(var(--quanta-icon-size) * 5);
}
.q.icon-sm svg {
width: calc(var(--quanta-icon-size) * 5);
height: calc(var(--quanta-icon-size) * 5);
}
.q.icon-base {
width: calc(var(--quanta-icon-size) * 6);
height: calc(var(--quanta-icon-size) * 6);
}
.q.icon-base img {
width: calc(var(--quanta-icon-size) * 6);
height: calc(var(--quanta-icon-size) * 6);
}
.q.icon-base svg {
width: calc(var(--quanta-icon-size) * 6);
height: calc(var(--quanta-icon-size) * 6);
}
.q.icon-lg {
width: calc(var(--quanta-icon-size) * 7);
height: calc(var(--quanta-icon-size) * 7);
}
.q.icon-lg img {
width: calc(var(--quanta-icon-size) * 7);
height: calc(var(--quanta-icon-size) * 7);
}
.q.icon-lg svg {
width: calc(var(--quanta-icon-size) * 7);
height: calc(var(--quanta-icon-size) * 7);
}
.q.icon-xl {
width: calc(var(--quanta-icon-size) * 8);
height: calc(var(--quanta-icon-size) * 8);
}
.q.icon-xl img {
width: calc(var(--quanta-icon-size) * 8);
height: calc(var(--quanta-icon-size) * 8);
}
.q.icon-xl svg {
width: calc(var(--quanta-icon-size) * 8);
height: calc(var(--quanta-icon-size) * 8);
}
.q.icon-2xl {
width: calc(var(--quanta-icon-size) * 9);
height: calc(var(--quanta-icon-size) * 9);
}
.q.icon-2xl img {
width: calc(var(--quanta-icon-size) * 9);
height: calc(var(--quanta-icon-size) * 9);
}
.q.icon-2xl svg {
width: calc(var(--quanta-icon-size) * 9);
height: calc(var(--quanta-icon-size) * 9);
}
.q.icon3xl {
width: calc(var(--quanta-icon-size) * 10);
height: calc(var(--quanta-icon-size) * 10);
}
.q.icon3xl img {
width: calc(var(--quanta-icon-size) * 10);
height: calc(var(--quanta-icon-size) * 10);
}
.q.icon3xl svg {
width: calc(var(--quanta-icon-size) * 10);
height: calc(var(--quanta-icon-size) * 10);
}
.react-aria-Link {
color: var(--link-color);
cursor: pointer;
outline: none;
font-size: 18px;
text-decoration: underline;
transition: all .2s;
position: relative;
}
.react-aria-Link[data-pressed] {
color: var(--link-color-pressed);
}
.react-aria-Link[data-hovered] {
color: var(--link-color-secondary);
}
.react-aria-Link[data-focused] {
color: var(--link-color-secondary);
}
.react-aria-Link[data-focus-visible]:after {
border: 2px solid var(--focus-ring-color);
content: "";
border-radius: 6px;
position: absolute;
inset: -3px -6px;
}
.react-aria-Link[data-disabled] {
color: var(--text-color-disabled);
cursor: default;
}
.react-aria-Button {
border: 1px solid var(--border-color);
appearance: none;
background: var(--button-background);
color: var(--text-color);
text-align: center;
vertical-align: middle;
border-radius: 6px;
outline: none;
margin: 0;
padding: 8px;
font-size: 1rem;
text-decoration: none;
}
.react-aria-Button[data-pressed] {
border-color: var(--border-color-pressed);
background: var(--button-background-pressed);
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
}
.react-aria-Button[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-Button[data-disabled] {
border-color: var(--border-color-disabled);
color: var(--text-color-disabled);
}
.react-aria-Button .icon:not(:last-child) {
margin-right: 6px;
}
.react-aria-Button:has(.icon) {
align-items: center;
line-height: 0;
display: inline-flex;
}
.react-aria-ToggleButton {
border: 1px solid var(--border-color);
appearance: none;
background: var(--button-background);
color: var(--text-color);
forced-color-adjust: none;
text-align: center;
vertical-align: middle;
border-radius: 6px;
outline: none;
margin: 0;
padding: 8px;
font-size: 1rem;
}
.react-aria-ToggleButton[data-pressed] {
border-color: var(--border-color-pressed);
background: var(--button-background-pressed);
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
}
.react-aria-ToggleButton[data-selected] {
border-color: var(--highlight-background);
background: var(--highlight-background);
color: var(--highlight-foreground);
}
.react-aria-ToggleButton[data-selected][data-pressed] {
border-color: var(--highlight-background-pressed);
background: var(--highlight-background-pressed);
}
.react-aria-ToggleButton[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: 2px;
}
.react-aria-ToggleButton[data-disabled] {
border-color: var(--border-color-disabled);
background: var(--button-background);
color: var(--text-color-disabled);
}
.react-aria-ToggleButton .icon:not(:last-child) {
margin-right: 6px;
}
.react-aria-ToggleButton:has(.icon) {
align-items: center;
line-height: 0;
display: inline-flex;
}
.react-aria-Label {
letter-spacing: .012em;
font-size: .9rem;
font-weight: 500;
line-height: 1.71429;
}
.react-aria-Label:after {
color: var(--basic-600);
vertical-align: middle;
margin-left: 3px;
line-height: 0;
display: inline-block;
}
.react-aria-Checkbox {
--selected-color: var(--highlight-background);
--selected-color-pressed: var(--highlight-background-pressed);
--checkmark-color: var(--highlight-foreground);
color: var(--text-color);
forced-color-adjust: none;
align-items: center;
gap: .571rem;
font-size: 1.143rem;
display: flex;
}
.react-aria-Checkbox .checkbox {
border: 2px solid var(--border-color);
border-radius: 4px;
justify-content: center;
align-items: center;
width: 1.143rem;
height: 1.143rem;
transition: all .2s;
display: flex;
}
.react-aria-Checkbox svg {
fill: none;
width: 1rem;
height: 1rem;
stroke: var(--checkmark-color);
stroke-dasharray: 22;
stroke-dashoffset: 66px;
stroke-width: 3px;
transition: all .2s;
}
.react-aria-Checkbox[data-pressed] .checkbox {
border-color: var(--border-color-pressed);
}
.react-aria-Checkbox[data-focus-visible] .checkbox {
outline: 2px solid var(--focus-ring-color);
outline-offset: 2px;
}
.react-aria-Checkbox[data-selected] .checkbox {
border-color: var(--selected-color);
background: var(--selected-color);
}
.react-aria-Checkbox[data-selected][data-pressed] .checkbox {
border-color: var(--selected-color-pressed);
background: var(--selected-color-pressed);
}
.react-aria-Checkbox[data-selected] svg {
stroke-dashoffset: 44px;
}
.react-aria-Checkbox[data-indeterminate] .checkbox {
border-color: var(--selected-color);
background: var(--selected-color);
}
.react-aria-Checkbox[data-indeterminate][data-pressed] .checkbox {
border-color: var(--selected-color-pressed);
background: var(--selected-color-pressed);
}
.react-aria-Checkbox[data-indeterminate] svg {
stroke-dashoffset: 44px;
}
.react-aria-Checkbox[data-indeterminate] svg {
fill: var(--checkmark-color);
stroke: none;
}
.react-aria-Checkbox[data-invalid] {
color: var(--color-invalid);
}
.react-aria-Checkbox[data-invalid] .checkbox {
--checkmark-color: var(--gray-50);
border-color: var(--color-invalid);
}
.react-aria-Checkbox[data-invalid][data-pressed] .checkbox {
border-color: var(--color-pressed-invalid);
}
.react-aria-Checkbox[data-invalid][data-selected] .checkbox {
background: var(--color-invalid);
}
.react-aria-Checkbox[data-invalid][data-selected][data-pressed] .checkbox {
background: var(--color-pressed-invalid);
}
.react-aria-Checkbox[data-invalid][data-indeterminate] .checkbox {
background: var(--color-invalid);
}
.react-aria-Checkbox[data-invalid][data-indeterminate][data-pressed] .checkbox {
background: var(--color-pressed-invalid);
}
.react-aria-Checkbox[data-disabled] {
color: var(--text-color-disabled);
}
.react-aria-Checkbox[data-disabled] .checkbox {
border-color: var(--border-color-disabled);
}
.react-aria-Checkbox[data-disabled] + [slot="description"] {
color: var(--text-color-disabled);
}
.react-aria-Checkbox[data-required]:after {
content: url("data:image/svg+xml; utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 24 24\"><path fill=\"hsl(7, 90%, 59%)\" d=\"M12 18a6 6 0 100-12 6 6 0 000 12z\"/></svg>");
}
.react-aria-CheckboxField [slot="description"] {
padding-top: 3px;
font-size: 12px;
display: block;
}
.react-aria-CheckboxField [slot="errorMessage"] {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-TextField {
width: fit-content;
color: var(--text-color);
flex-direction: column;
display: flex;
}
.react-aria-TextField .react-aria-Input {
border: 1px solid var(--border-color);
background: var(--field-background);
color: var(--field-text-color);
border-radius: 6px;
margin: 0;
padding: .286rem;
font-size: 1.143rem;
}
.react-aria-TextField .react-aria-Input[data-focused] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-TextField .react-aria-TextArea {
border: 1px solid var(--border-color);
background: var(--field-background);
color: var(--field-text-color);
border-radius: 6px;
margin: 0;
padding: .286rem;
font-size: 1.143rem;
}
.react-aria-TextField .react-aria-TextArea[data-focused] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-TextField .react-aria-Input[data-invalid] {
border-color: var(--color-invalid);
}
.react-aria-TextField .react-aria-TextArea[data-invalid] {
border-color: var(--color-invalid);
}
.react-aria-TextField .react-aria-FieldError {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-TextField [slot="description"] {
font-size: 12px;
}
.react-aria-TextField .react-aria-Input[data-disabled] {
border-color: var(--border-color-disabled);
color: var(--text-color-disabled);
}
.react-aria-TextField .react-aria-TextArea[data-disabled] {
border-color: var(--border-color-disabled);
color: var(--text-color-disabled);
}
.react-aria-Form {
flex-direction: column;
align-items: flex-start;
gap: 8px;
display: flex;
}
.react-aria-Form [role="alert"] {
border: 2px solid var(--color-invalid);
background: var(--overlay-background);
border-radius: 6px;
outline: none;
max-width: 250px;
padding: 12px;
}
.react-aria-Form [role="alert"]:focus-visible {
outline: 2px solid var(--focus-ring-color);
outline-offset: 2px;
}
.react-aria-Form [role="alert"] h3 {
margin-top: 0;
}
.react-aria-Form [role="alert"] p {
margin-bottom: 0;
}
.react-aria-CheckboxGroup {
color: var(--text-color);
flex-direction: column;
gap: .571rem;
display: flex;
}
.react-aria-CheckboxGroup .react-aria-FieldError {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-CheckboxGroup [slot="description"] {
font-size: 12px;
}
.react-aria-ColorSlider {
grid-template-columns: 1fr auto;
grid-template-areas: "label output"
"track track";
gap: 4px;
max-width: 300px;
display: grid;
}
.react-aria-ColorSlider .react-aria-Label {
grid-area: label;
}
.react-aria-ColorSlider .react-aria-SliderOutput {
grid-area: output;
}
.react-aria-ColorSlider .react-aria-SliderTrack {
border-radius: 4px;
grid-area: track;
}
.react-aria-ColorSlider[data-orientation="horizontal"] .react-aria-SliderTrack {
height: 28px;
}
.react-aria-ColorSlider[data-orientation="horizontal"] .react-aria-ColorThumb {
top: 50%;
}
.react-aria-ColorThumb {
box-sizing: border-box;
border: 2px solid #fff;
border-radius: 50%;
width: 20px;
height: 20px;
box-shadow: 0 0 0 1px #000, inset 0 0 0 1px #000;
}
.react-aria-ColorThumb[data-focus-visible] {
width: 24px;
height: 24px;
}
.react-aria-ColorSlider[data-orientation="vertical"] {
height: 150px;
display: block;
}
.react-aria-ColorSlider[data-orientation="vertical"] .react-aria-Label {
display: none;
}
.react-aria-ColorSlider[data-orientation="vertical"] .react-aria-SliderOutput {
display: none;
}
.react-aria-ColorSlider[data-orientation="vertical"] .react-aria-SliderTrack {
width: 28px;
height: 100%;
}
.react-aria-ColorSlider[data-orientation="vertical"] .react-aria-ColorThumb {
left: 50%;
}
.react-aria-ColorSlider[data-disabled] .react-aria-SliderTrack {
background: gray !important;
}
.react-aria-ColorSlider[data-disabled] .react-aria-ColorThumb {
opacity: .5;
background: gray !important;
}
.react-aria-ColorArea {
border-radius: 4px;
flex-shrink: 0;
width: 192px;
height: 192px;
}
.react-aria-ColorThumb {
box-sizing: border-box;
border: 2px solid #fff;
border-radius: 50%;
width: 20px;
height: 20px;
box-shadow: 0 0 0 1px #000, inset 0 0 0 1px #000;
}
.react-aria-ColorThumb[data-focus-visible] {
width: 24px;
height: 24px;
}
.react-aria-ColorArea[data-disabled] {
background: gray !important;
}
.react-aria-ColorArea[data-disabled] .react-aria-ColorThumb {
background: gray !important;
}
.react-aria-ColorField {
color: var(--text-color);
flex-direction: column;
display: flex;
}
.react-aria-ColorField .react-aria-Input {
box-sizing: border-box;
border: 1px solid var(--border-color);
background: var(--field-background);
width: 100%;
max-width: 12ch;
color: var(--field-text-color);
border-radius: 6px;
margin: 0;
padding: .286rem;
font-size: 1.143rem;
}
.react-aria-ColorField .react-aria-Input[data-focused] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-ColorField[data-invalid] .react-aria-Input {
border-color: var(--color-invalid);
}
.react-aria-ColorField .react-aria-FieldError {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-ColorField [slot="description"] {
font-size: 12px;
}
.react-aria-ColorField .react-aria-Input[data-disabled] {
border-color: var(--border-color-disabled);
color: var(--text-color-disabled);
}
.react-aria-ColorSwatch {
border-radius: 4px;
width: 32px;
height: 32px;
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .1);
}
.react-aria-ColorSwatchPicker {
flex-wrap: wrap;
gap: 8px;
display: flex;
}
.react-aria-ColorSwatchPickerItem {
forced-color-adjust: none;
border-radius: 4px;
outline: none;
width: fit-content;
position: relative;
}
.react-aria-ColorSwatchPickerItem[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: 2px;
}
.react-aria-ColorSwatchPickerItem[data-selected]:after {
border-radius: inherit;
content: "";
outline-offset: -4px;
border: 2px solid #000;
outline: 2px solid #fff;
position: absolute;
inset: 0;
}
.react-aria-ColorSwatchPickerItem[data-disabled] {
opacity: .2;
}
.react-aria-ColorSwatchPicker[data-layout="stack"] {
flex-direction: column;
}
.react-aria-Disclosure .react-aria-Button[slot="trigger"] {
box-shadow: none;
background: none;
border: none;
align-items: center;
gap: 8px;
font-size: 16px;
font-weight: bold;
display: flex;
}
.react-aria-Disclosure .react-aria-Button[slot="trigger"] svg {
fill: none;
stroke: currentColor;
stroke-width: 3px;
width: 12px;
height: 12px;
transition: rotate .2s;
rotate: 0deg;
}
.react-aria-Disclosure[data-expanded] .react-aria-Button[slot="trigger"] svg {
rotate: 90deg;
}
.react-aria-DisclosurePanel {
margin-left: 32px;
}
.react-aria-NumberField {
color: var(--text-color);
margin-bottom: 8px;
}
.react-aria-NumberField .react-aria-Group {
border-radius: 6px;
width: fit-content;
display: flex;
}
.react-aria-NumberField .react-aria-Group[data-focus-within] {
outline: 1px solid var(--focus-ring-color);
}
.react-aria-NumberField .react-aria-Group[data-focus-within] .react-aria-Input {
border-color: var(--focus-ring-color);
}
.react-aria-NumberField .react-aria-Group[data-focus-within] .react-aria-Button {
border-color: var(--focus-ring-color);
}
.react-aria-NumberField .react-aria-Button {
width: 2.3rem;
font-size: 1.4rem;
}
.react-aria-NumberField .react-aria-Button[slot="decrement"] {
border-start-end-radius: 0;
border-end-end-radius: 0;
}
.react-aria-NumberField .react-aria-Button[slot="increment"] {
border-start-start-radius: 0;
border-end-start-radius: 0;
}
.react-aria-NumberField .react-aria-Input {
z-index: 1;
border: 1px solid var(--border-color);
background: var(--field-background);
width: 6rem;
color: var(--field-text-color);
border-radius: 0;
outline: none;
flex: 1;
margin: 0 -1px;
padding: .429rem .571rem;
font-size: 1rem;
}
.react-aria-NumberField[data-invalid] .react-aria-Input {
border-color: var(--color-invalid);
}
.react-aria-NumberField[data-invalid] .react-aria-Button {
border-color: var(--color-invalid);
}
.react-aria-NumberField[data-invalid]:focus-within .react-aria-Input {
border-color: var(--focus-ring-color);
}
.react-aria-NumberField[data-invalid]:focus-within .react-aria-Button {
border-color: var(--focus-ring-color);
}
.react-aria-NumberField .react-aria-FieldError {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-NumberField [slot="description"] {
font-size: 12px;
}
.react-aria-NumberField .react-aria-Button[data-disabled] {
border-color: var(--border-color-disabled);
color: var(--text-color-disabled);
}
.react-aria-NumberField .react-aria-Input[data-disabled] {
border-color: var(--border-color-disabled);
color: var(--text-color-disabled);
}
.react-aria-RadioGroup {
color: var(--text-color);
flex-direction: column;
gap: 8px;
display: flex;
}
.react-aria-Radio {
color: var(--text-color);
forced-color-adjust: none;
align-items: center;
gap: .571rem;
font-size: 1.143rem;
display: flex;
}
.react-aria-Radio:before {
box-sizing: border-box;
border: .143rem solid var(--border-color);
background: var(--field-background);
content: "";
border-radius: 1.286rem;
width: 1.286rem;
height: 1.286rem;
transition: all .2s;
display: block;
}
.react-aria-Radio[data-pressed]:before {
border-color: var(--border-color-pressed);
}
.react-aria-Radio[data-selected]:before {
border-width: .429rem;
border-color: var(--highlight-background);
}
.react-aria-Radio[data-selected][data-pressed]:before {
border-color: var(--highlight-background-pressed);
}
.react-aria-Radio[data-focus-visible]:before {
outline: 2px solid var(--focus-ring-color);
outline-offset: 2px;
}
.react-aria-Radio[data-invalid]:before {
border-color: var(--color-invalid);
}
.react-aria-Radio[data-invalid][data-pressed]:before {
border-color: var(--color-pressed-invalid);
}
.react-aria-RadioGroup .react-aria-FieldError {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-RadioGroup [slot="description"] {
font-size: 12px;
}
.react-aria-RadioGroup[data-orientation="horizontal"] {
flex-direction: row;
align-items: center;
}
.react-aria-Radio[data-disabled] {
color: var(--text-color-disabled);
}
.react-aria-Radio[data-disabled]:before {
border-color: var(--border-color-disabled);
}
.react-aria-Switch {
color: var(--text-color);
forced-color-adjust: none;
align-items: center;
gap: .571rem;
font-size: 1.143rem;
display: flex;
}
.react-aria-Switch .indicator {
border: 2px solid var(--border-color);
background: var(--background-color);
border-radius: 1.143rem;
width: 2rem;
height: 1.143rem;
transition: all .2s;
}
.react-aria-Switch .indicator:before {
background: var(--highlight-background);
content: "";
border-radius: 16px;
width: .857rem;
height: .857rem;
margin: .143rem;
transition: all .2s;
display: block;
}
.react-aria-Switch[data-pressed] .indicator {
border-color: var(--border-color-pressed);
}
.react-aria-Switch[data-pressed] .indicator:before {
background: var(--highlight-background-pressed);
}
.react-aria-Switch[data-selected] .indicator {
border-color: var(--highlight-background);
background: var(--highlight-background);
}
.react-aria-Switch[data-selected] .indicator:before {
background: var(--field-background);
transform: translateX(100%);
}
.react-aria-Switch[data-selected][data-pressed] .indicator {
border-color: var(--highlight-background-pressed);
background: var(--highlight-background-pressed);
}
.react-aria-Switch[data-focus-visible] .indicator {
outline: 2px solid var(--focus-ring-color);
outline-offset: 2px;
}
.react-aria-Switch[data-disabled] {
color: var(--text-color-disabled);
}
.react-aria-Switch[data-disabled] .indicator {
border-color: var(--border-color-disabled);
}
.react-aria-Switch[data-disabled] .indicator:before {
background: var(--border-color-disabled);
}
.react-aria-Slider {
max-width: 300px;
color: var(--text-color);
grid-template-columns: 1fr auto;
grid-template-areas: "label output"
"track track";
display: grid;
}
.react-aria-Slider .react-aria-Label {
grid-area: label;
}
.react-aria-Slider .react-aria-SliderOutput {
grid-area: output;
}
.react-aria-Slider .react-aria-SliderTrack {
grid-area: track;
position: relative;
}
.react-aria-Slider .react-aria-SliderTrack:before {
background: var(--border-color);
content: "";
display: block;
position: absolute;
}
.react-aria-Slider .react-aria-SliderThumb {
border: 2px solid var(--background-color);
background: var(--highlight-background);
forced-color-adjust: none;
border-radius: 50%;
width: 1.429rem;
height: 1.429rem;
}
.react-aria-Slider .react-aria-SliderThumb[data-dragging] {
background: var(--highlight-background-pressed);
}
.react-aria-Slider .react-aria-SliderThumb[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
}
.react-aria-Slider[data-orientation="horizontal"] {
flex-direction: column;
width: 300px;
}
.react-aria-Slider[data-orientation="horizontal"] .react-aria-SliderTrack {
width: 100%;
height: 30px;
}
.react-aria-Slider[data-orientation="horizontal"] .react-aria-SliderTrack:before {
width: 100%;
height: 3px;
top: 50%;
transform: translateY(-50%);
}
.react-aria-Slider[data-orientation="horizontal"] .react-aria-SliderThumb {
top: 50%;
}
.react-aria-Slider[data-orientation="vertical"] {
height: 150px;
display: block;
}
.react-aria-Slider[data-orientation="vertical"] .react-aria-Label {
display: none;
}
.react-aria-Slider[data-orientation="vertical"] .react-aria-SliderOutput {
display: none;
}
.react-aria-Slider[data-orientation="vertical"] .react-aria-SliderTrack {
width: 30px;
height: 100%;
}
.react-aria-Slider[data-orientation="vertical"] .react-aria-SliderTrack:before {
width: 3px;
height: 100%;
left: 50%;
transform: translateX(-50%);
}
.react-aria-Slider[data-orientation="vertical"] .react-aria-SliderThumb {
left: 50%;
}
.react-aria-Slider[data-disabled] .react-aria-SliderTrack:before {
background: var(--border-color-disabled);
}
.react-aria-Slider[data-disabled] .react-aria-SliderThumb {
background: var(--border-color-disabled);
}
.react-aria-Calendar {
width: fit-content;
max-width: 100%;
color: var(--text-color);
}
.react-aria-Calendar header {
align-items: center;
margin: 0 4px .5rem;
display: flex;
}
.react-aria-Calendar header .react-aria-Heading {
text-align: center;
flex: 1;
margin: 0;
font-size: 1.375rem;
}
.react-aria-Calendar .react-aria-Button {
width: 2rem;
height: 2rem;
padding: 0;
}
.react-aria-Calendar .react-aria-CalendarCell {
cursor: default;
forced-color-adjust: none;
text-align: center;
border-radius: 6px;
outline: none;
width: 2rem;
margin: 1px;
line-height: 2rem;
}
.react-aria-Calendar .react-aria-CalendarCell[data-outside-month] {
display: none;
}
.react-aria-Calendar .react-aria-CalendarCell[data-pressed] {
background: var(--gray-100);
}
.react-aria-Calendar .react-aria-CalendarCell[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: 2px;
}
.react-aria-Calendar .react-aria-CalendarCell[data-selected] {
background: var(--highlight-background);
color: var(--highlight-foreground);
}
.react-aria-Calendar .react-aria-CalendarCell[data-disabled] {
color: var(--text-color-disabled);
}
.react-aria-Calendar .react-aria-CalendarCell[data-unavailable] {
color: var(--color-invalid);
text-decoration: line-through;
}
.react-aria-Calendar .react-aria-CalendarCell[data-invalid] {
background: var(--color-invalid);
color: var(--highlight-foreground);
}
.react-aria-Calendar [slot="errorMessage"] {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-DateField {
color: var(--text-color);
}
.react-aria-DateInput {
border: 1px solid var(--border-color);
background: var(--field-background);
forced-color-adjust: none;
white-space: nowrap;
border-radius: 6px;
width: fit-content;
min-width: 150px;
padding: 4px;
display: flex;
}
.react-aria-DateInput[data-focus-within] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-DateSegment {
color: var(--text-color);
font-variant-numeric: tabular-nums;
text-align: end;
padding: 0 2px;
}
.react-aria-DateSegment[data-type="literal"] {
padding: 0;
}
.react-aria-DateSegment[data-placeholder] {
color: var(--text-color-placeholder);
font-style: italic;
}
.react-aria-DateSegment:focus {
background: var(--highlight-background);
caret-color: rgba(0, 0, 0, 0);
color: var(--highlight-foreground);
border-radius: 4px;
outline: none;
}
.react-aria-DateSegment[data-invalid] {
color: var(--color-invalid);
}
.react-aria-DateSegment[data-invalid]:focus {
background: var(--highlight-background-invalid);
color: var(--highlight-foreground);
}
.react-aria-DateField .react-aria-FieldError {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-DateField [slot="description"] {
font-size: 12px;
}
.react-aria-RangeCalendar {
width: fit-content;
max-width: 100%;
color: var(--text-color);
}
.react-aria-RangeCalendar header {
align-items: center;
margin: 0 4px .5rem;
display: flex;
}
.react-aria-RangeCalendar header .react-aria-Heading {
text-align: center;
flex: 1;
margin: 0;
font-size: 1.375rem;
}
.react-aria-RangeCalendar .react-aria-Button {
width: 2rem;
height: 2rem;
padding: 0;
}
.react-aria-RangeCalendar table {
border-collapse: collapse;
}
.react-aria-RangeCalendar table td {
padding: 2px 0;
}
.react-aria-RangeCalendar .react-aria-CalendarCell {
cursor: default;
forced-color-adjust: none;
text-align: center;
border-radius: 6px;
outline: none;
width: 2.286rem;
line-height: 2.286rem;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-outside-month] {
display: none;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-pressed] {
background: var(--gray-100);
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-focus-visible] {
outline: 2px solid var(--highlight-background);
outline-offset: -2px;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-selected] {
background: var(--highlight-background);
color: var(--highlight-foreground);
border-radius: 0;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-selected][data-focus-visible] {
outline-color: var(--highlight-foreground);
outline-offset: -3px;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-selection-start] {
border-start-start-radius: 6px;
border-end-start-radius: 6px;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-selection-end] {
border-start-end-radius: 6px;
border-end-end-radius: 6px;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-disabled] {
color: var(--text-color-disabled);
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-unavailable] {
color: var(--color-invalid);
text-decoration: line-through;
}
.react-aria-RangeCalendar .react-aria-CalendarCell[data-invalid] {
background: var(--color-invalid);
color: var(--highlight-foreground);
}
.react-aria-RangeCalendar [slot="errorMessage"] {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-Meter {
--fill-color: forestgreen;
width: 250px;
color: var(--text-color);
grid-template-columns: 1fr auto;
grid-template-areas: "label value"
"bar bar";
gap: 4px;
display: grid;
}
.react-aria-Meter .value {
grid-area: value;
}
.react-aria-Meter .bar {
height: 10px;
box-shadow: inset 0px 0px 0px 1px var(--border-color);
forced-color-adjust: none;
border-radius: 5px;
grid-area: bar;
overflow: hidden;
}
.react-aria-Meter .fill {
background: var(--fill-color);
height: 100%;
}
@media (forced-colors: active) {
.react-aria-Meter {
--fill-color: Highlight;
}
}
.react-aria-ProgressBar {
width: 250px;
color: var(--text-color);
grid-template-columns: 1fr auto;
grid-template-areas: "label value"
"bar bar";
gap: 4px;
display: grid;
}
.react-aria-ProgressBar .value {
grid-area: value;
}
.react-aria-ProgressBar .bar {
height: 10px;
box-shadow: inset 0px 0px 0px 1px var(--border-color);
forced-color-adjust: none;
will-change: transform;
border-radius: 5px;
grid-area: bar;
overflow: hidden;
}
.react-aria-ProgressBar .fill {
background: var(--highlight-background);
height: 100%;
}
.react-aria-ProgressBar:not([aria-valuenow]) .fill {
border-radius: inherit;
will-change: transform;
width: 120px;
animation: 1.5s ease-in-out infinite indeterminate;
}
@keyframes indeterminate {
from {
transform: translateX(-100%);
}
to {
transform: translateX(250px);
}
}
.react-aria-Spinner {
--spinner-size: 1.5rem;
--spinner-track-color: color-mix(in srgb,
var(--highlight-background) 20%,
transparent);
color: var(--highlight-background);
vertical-align: middle;
align-items: center;
gap: .5rem;
display: inline-flex;
}
.react-aria-Spinner[data-size="xs"] {
--spinner-size: 1rem;
}
.react-aria-Spinner[data-size="sm"] {
--spinner-size: 1.5rem;
}
.react-aria-Spinner[data-size="lg"] {
--spinner-size: 2rem;
}
.react-aria-Spinner .spinner-svg {
width: var(--spinner-size);
height: var(--spinner-size);
will-change: transform;
animation: .8s linear infinite spinner-rotate;
}
.react-aria-Spinner .spinner-track {
stroke: var(--spinner-track-color);
stroke-width: 3px;
}
.react-aria-Spinner .spinner-indicator {
stroke: currentColor;
stroke-dasharray: 42 57;
stroke-linecap: round;
stroke-width: 3px;
}
.react-aria-Spinner .spinner-label {
color: var(--text-color);
font-size: .875rem;
line-height: 1;
}
.react-aria-Spinner .sr-only {
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
position: absolute;
overflow: hidden;
}
@keyframes spinner-rotate {
to {
transform: rotate(360deg);
}
}
@media (prefers-reduced-motion: reduce) {
.react-aria-Spinner .spinner-svg {
animation: none;
}
}
.react-aria-SearchField {
width: fit-content;
color: var(--text-color);
grid-template-columns: 1fr auto;
grid-template-areas: "label label"
"input button"
"help help";
align-items: center;
display: grid;
}
.react-aria-SearchField .react-aria-Input {
border: 1px solid var(--border-color);
background: var(--field-background);
color: var(--field-text-color);
border-radius: 6px;
grid-area: input;
margin: 0;
padding: .286rem 1.714rem .286rem .286rem;
font-size: 1.143rem;
}
.react-aria-SearchField .react-aria-Input::-webkit-search-cancel-button {
-webkit-appearance: none;
}
.react-aria-SearchField .react-aria-Input::-webkit-search-decoration {
-webkit-appearance: none;
}
.react-aria-SearchField .react-aria-Input[data-focused] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-SearchField .react-aria-Button {
background: var(--gray-500);
width: 1.143rem;
height: 1.143rem;
color: var(--gray-50);
text-align: center;
vertical-align: middle;
border: none;
border-radius: 1.143rem;
grid-area: button;
margin-left: -1.429rem;
padding: 0;
font-size: .857rem;
line-height: .857rem;
}
.react-aria-SearchField .react-aria-Button[data-pressed] {
background: var(--gray-600);
}
.react-aria-SearchField[data-empty] button {
display: none;
}
.react-aria-SearchField .react-aria-Input[data-invalid] {
border-color: var(--color-invalid);
}
.react-aria-SearchField .react-aria-FieldError {
color: var(--color-invalid);
grid-area: help;
font-size: 12px;
}
.react-aria-SearchField [slot="description"] {
grid-area: help;
font-size: 12px;
}
.react-aria-SearchField .react-aria-Input[data-disabled] {
border-color: var(--border-color-disabled);
color: var(--text-color-disabled);
}
.react-aria-TimeField {
color: var(--text-color);
}
.react-aria-DateInput {
border: 1px solid var(--border-color);
background: var(--field-background);
forced-color-adjust: none;
white-space: nowrap;
border-radius: 6px;
width: fit-content;
min-width: 150px;
padding: 4px;
display: flex;
}
.react-aria-DateInput[data-focus-within] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-DateSegment {
color: var(--text-color);
font-variant-numeric: tabular-nums;
text-align: end;
padding: 0 2px;
}
.react-aria-DateSegment[data-type="literal"] {
padding: 0;
}
.react-aria-DateSegment[data-placeholder] {
color: var(--text-color-placeholder);
font-style: italic;
}
.react-aria-DateSegment:focus {
background: var(--highlight-background);
caret-color: rgba(0, 0, 0, 0);
color: var(--highlight-foreground);
border-radius: 4px;
outline: none;
}
.react-aria-DateSegment[data-invalid] {
color: var(--color-invalid);
}
.react-aria-DateSegment[data-invalid]:focus {
background: var(--highlight-background-invalid);
color: var(--highlight-foreground);
}
.react-aria-TimeField .react-aria-FieldError {
color: var(--color-invalid);
font-size: 12px;
}
.react-aria-TimeField [slot="description"] {
font-size: 12px;
}
.react-aria-ListBox {
width: 250px;
min-height: 100px;
max-height: inherit;
box-sizing: border-box;
border: 1px solid var(--border-color);
background: var(--overlay-background);
forced-color-adjust: none;
border-radius: 6px;
outline: none;
flex-direction: column;
max-height: 300px;
padding: 2px;
display: flex;
overflow: auto;
}
.react-aria-ListBox[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-ListBoxItem {
color: var(--text-color);
cursor: default;
border-radius: 6px;
outline: none;
flex-direction: column;
margin: 2px;
padding: .286rem .571rem;
font-size: 1.072rem;
display: flex;
position: relative;
}
.react-aria-ListBoxItem[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -2px;
}
.react-aria-ListBoxItem[data-selected] {
background: var(--highlight-background);
color: var(--highlight-foreground);
}
.react-aria-ListBoxItem[data-selected][data-focus-visible] {
outline-color: var(--highlight-foreground);
outline-offset: -4px;
}
.react-aria-ListBoxItem[href] {
cursor: pointer;
-webkit-touch-callout: none;
text-decoration: none;
}
.react-aria-ListBox .react-aria-Section:not(:first-child) {
margin-top: 12px;
}
.react-aria-ListBox .react-aria-Header {
padding: 0 .714rem;
font-size: 1.143rem;
font-weight: bold;
}
.react-aria-ListBoxItem [slot="label"] {
font-weight: bold;
}
.react-aria-ListBoxItem [slot="description"] {
font-size: small;
}
.react-aria-ListBox[data-orientation="horizontal"], .react-aria-ListBox[data-layout="grid"] {
flex-direction: row;
width: fit-content;
max-width: 100%;
padding: 4px;
}
:is(.react-aria-ListBox[data-orientation="horizontal"], .react-aria-ListBox[data-layout="grid"]) .react-aria-ListBoxItem {
margin: 0;
padding: 4px;
position: relative;
}
:is(.react-aria-ListBox[data-orientation="horizontal"], .react-aria-ListBox[data-layout="grid"]) .react-aria-ListBoxItem img {
aspect-ratio: 1;
object-fit: cover;
border-radius: 4px;
max-width: 150px;
margin-bottom: 4px;
transition: box-shadow .2s;
}
:is(.react-aria-ListBox[data-orientation="horizontal"], .react-aria-ListBox[data-layout="grid"]) .react-aria-ListBoxItem[data-hovered] img {
box-shadow: 0 0 8px var(--highlight-background-hover);
}
:is(.react-aria-ListBox[data-orientation="horizontal"], .react-aria-ListBox[data-layout="grid"]) .react-aria-ListBoxItem[data-selected] {
color: inherit;
background: none;
}
:is(.react-aria-ListBox[data-orientation="horizontal"], .react-aria-ListBox[data-layout="grid"]) .react-aria-ListBoxItem[data-selected] img {
box-shadow: 0 0 12px var(--highlight-background-hover);
}
:is(.react-aria-ListBox[data-orientation="horizontal"], .react-aria-ListBox[data-layout="grid"]) .react-aria-ListBoxItem[data-selected]:after {
box-sizing: border-box;
border: 2px solid var(--highlight-foreground);
alt: " ";
background: var(--highlight-background);
width: 22px;
height: 22px;
color: var(--highlight-foreground);
content: "✓";
content: "✓" / "";
border-radius: 22px;
justify-content: center;
align-items: center;
font-size: 14px;
line-height: 1em;
display: flex;
position: absolute;
top: 8px;
right: 8px;
box-shadow: 0 0 8px rgba(0, 0, 0, .5);
}
.react-aria-ListBox[data-layout="grid"] {
scrollbar-gutter: stable;
grid-template-columns: 1fr 1fr;
display: grid;
}
.react-aria-ListBox[data-layout="grid"][data-orientation="horizontal"] {
grid-template-rows: 58px 58px;
grid-template-columns: none;
grid-auto-columns: 250px;
grid-auto-flow: column;
gap: 8px;
width: 100%;
max-width: none;
max-height: 200px;
display: grid;
}
.react-aria-ListBox[data-layout="grid"][data-orientation="horizontal"] .react-aria-ListBoxItem {
grid-template: "image ." 1fr
"image title"
"image description"
"image ." 1fr
/ auto 1fr;
column-gap: 8px;
display: grid;
}
.react-aria-ListBox[data-layout="grid"][data-orientation="horizontal"] .react-aria-ListBoxItem img {
grid-area: image;
width: 50px;
height: 50px;
margin-bottom: 0;
}
.react-aria-ListBox[data-layout="grid"][data-orientation="horizontal"] .react-aria-ListBoxItem [slot="label"] {
grid-area: title;
}
.react-aria-ListBox[data-layout="grid"][data-orientation="horizontal"] .react-aria-ListBoxItem [slot="description"] {
grid-area: description;
}
.react-aria-ListBoxItem[data-disabled] {
color: var(--text-color-disabled);
}
.react-aria-ListBox[data-empty] {
justify-content: center;
align-items: center;
font-style: italic;
}
.react-aria-ListBoxItem[data-dragging] {
opacity: .6;
}
.react-aria-ListBox[data-drop-target] {
background: var(--highlight-overlay);
outline: 2px solid var(--highlight-background);
outline-offset: -1px;
}
.react-aria-ListBoxItem[data-drop-target] {
background: var(--highlight-overlay);
outline: 2px solid var(--highlight-background);
}
.react-aria-DropIndicator[data-drop-target] {
outline: 1px solid var(--highlight-background);
}
.react-aria-GridList {
width: 250px;
min-height: 100px;
max-height: inherit;
box-sizing: border-box;
border: 1px solid var(--border-color);
background: var(--overlay-background);
forced-color-adjust: none;
border-radius: 6px;
outline: none;
flex-direction: column;
gap: 2px;
max-height: 300px;
padding: 4px;
display: flex;
overflow: auto;
}
.react-aria-GridList[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -1px;
}
.react-aria-GridList .react-aria-GridListItem {
min-height: 28px;
color: var(--text-color);
cursor: default;
border-radius: 6px;
outline: none;
align-items: center;
gap: .571rem;
padding: .286rem .286rem .286rem .571rem;
font-size: 1.072rem;
display: flex;
position: relative;
transform: translateZ(0);
}
.react-aria-GridList .react-aria-GridListItem[data-focus-visible] {
outline: 2px solid var(--focus-ring-color);
outline-offset: -2px;
}
.react-aria-GridList .react-aria-GridListItem[data-pressed] {
background: var(---basic-300);
}
.react-aria-GridList .react-aria-GridListItem[data-selected] {
background: var(--highlight-background);
color: var(--highlight-foreground);
--focus-ring-color: var(--highlight-foreground);
}
.react-aria-GridList .react-aria-GridListItem[data-selected][data-focus-visible] {
outline-color: var(--highlight-foreground);
outline-offset: -4px;
}
.react-aria-GridList .react-aria-GridListItem[data-selected] .react-aria-Button {
color: var(--highlight-foreground);
--highlight-hover: rgba(255, 255, 255, .1);
--highlight-pressed: rgba(255, 255, 255, .2);
}
.react-aria-GridList .react-aria-GridListItem[data-disabled] {
color: var(--text-color-disabled);
}
.react-aria-GridList .react-aria-GridListItem .react-aria-Button:not([slot]) {
margin-left: auto;
}
.react-aria-GridList .react-aria-GridListItem .react-aria-Button {
background: none;
border: none;
padding: .286rem .429rem;
font-size: 1.2rem;
line-height: 1.2em;
transition: background .2s;
}
.react-aria-GridList .react-aria-GridListItem .react-aria-Button[data-hovered] {
background: var(--highlight-hover);
}
.react-aria-GridList .react-aria-GridListItem .react-aria-Button[data-pressed] {
background: var(--highlight-pressed);
box-shadow: none;
}
@supports selector(:has(.foo)) {
.react-aria-GridList {
gap: 0;
}
.react-aria-GridList .react-aria-GridListItem[data-selected]:has( + [data-selected]) {
border-end-end-radius: 0;
border-end-start-radius: 0;
}
.react-aria-GridList .react-aria-GridListItem[data-selec