/* =========================================================
   MENU POPOVER
   ========================================================= */

.menu-popover {
    position: fixed;

    top: 0;
    left: 0;

    z-index: 1000;

    min-width: 238px;
    max-width: 320px;

    padding: 6px;

    box-sizing: border-box;

    background: #ffffff;

    border: 1px solid #e4e7ed;

    border-radius: 9px;

    box-shadow:
        0 12px 30px rgba(28, 36, 52, .10),
        0 3px 8px rgba(28, 36, 52, .05);

    transform-origin: top left;

    animation:
        menuPopoverIn
        .12s
        ease-out;
}


/* =========================================================
   HIDDEN
   ========================================================= */

.menu-popover.hidden {
    display: none;
}


/* =========================================================
   MENU ITEM
   ========================================================= */

.menu-popover button {
    width: 100%;
    min-height: 34px;

    display: flex;
    align-items: center;

    box-sizing: border-box;

    padding: 0 10px;

    border: 0;
    border-radius: 6px;

    background: transparent;

    color: #3f4a5d;

    font-family: inherit;
    font-size: 13px;
    font-weight: 450;

    line-height: 1;

    text-align: left;

    cursor: pointer;

    white-space: nowrap;

    user-select: none;

    transition:
        background-color .12s ease,
        color .12s ease;
}


/* =========================================================
   HOVER
   ========================================================= */

.menu-popover button:hover {
    background: #f1f3f8;

    color: #1f2937;
}


/* =========================================================
   ACTIVE
   ========================================================= */

.menu-popover button:active {
    background: #e7ebf3;
}


/* =========================================================
   FOCUS
   ========================================================= */

.menu-popover button:focus-visible {
    outline: none;

    box-shadow:
        inset 0 0 0 1px
        rgba(86, 103, 232, .35);
}


/* =========================================================
   MENU LABEL
   ========================================================= */

.menu-popover .menu-item-label {
    flex: 1;

    min-width: 0;

    overflow: hidden;

    text-overflow: ellipsis;

    white-space: nowrap;
}


/* =========================================================
   SHORTCUT
   ========================================================= */

.menu-popover .menu-item-shortcut {
    margin-left: 28px;

    color: #98a0af;

    font-size: 11px;
    font-weight: 450;

    line-height: 1;

    letter-spacing: .1px;

    white-space: nowrap;
}


/* =========================================================
   SUBMENU ARROW
   ========================================================= */

.menu-popover .menu-item-arrow {
    margin-left: 18px;

    color: #9aa2b1;

    font-size: 14px;
    font-weight: 400;

    line-height: 1;

    transform: translateY(-1px);
}


/* =========================================================
   SEPARATOR
   ========================================================= */

.menu-popover .menu-separator {
    height: 1px;

    margin: 5px 6px;

    background: #eceef2;
}


/* =========================================================
   DISABLED
   ========================================================= */

.menu-popover button.is-disabled,
.menu-popover button:disabled {
    color: #aeb4bf;

    cursor: default;

    pointer-events: none;
}


/* =========================================================
   DANGER
   ========================================================= */

.menu-popover button.is-danger {
    color: #c94b5d;
}


.menu-popover button.is-danger:hover {
    background: #fff1f3;

    color: #b9384c;
}


/* =========================================================
   MENU OPEN STATE
   ========================================================= */

.menu-bar button.is-open {
    background: #e9edf5;

    color: #1f2937;
}


/* =========================================================
   ANIMATION
   ========================================================= */

@keyframes menuPopoverIn {

    from {
        opacity: 0;

        transform:
            translateY(-3px)
            scale(.985);
    }

    to {
        opacity: 1;

        transform:
            translateY(0)
            scale(1);
    }
}