/* Oui Blocks - context menus (site extra). Colours follow the design tokens when the site set them. */
.ouib-ctxmenu {
    --ouib-ctx-bg: var(--oui-bg-elevated, #fff);
    --ouib-ctx-fg: var(--oui-text, #1e293b);
    --ouib-ctx-hover: var(--oui-border, #e2e8f0);
    --ouib-ctx-line: var(--oui-border, #e2e8f0);
    position: fixed;
    z-index: 2147483000; /* above consent banners and other overlays (99999…): it is transient and opened on purpose */
    min-width: 12rem;
    max-width: 20rem;
    padding: .25rem;
    border: 1px solid var(--ouib-ctx-line);
    border-radius: 8px;
    background: var(--ouib-ctx-bg);
    color: var(--ouib-ctx-fg);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .12), 0 4px 6px -4px rgba(0, 0, 0, .08);
    font: inherit;
    font-size: .9375rem;
}
.ouib-ctxmenu--dark {
    --ouib-ctx-bg: #1e293b;
    --ouib-ctx-fg: #f1f5f9;
    --ouib-ctx-hover: #334155;
    --ouib-ctx-line: #334155;
}
.ouib-ctxmenu__item {
    display: flex;
    align-items: center;
    gap: .5rem;
    width: 100%;
    padding: .5rem .75rem;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    cursor: pointer;
}
.ouib-ctxmenu__item:hover,
.ouib-ctxmenu__item:focus-visible { background: var(--ouib-ctx-hover); outline: none; }
.ouib-ctxmenu__item:focus-visible { box-shadow: inset 0 0 0 2px currentColor; }
.ouib-ctxmenu__divider { height: 1px; margin: .25rem 0; background: var(--ouib-ctx-line); }
@media (prefers-reduced-motion: no-preference) {
    .ouib-ctxmenu { animation: ouib-ctx-in .12s ease-out; }
    @keyframes ouib-ctx-in { from { opacity: 0; transform: scale(.98); } }
}
