@trimble-oss/moduswebcomponents
Version:
Modus Web Components is a modern, accessible UI library built with Stencil JS that provides reusable web components following Trimble's Modus design system. This updated version focuses on improved flexibility, enhanced theming options, comprehensive cust
135 lines (133 loc) • 7.14 kB
CSS
/**
* This component uses Tailwind CSS and DaisyUI.
* Only add styles here that should not be applied by Tailwind, Daisy, or the theme.
*/
modus-wc-menu-item .modus-wc-menu-item button {
align-items: center;
border-radius: 0;
display: flex;
width: 100%;
}
modus-wc-menu-item .modus-wc-menu-item button:hover {
background-color: transparent;
}
modus-wc-menu-item .modus-wc-menu-item button:focus {
background-color: transparent;
}
modus-wc-menu-item .modus-wc-menu-item button.modus-wc-menu-dropdown-toggle::after {
color: var(--modus-wc-color-gray-6);
}
modus-wc-menu-item .modus-wc-menu-item button .modus-wc-menu-item-content {
align-items: center;
display: flex;
width: 100%;
}
modus-wc-menu-item .modus-wc-menu-item button .modus-wc-menu-item-content [slot=start-icon] {
padding-inline-end: var(--modus-wc-spacing-lg);
}
modus-wc-menu-item .modus-wc-menu-item button .modus-wc-menu-item-content modus-wc-checkbox {
padding-inline-end: var(--modus-wc-spacing-lg);
}
modus-wc-menu-item .modus-wc-menu-item button .modus-wc-menu-item-content .modus-wc-menu-item-labels {
padding-inline-end: var(--modus-wc-spacing-xs);
padding-inline-start: var(--modus-wc-spacing-xs);
}
modus-wc-menu-item .modus-wc-menu-item button .modus-wc-menu-item-content .modus-wc-menu-item-sublabel {
font-size: var(--modus-wc-font-size-sm);
}
modus-wc-menu-item .modus-wc-menu-item button .modus-wc-menu-item-content .modus-wc-menu-item-selected-icon {
margin-left: auto;
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-sm button {
font-size: var(--modus-wc-font-size-sm);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-sm button .modus-wc-menu-item-sublabel {
font-size: var(--modus-wc-font-size-xs);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-md button {
font-size: var(--modus-wc-font-size-md);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-md button .modus-wc-menu-item-sublabel {
font-size: var(--modus-wc-font-size-sm);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-lg button {
font-size: var(--modus-wc-font-size-lg);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-lg button .modus-wc-menu-item-sublabel {
font-size: var(--modus-wc-font-size-md);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-bordered {
border-bottom: var(--modus-wc-border-width-xs) solid var(--modus-wc-color-base-100);
border-radius: 0;
border-top: var(--modus-wc-border-width-xs) solid var(--modus-wc-color-base-100);
}
modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected) {
color: var(--modus-wc-color-gray-10);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-selected {
background-color: var(--modus-wc-color-blue-pale);
border-radius: inherit;
color: var(--modus-wc-color-primary);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-selected:focus {
background-color: var(--modus-wc-color-blue-pale);
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-selected button:hover, modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-selected button:focus {
background-color: transparent;
box-shadow: none;
color: inherit;
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-disabled {
opacity: 0.4;
}
modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-disabled button {
pointer-events: none;
}
modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):hover {
background-color: var(--modus-wc-color-gray-0);
color: inherit;
outline: none;
}
modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):focus:not(:focus-visible), modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)).modus-wc-arrow-focused {
background-color: var(--modus-wc-color-gray-0);
color: inherit;
outline: none;
}
modus-wc-menu-item .modus-wc-menu-item:focus-visible {
background-color: transparent;
outline: 2px solid var(--modus-wc-color-trimble-blue);
outline-offset: -2px;
}
[data-theme=modus-classic-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected),
[data-theme=modus-modern-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected),
[data-theme=connect-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected) {
color: var(--modus-wc-color-gray-light);
}
[data-theme=modus-classic-dark] modus-wc-menu-item .modus-wc-menu-item button.modus-wc-menu-dropdown-toggle::after,
[data-theme=modus-modern-dark] modus-wc-menu-item .modus-wc-menu-item button.modus-wc-menu-dropdown-toggle::after,
[data-theme=connect-dark] modus-wc-menu-item .modus-wc-menu-item button.modus-wc-menu-dropdown-toggle::after {
color: var(--modus-wc-color-gray-3);
}
[data-theme=modus-classic-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):hover,
[data-theme=modus-modern-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):hover,
[data-theme=connect-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):hover {
background-color: var(--modus-wc-color-gray-9);
color: inherit;
outline: none;
}
[data-theme=modus-classic-dark] modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-selected,
[data-theme=modus-modern-dark] modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-selected,
[data-theme=connect-dark] modus-wc-menu-item .modus-wc-menu-item.modus-wc-menu-item-selected {
background-color: color-mix(in sRGB, var(--modus-wc-color-primary) 30%, transparent);
}
[data-theme=modus-classic-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):focus:not(:focus-visible), [data-theme=modus-classic-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)).modus-wc-arrow-focused,
[data-theme=modus-modern-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):focus:not(:focus-visible),
[data-theme=modus-modern-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)).modus-wc-arrow-focused,
[data-theme=connect-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)):focus:not(:focus-visible),
[data-theme=connect-dark] modus-wc-menu-item .modus-wc-menu-item:not(.modus-wc-menu-item-selected):not(.modus-wc-menu-item-disabled):not(:has(.modus-wc-menu-dropdown)).modus-wc-arrow-focused {
background-color: var(--modus-wc-color-gray-9);
}
.modus-wc-menu-item-tooltip {
display: inline-block;
width: auto;
}