Blog De Libros Pdf Google Drive 📍
.blog-header h1 font-size: 2.8rem; letter-spacing: -0.5px; font-weight: 700;
.modal-body flex: 1; background: #eae3d8;
/* sección de posts (entradas del blog) */ .posts-grid display: flex; flex-direction: column; gap: 2rem;
<!-- Sidebar con integración Google Drive PDF --> <aside class="drive-sidebar"> <div class="drive-header"> <i class="fab fa-google-drive"></i> <span>Biblioteca Drive</span> </div> <div class="drive-description"> <i class="fas fa-folder-open"></i> PDFs alojados en Google Drive — acceso directo y vista previa integrada. </div> <ul class="pdf-list" id="drivePdfList"> <!-- Lista de PDFs se genera desde JS (simulando enlace real de Google Drive) --> </ul> <div class="drive-note"> <i class="fas fa-cloud-upload-alt"></i> Todos los libros son de dominio público o con permiso de muestra educativa.<br> <strong>¡Haz clic en cualquier PDF para leerlo sin descargar!</strong> </div> </aside> </div> Blog De Libros Pdf Google Drive
/* layout principal: 2 columnas (blog posts + sidebar con drive) */ .main-container max-width: 1400px; margin: 2rem auto; padding: 0 1.5rem; display: grid; grid-template-columns: 1fr 340px; gap: 2rem;
.post-content padding: 1.6rem;
.btn-pdf i font-size: 1rem;
/* Sidebar: Google Drive integración */ .drive-sidebar background: #ffffffea; border-radius: 32px; padding: 1.5rem; box-shadow: 0 12px 24px rgba(0,0,0,0.05); border: 1px solid #e8dfd3; position: sticky; top: 100px; align-self: start;
/* Navegación interna (filtros) */ .blog-nav display: flex; flex-wrap: wrap; justify-content: center; gap: 0.8rem; background: white; padding: 1rem 1.5rem; border-bottom: 1px solid #e2ddd4; position: sticky; top: 0; z-index: 100; backdrop-filter: blur(4px); background-color: rgba(255,255,245,0.95);
<header class="blog-header"> <h1><i class="fas fa-book-open"></i> Blog de Libros · Letras y Páginas</h1> <p>Reseñas literarias, recomendaciones y una biblioteca digital alojada en Google Drive — todos tus PDF favoritos en un solo lugar.</p> </header> .blog-header h1 font-size: 2.8rem
<!-- Modal visualizador PDF embebido --> <div id="pdfModal" class="pdf-modal"> <div class="modal-content"> <div class="modal-header"> <h3><i class="fas fa-file-pdf"></i> Lector de Google Drive</h3> <button class="close-modal" id="closeModalBtn">×</button> </div> <div class="modal-body"> <iframe id="pdfIframe" src="" title="Visor PDF"></iframe> </div> </div> </div>
// ======================== // 5. FILTROS Y NAVEGACIÓN // ======================== function initFilters() const filterBtns = document.querySelectorAll('.filter-btn'); filterBtns.forEach(btn => btn.addEventListener('click', () => const filterValue = btn.getAttribute('data-filter'); if (!filterValue) return; activeFilter = filterValue; renderPosts(); // Actualizar clase activa filterBtns.forEach(b => b.classList.remove('active')); btn.classList.add('active'); ); );
.filter-btn background: transparent; border: none; font-weight: 600; padding: 0.5rem 1.2rem; border-radius: 40px; cursor: pointer; font-family: 'Inter', sans-serif; font-size: 0.9rem; transition: all 0.2s ease; color: #3a5a44; .modal-body flex: 1
.filter-btn i margin-right: 8px;