.account {
    margin: 40px 40px;
}

.supervisor {
    filter: drop-shadow(0px 4px 10px #0ffa);
}

.menu {
    z-index: 2;
    position: fixed;
    top: 0px;
    left: 0px;
    height: 100vh;
    width: 100px;
    overflow-x: hidden;
    overflow-y: auto;
    color: #ffff;
    background-color: #1a0155;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    transition: width 0.25s ease-in-out;
}

.menu:active,
.menu:hover {
    width: 350px;
}

.menu a {
    text-decoration: none;
    color: #ffff;
}

.menu .text {
    font-family: "Kanit", sans-serif;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    opacity: 0;
}

.menu:active .text,
.menu:hover .text {
    opacity: 1;
}

.menu .material-symbols-outlined {
    flex: 0 0 auto;
    font-size: 40px;
    width: 60px;
    height: 60px;
    border-radius: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.menu > * {
    margin-left: 20px;
}

.menu > *:hover > .text {
    color: #8875ff;
}

.menu > .menu-header {
    white-space: nowrap;
    overflow: hidden;
    margin: 20px 0px 0px 40px;
    color: #8875ff;
    font-family: "Kanit", sans-serif;
    text-align: left;
    opacity: 0;
    transition: opacity 0.25s ease-in-out;
}

.menu:active .menu-header,
.menu:hover .menu-header {
    opacity: 1;
}

.menu hr {
    width: 100%;
    margin: 5px 5px 0px 0px;
    align-self: center;
    border-width: 0px;
    border-top: 1px solid #3623a9;
}

.menu > .logout,
.menu > a {
    width: 100%;
    height: 60px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
}

.menu > .sub {
    width: 100%;
    height: auto;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-items: flex-start;
}

.menu > .sub > .group {
    width: 100%;
    height: 60px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
}

.menu > .sub > .group > .text {
    flex: 0 0 200px;
}

.menu > .sub > .sub-menu {
    margin-left: 60px;
    width: 100%;
    max-height: 0;
    overflow: hidden;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    transition: all 0.25s ease-in-out;
}

.menu > .sub > .sub-menu.show {
    max-height: 800px;
}

.menu > .sub > .sub-menu > * {
    margin: 5px 0px;
}

.menu .sub-menu .text {
    font-weight: 300;
}

.menu .sub-menu > *:hover > .text {
    color: #8875ff;
}

/* THEME BUTTON */

.theme-group .theme-button {
    display: none;
}

.theme-group .theme-label {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.theme-label span {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
}

.theme-group:has(.theme-button:checked) .light {
    display: none;
}

.theme-group:has(.theme-button:checked) .dark {
    display: flex;
}

.theme-group:has(.theme-button:not(:checked)) .light {
    display: flex;
}

.theme-group:has(.theme-button:not(:checked)) .dark {
    display: none;
}
