.hy-menu-level-container { &--mobile { background-color: var(--grayscale-white); display: block; height: 0; left: 0; position: absolute; top: 0; transform: translateX(100%); transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out, opacity 0.3s ease-in-out; visibility: hidden !important; width: 100%; &.is-open { height: auto; transform: translateX(0); visibility: visible !important; } } &--desktop { align-items: flex-start; display: flex; flex-flow: column; //max-width: 500px; // ?? Ask Mikko width: 100%; &.is-open { display: block; visibility: visible; } &:not(.hy-menu-level-container--level-1):not(.hy-menu-level-container--level-2) { display: none; } &.hy-menu-level-container--level-2 { background-color: var(--grayscale-background-box); } } &--sidepanel { background-color: var(--grayscale-white); border-left: 1px solid rgba(0, 0, 0, 0.2); display: flex; flex-direction: column; height: 100vh; left: 0; margin: 0; padding-left: 13px; padding-right: 13px; padding-top: 240px; position: absolute; top: 0; visibility: visible; width: 261px; z-index: 123; &:not(.hy-menu-level-container--level-1) { display: none; min-height: var(--minHeight); transform: translateX(calc(100% - 1px)); &.active-trail-panel, &.is-open { display: flex; } } &.is-open, &.active-trail-panel { height: 100vh; min-height: var(--minHeight); } } &--sidenav { flex-flow: column; margin: 0; padding: 0; position: relative; &:not(.hy-menu-level-container--level-1) { opacity: 0; display: none; visibility: hidden; &.is-closed { animation-direction: normal; animation-duration: 0.25s; animation-fill-mode: backwards; animation-name: slide-panel-in; } &.is-open { animation-direction: normal; animation-duration: 0.25s; animation-fill-mode: forwards; animation-name: slide-panel-in; display: flex; height: auto; opacity: 1; visibility: visible; } } &.is-open.is-open-on-top { display: none; transform: none !important; } &.hy-menu-level-container.is-open { max-width: 280px; } .hy-menu-level-container--level-1 { display: flex; } &:not(.hy-menu-level-container--level-1) { background-color: var(--grayscale-white); border-left: 1px solid rgba(0, 0, 0, 0.2); display: flex; flex-direction: column; height: 100vh; left: 0; margin: -100vh 0; min-height: var(--minHeight); padding-left: 13px; padding-right: 13px; position: absolute; transform: translateX(calc(100% - 1px)); width: 281px; z-index: 123; &.hy-menu-level-container--level-2 { transform: translateX(calc(100% + 16px)) !important; } &:before { background: white; border-bottom: 1px solid rgba(0, 0, 0, 0.2); content: ''; display: none; height: 96px; left: -1px; position: absolute; top: 70vh; width: 261px; } } .hy-menu-level-container--level-2 { margin: -100vh 0; padding: 100vh 13px; top: 0; } .hy-menu-level-container--level-3, .hy-menu-level-container--level-4, .hy-menu-level-container--level-5, .hy-menu-level-container--level-6, .hy-menu-level-container--level-7 { padding: 100vh 13px; top: 100vh; } } } @keyframes slide-panel-in { from { transform: translateX(0); display: none; opacity: 0; z-index: 1; } 95% { display: flex; } to { transform: translateX(calc(100% - 1px)); opacity: 1; z-index: 123; } } @keyframes slide-panel-out { from { transform: translateX(100%); opacity: 1; z-index: 123; } 95% { transform: translateX(0); opacity: 0; z-index: 1; } to { display: none; } }