:host {
outline: none;
user-select: none;
font-size: 12px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.context-menu {
display: flex;
flex-direction: column;
min-width: 120px;
padding: 4px 0;
}
.context-menu-item {
position: relative;
padding: 4px 12px;
cursor: pointer;
white-space: nowrap;
&:hover {
background: var(
--psp-context-menu--hover--background,
var(--psp-active--background, rgba(0, 0, 0, 0.08))
);
color: var(--psp-context-menu--hover--color, inherit);
}
&.disabled {
opacity: 0.4;
cursor: default;
&:hover {
background: transparent;
color: inherit;
}
}
&.has-submenu {
display: flex;
align-items: center;
&::after {
content: "▸";
margin-left: auto;
padding-left: 12px;
}
&:hover > .context-menu-submenu {
display: flex;
}
}
}
.context-menu-submenu {
display: none;
position: absolute;
left: 100%;
top: -5px;
max-height: 50vh;
overflow-y: auto;
background-color: var(--psp--background-color, white);
border: 1px solid var(--psp-inactive--color);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.context-menu-header {
padding: 4px 12px 2px;
cursor: default;
white-space: nowrap;
font-size: 9px;
text-transform: uppercase;
color: var(--psp-inactive--color, #ababab);
}