.libreria-page{animation:fadeIn .6s ease-out}.libreria-header{padding:6rem 0 4rem;background-color:var(--primary-dark);color:white;position:relative;overflow:hidden}.libreria-header:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 50% 150%,rgba(252,163,17,.15) 0,transparent 60%);z-index:0;pointer-events:none}.libreria-header .container{position:relative;z-index:1}.icon-wrapper.mx-auto{margin-left:auto;margin-right:auto;width:64px;height:64px;font-size:2rem}.books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2.5rem;margin-top:-3rem;position:relative;z-index:10}.book-card{padding:1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center}.book-cover-wrapper{width:160px;height:240px;position:relative;border-radius:8px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.15);margin-bottom:1.5rem;transition:transform .3s ease}.book-card:hover .book-cover-wrapper{transform:translateY(-10px) rotate(2deg)}.book-cover-fallback{width:100%;height:100%;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark))}.book-cover{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.book-info{display:flex;flex-direction:column;flex:1 1;width:100%}.book-title{font-size:1.25rem;margin-bottom:.5rem;line-height:1.4}.book-author{color:var(--text-muted);font-size:.9rem;margin-bottom:1.5rem}.book-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-color);padding-top:1rem}.book-price{font-weight:700;color:var(--secondary-color)}.reader-layout{display:flex;height:100vh;background-color:#e5e7eb;overflow:hidden;flex-direction:row}.reader-pdf-section{flex:1 1;position:relative;overflow-y:auto;display:flex;flex-direction:column;align-items:center;-webkit-user-select:none;user-select:none}.reader-notes-section{width:350px;background:white;border-left:1px solid var(--border-color);display:flex;flex-direction:column;box-shadow:-5px 0 15px rgba(0,0,0,.03)}.reader-toolbar{width:100%;background:white;padding:.75rem 1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 5px rgba(0,0,0,.05);position:sticky;top:0;z-index:10}.reader-toolbar-left{display:flex;align-items:center;gap:1rem}.reader-toolbar-title{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.reader-toolbar-right{display:flex;align-items:center;gap:.5rem}.reader-toolbar-right button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--primary-color);background:transparent;color:var(--primary-color);font-weight:700;cursor:pointer;padding:0}.reader-toolbar-right span{min-width:45px;text-align:center;font-size:.9rem;font-weight:700}.reader-floating-nav{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);background:white;padding:.5rem;border-radius:50px;display:flex;align-items:center;justify-content:center;gap:1rem;box-shadow:0 10px 25px rgba(0,0,0,.2);z-index:100;width:max-content}.nav-btn{background:var(--primary-color);color:white;border:none;padding:.5rem 1rem;border-radius:50px;font-size:.9rem;cursor:pointer;font-weight:600}.nav-btn:disabled{background:#ccc;cursor:not-allowed}.nav-btn.outline{background:transparent;border:1px solid var(--primary-color);color:var(--primary-color)}.nav-text{font-weight:700;font-size:.9rem;white-space:nowrap}@media (max-width:768px){.reader-layout{flex-direction:column;overflow:auto;height:auto;min-height:100vh}.reader-pdf-section{flex:none;height:75vh}.reader-notes-section{width:100%;border-left:none;border-top:2px solid var(--primary-color);box-shadow:0 -5px 15px rgba(0,0,0,.03);flex:none;min-height:60vh}.reader-toolbar{padding:.5rem 1rem;flex-direction:row;flex-wrap:wrap;gap:.5rem}.reader-toolbar-left{width:100%;justify-content:flex-start;gap:.5rem}.reader-toolbar-title{max-width:200px;font-size:1rem}.reader-toolbar-left .btn-sm{padding:.3rem .6rem;font-size:.8rem}.reader-toolbar-right{width:100%;justify-content:center;padding-top:.5rem;border-top:1px solid #eee}.reader-floating-nav{width:90%;max-width:350px;bottom:1rem;gap:.5rem;padding:.5rem;justify-content:space-between}.nav-btn{padding:.4rem .8rem}.nav-btn,.nav-text{font-size:.8rem}}