#legal{text-align:center;width:30vw;font-family:Inter,sans-serif;color:var(--text-primary);display:grid;grid-auto-flow:row;gap:20px}body.no-scroll{overflow:hidden}.bookshelf{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;max-width:1000px}.book{width:160px;height:200px;position:relative;transform-style:preserve-3d;perspective:1000px;cursor:pointer}.cover{width:100%;height:100%;position:absolute;background-color:var(--bg-secondary);transform-origin:left center;transition:transform .5s ease-in-out;z-index:2;box-shadow:inset 0 0 2px 1px var(--border-color)}.cover:before{content:"";position:absolute;top:0;left:100%;width:15px;height:100%;background-color:var(--bg-secondary);transform-origin:left center;transform:translate(-15px) rotateY(-90deg)}.title{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-primary);font-size:16px;text-align:center;text-decoration:none;cursor:pointer;font-family:Cal Sans,serif}.pages{width:98%;height:98%;position:absolute;background-color:#f5f5f5;top:1%;left:1%;box-shadow:inset 0 0 10px #0003;transform-origin:left center;transition:transform .5s ease-in-out;z-index:1;padding:10px;box-sizing:border-box;overflow:hidden}.pages:before{content:"";position:absolute;top:0;left:100%;width:12px;height:100%;background-color:#e0e0e0;transform-origin:left center;transform:translate(-12px) rotateY(-90deg)}.content{font-size:12px;color:#333;line-height:1.4;text-align:center}.book:hover .cover{transform:rotateY(-20deg)}.book:hover .pages{transform:rotateY(0)}.subpage{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;justify-content:center;align-items:center;z-index:2000}.subpage-content{background-color:var(--bg-primary);border:1px solid var(--border-color);width:70vw;height:80vh;overflow-y:auto;padding:100px;position:relative;border-radius:5px;box-shadow:0 5px 15px var(--shadow-dark);font-family:Inter,serif;color:var(--text-primary);text-align:left;margin:40px}.subpage-content h2,.subpage-content h3{font-family:Cal Sans,sans-serif;color:var(--text-primary);text-shadow:none}.close-btn{position:absolute;top:10px;right:10px;padding:5px 10px;color:var(--text-primary);background-color:transparent;border:none;border-radius:3px;cursor:pointer;transition:background-color .3s;font-size:10px}.close-btn:hover{color:var(--text-secondary)}
