.book{perspective:2000px}.book,.page{display:flex}.page{width:600px;height:850px;background:#fff;justify-content:center;align-items:center;transition:transform .8s ease,box-shadow .8s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden}.flip{transform-origin:left center}.book:hover .flip{transform:rotateY(-3deg);box-shadow:0 10px 25px rgba(0,0,0,.2)}.page img{object-fit:contain;max-width:100%;max-height:100%}@media (max-width:991px){.book{flex-direction:column;align-items:center}.page{width:90%;height:auto}}.sidebar{transition:width .3s ease-in-out,top .3s ease-in-out;background-color:#fff;border-right:1px solid #dee2e6;overflow:hidden;height:100vh;position:fixed;top:60px;left:0;z-index:1000}.sidebar.scrolled{top:0}.sidebar.open{width:300px}.sidebar.openmucluc{width:60px}.sidebar.closed{width:0}.toggle-btn{width:100%;padding:10px;background-color:#007bff;color:#fff;border:none;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.toggle-btn:hover{background-color:#0056b3}.toc{padding:20px;height:calc(100vh - 50px);overflow-y:auto;border:1px solid #dee2e6;border-top:none;border-radius:0 0 .375rem .375rem}.lesson{margin-bottom:15px;border:1px solid #dee2e6;border-radius:.375rem;overflow:hidden;box-shadow:0 .125rem .25rem rgba(0,0,0,.075);transition:box-shadow .3s ease}.lesson:hover{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)}.item-list{list-style:none;padding:0;margin:0}.item{cursor:pointer;transition:all .3s ease;border-bottom-color:#e9ecef}.item:hover{background-color:#007bff;color:#fff!important;transform:translateX(8px);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.1)}.item:hover .text-muted{color:hsla(0,0%,100%,.8)!important}.item.active{background-color:#007bff;color:#fff!important}.item.active .text-muted{color:hsla(0,0%,100%,.8)!important}.item:last-child{border-bottom:none}@media (max-width:768px){.sidebar{width:100%!important;border-right:none;border-bottom:1px solid #dee2e6;height:auto;top:auto!important;position:relative;z-index:1000}.sidebar.open{width:100%}.sidebar.closed{display:none}.sidebar.scrolled{top:0!important}.toggle-btn{display:block;width:100%;font-size:.9rem;padding:12px}.toc{height:auto;padding:15px;border:1px solid #dee2e6;border-radius:.375rem}.lesson,.toc{margin-bottom:10px}.item{padding:12px;font-size:.9rem}.lesson-title{padding:10px;font-size:1rem}}