body{ width:100%; min-height:100%; display:flex; flex-flow:row nowrap; justify-content:stretch; align-items:stretch; gap:0px; }
main{ display:flex; flex-flow:column nowrap; justify-content:stretch;  align-items:stretch; gap:0; flex-grow:1; flex-shrink:1; }



aside{ width:250px; background:#fff; box-shadow: 0 0 20px rgba(89,102,122,0.1); padding:20px; display:flex; flex-flow:column nowrap; justify-content:start; align-items:stretch; gap:25px; } 
#main_logo{ display:flex; justify-content:stretch; align-items:center; gap:15px; text-decoration:none; } 
#main_logo img{ width:40px; margin:0; }
#main_logo span{ text-align:left; font-size:18px; } 
.main_menu{ width:100%; display:flex; flex-flow:column nowrap; justify-content:start; align-items:stretch; gap:0; padding:0; list-style:none; }
.main_menu input{ display:none; }
.main_menu .item{ min-height:40px; display:flex; flex-flow:column nowrap; justify-content:start; align-items:stretch; gap:0; } 
.main_menu .item label{ width:100%; height:40px; cursor:pointer; display:flex; justify-content:start; padding:0px 0px; gap:15px; }
.main_menu .item a{ width:100%; height:100%; display:flex; justify-content:start; font-size:16px; color:#000; text-decoration:none; font-weight:normal; gap:15px; }
.main_menu .item a i{ color:#000; }
.main_menu .item a.active{ color:#8d81eb; }
.main_menu .item a.active i{ color:#8d81eb; }
.main_menu .item label i{}
.main_menu .item .sections{ width:100%; padding:0px 0px 0px 25px; display:none; flex-flow:column nowrap; justify-content:start; align-items:stretch; gap:0; }
.main_menu .item .sections li{ height:40px; width:100%; display:flex; flex-flow:row nowrap; justify-content:stretch; align-items:center; gap:0; cursor:pointer; } 
.main_menu .item .sections li a{ width:100%; height:100%; display:flex; justify-content:start; font-size:16px; color:#000; text-decoration:none; font-weight:normal; }
.main_menu input:checked ~ .sections{ display:flex; }



header{ height:50px; display:flex; flex-flow:row nowrap; justify-content:stretch; box-shadow: 0 0 20px rgba(89,102,122,0.1); padding:0px 20px; gap:15px; }
header a i{ font-size:18px; color:#000; }

section{ flex-grow:1; flex-shrink:1; padding:40px 25px; }
h1{ text-align:left; }

footer{ height:50px; background:black; }
footer .copyrights{ height:100%; display:flex; color:#fff; }