@harvest-profit/npk
Version:
NPK UI Design System
112 lines (91 loc) • 2.33 kB
CSS
.Overlay {
display: flex;
flex-direction: column;
min-width: var(--menu-min-width, 200px);
width: max-content;
position: absolute;
top: 0;
left: 0;
background: var(--menu-bg-color);
color: var(--menu-fg-color);
font-weight: normal;
padding: var(--size-6) var(--size-6);
border-radius: var(--control-radius);
font-size: var(--size-13);
box-shadow: var(--shadow-floating-small);
--btn-font-weight: normal;
&[data-component="submenu"] {
min-width: var(--menu-menu-min-width, 150px);
}
&[data-variant="select"] {
min-width: var(--menu-select-min-width, 225px);
}
& > [data-component="menu-contents"],
& > * > .List {
display: flex;
flex-direction: column;
}
& > [data-component="menu-arrow"] {
color: var(--menu-bg-color);
}
&[data-variant="menu"] {
min-width: var(--menu-menu-min-width, 150px);
--menu-select-option-divider-color: none;
}
&[data-variant="select"],
&[data-variant="menu"] {
padding: var(--size-6) 0;
& > [data-component="menu-contents"],
& > [data-component="menu-contents"] > .List {
& > * {
border-top: var(--menu-select-option-divider-color, 1px solid var(--menu-option-divider-color));
}
& > *:first-child:not(.Section) {
border-top: none;
}
}
}
.Header, .Footer, .Item {
display: block;
padding: var(--size-6) var(--size-12);
--btn-font-weight: var(--control-button-weight);
&[data-block="true"] {
padding: 0;
}
&:first-child {
padding-top: 0;
}
&:last-child {
padding-bottom: 0;
}
}
.List {
max-height: var(--menu-list-height, 350px);
overflow-y: scroll;
& > * {
flex-shrink: 0;
}
}
.Divider {
height: 1px;
background: var(--menu-border-color);
margin: 6px 0px;
border: none;
padding: 0;
& + * {
--menu-select-option-divider-color: none;
}
}
.Section {
background: var(--menu-section-bg-color);
padding: var(--size-6) var(--size-12);
color: var(--color-fg-muted);
font-weight: 600;
font-size: var(--size-12);
border-top: 1px solid var(--menu-option-divider-color);
border-bottom: 1px solid var(--menu-option-divider-color);
& + * {
--menu-select-option-divider-color: none;
}
}
}