:root {
    --navbar-height: 3.25rem;
}

.navbar {
    height: var(--navbar-height);
    transition: transform 0.25s ease;
}
.navbar-hidden .navbar {
    transform: translateY(-100%);
}
.navbar-hidden .sidebar {
    top: 0;
    height: 100vh;
}
.navbar-hidden .content {
    padding-top: 0;
}

.sidebar {
    position: fixed;
    top: var(--navbar-height);
    left: 0;
    width: 250px;
    height: calc(100vh - var(--navbar-height));
    background-color: #0A0A0A;

    display: flex;
    flex-direction: column;
    transition: transform 0.25s ease, top 0.25s ease, height 0.25s ease;
    filter: drop-shadow(8px 8px 7px black);
}

.no-transition {
    transition: none !important;
}

.sidebar-toggle {
    position: absolute;
    top: 2.5px;
    right: -35px;

    width: 32px;
    height: 32px;
    font-size: 20px;

    background: #00000077;
    border: none;
    border-radius: 25%;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;
    z-index: 1001;
}

.sidebar-toggle i {
    color: #00D1B2;
    transition: transform 0.25s ease;
}

.sidebar-collapsed .sidebar {
    transform: translateX(-100%);
}

.sidebar-collapsed .sidebar-toggle i {
    transform: rotate(180deg);
}

.sidebar-collapsed .content {
    margin-left: 0;
}

.content {
    margin-left: 250px;
    padding-top: var(--navbar-height);
}

@media screen and (max-width: 1023px) {
    aside.sidebar {
        position: fixed;
        left: 0;
    }

    main.content {
        margin-left: 0 !important;
        padding-top: var(--navbar-height);
    }
}
