.sidebar {
    position: fixed;
    top: 0;
    right: 0;
    height: 100dvh;
    width: 250px;
    z-index: 999;

    padding-left: 2rem;
    padding-top: 2rem;

    background-color: var(--color-background);
    background-clip: padding-box;
    border: 2px solid var(--color-border);
    border-radius: 10px;
    box-shadow: 0 4px 10px var(--color-shadow);

    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: flex-start;
    
    /* Animation properties */
    transform: translateX(100%);
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
    visibility: hidden;
}

.sidebar.open {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
}

.sidebar li {
    width: 100%;
}

.sidebar a {
    width: 100%;
}

.menu-button {
    display: none;
    margin-left: auto;
}

/* Small tablets and large phones */
@media(max-width: 550px) {
    .hideOnMobile {
        display: none;
    }
    .menu-button {
        display: block;
    }
}
