.df-game-menu {
    position: relative;
    z-index: 1;
    pointer-events: auto;
}

.df-game-menu.is-open {
    z-index: 2;
}

.df-game-menu__panel {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    z-index: 3;
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    min-width: min(340px, 78vw);
    max-height: min(
        70vh,
        calc(100dvh - var(--df-powered-by-grow-height, 26px) - 120px)
    );
    padding: 8px 0;
    border: 4px solid var(--df-green);
    background: var(--df-deep);
    box-shadow: 0 12px 0 rgba(13, 56, 82, 0.24);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.df-game-menu__panel[hidden] {
    display: none !important;
}

.df-game-menu__item {
    display: block;
    width: 100%;
    margin: 0;
    padding: 14px 24px;
    border: 0;
    background: transparent;
    color: var(--df-white);
    font-family: inherit;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
}

.df-game-menu__item:hover,
.df-game-menu__item:focus-visible {
    background: rgba(255, 255, 255, 0.1);
    outline: none;
}

.df-game-menu__item + .df-game-menu__item {
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

body.df-page:not(.df-portrait-flow) .df-scale-frame .df-game-menu__item {
    font-size: 22px !important;
    padding: 14px 24px !important;
}

@media screen and (max-width: 1024px) {
    .df-game-menu__item {
        font-size: 17px;
        padding: 12px 18px;
    }

    .df-game-menu__panel {
        min-width: min(280px, 86vw);
    }
}

@media screen and (orientation: landscape) and (max-width: 1199px),
    screen and (orientation: landscape) and (max-height: 700px) {
    .df-game-menu__panel {
        max-height: none;
        overflow: visible;
        overscroll-behavior: visible;
        -webkit-overflow-scrolling: auto;
    }
}
