@charset "UTF-8";*{margin:0;padding:0;box-sizing:border-box}body{font-family:Raleway,sans-serif;background-color:#fff;color:#2b2b2b;line-height:1.6;padding:2rem;max-width:1200px;margin:0 auto;overflow-x:hidden}@media (max-width: 768px){body{padding:1.5rem}}@media (max-width: 600px){body{padding:.8rem;font-size:18px;width:100%;box-sizing:border-box}}@media (max-width: 420px){body{padding:.7rem;font-size:18px}}header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;margin-bottom:3rem;border-bottom:1px solid rgba(0,0,0,.1)}@media (max-width: 768px){header{flex-direction:column;gap:1rem;margin-bottom:2.5rem}}@media (max-width: 600px){header{flex-direction:column;gap:1rem;margin-bottom:2rem}}.logo{font-size:1.8rem;font-weight:300;letter-spacing:1px;color:#7f5af0}@media (max-width: 768px){.logo{font-size:1.8rem}}@media (max-width: 600px){.logo{font-size:2.2rem}}@media (max-width: 420px){.logo{font-size:2rem}}nav ul{display:flex;list-style:none;gap:2.5rem}@media (max-width: 600px){nav ul{gap:1.5rem;justify-content:center;width:100%}}@media (max-width: 420px){nav ul{gap:1.2rem}}nav a{text-decoration:none;color:#3a3a3a;position:relative;font-size:1.2rem;transition:color .3s ease;padding:.3rem 0}@media (max-width: 600px){nav a{font-size:1.2rem;padding:.5rem 0}}@media (max-width: 420px){nav a{font-size:1.15rem}}nav a:hover{color:#7f5af0}nav a.active{color:#7f5af0;font-weight:500}nav a.active:after{content:"";position:absolute;bottom:-3px;left:0;width:100%;height:2px;background-color:#7f5af0}.bibliotheque-main{display:grid;grid-template-columns:1fr;gap:3rem;overflow-x:hidden}@media (max-width: 600px){.bibliotheque-main{gap:2rem;padding:0}}.bibliotheque-intro{text-align:center;margin-bottom:3.5rem;padding:2rem 0;width:100%;box-sizing:border-box}@media (max-width: 768px){.bibliotheque-intro{margin-bottom:3rem;padding:1.5rem 0}}@media (max-width: 600px){.bibliotheque-intro{margin-bottom:2rem;padding:1rem 0}}.bibliotheque-intro h1{font-size:2.8rem;font-weight:300;margin-bottom:1.2rem;color:#3a3a3a}@media (max-width: 768px){.bibliotheque-intro h1{font-size:3rem;margin-bottom:1rem}}@media (max-width: 600px){.bibliotheque-intro h1{font-size:2.8rem;margin-bottom:1.2rem}}@media (max-width: 420px){.bibliotheque-intro h1{font-size:2.5rem}}.bibliotheque-intro p{font-size:1.2rem;max-width:700px;margin:0 auto 1.5rem;color:#666}@media (max-width: 768px){.bibliotheque-intro p{font-size:1.4rem}}@media (max-width: 600px){.bibliotheque-intro p{font-size:1.25rem;margin-bottom:1.2rem;padding:0 .5rem}}.filter-section{margin-bottom:2.5rem;padding:1.8rem;background-color:#7f5af01a;border-radius:8px;box-shadow:0 2px 6px #0000001a;width:100%;box-sizing:border-box}@media (max-width: 768px){.filter-section{padding:1.5rem;margin-bottom:2rem}}@media (max-width: 600px){.filter-section{padding:1rem;margin-bottom:1.8rem;border-radius:6px;margin-left:auto;margin-right:auto}}@media (max-width: 420px){.filter-section{padding:.8rem}}.search-box{display:flex;margin-bottom:1.5rem}@media (max-width: 768px){.search-box{margin-bottom:1.25rem}}@media (max-width: 600px){.search-box{flex-direction:column;gap:.8rem;margin-bottom:1.5rem}}.search-box input{flex:1;padding:.9rem;border:1px solid #ddd;border-radius:4px 0 0 4px;font-size:1.05rem}@media (max-width: 768px){.search-box input{padding:.85rem}}@media (max-width: 600px){.search-box input{border-radius:4px;padding:.9rem;font-size:1rem;width:100%}}.search-box button{padding:.9rem 1.5rem;background-color:#3a3a3a;color:#fff;border:none;border-radius:0 4px 4px 0;cursor:pointer;transition:background-color .3s;font-size:1rem;font-weight:500}@media (max-width: 768px){.search-box button{padding:.85rem 1.4rem}}@media (max-width: 600px){.search-box button{border-radius:4px;padding:.9rem;width:100%;font-size:1.05rem}}.search-box button:hover{background-color:#7f5af0}.filter-options{display:flex;flex-wrap:wrap;gap:1.2rem;justify-content:space-between}@media (max-width: 768px){.filter-options{gap:1rem}}@media (max-width: 600px){.filter-options{flex-direction:column;gap:1rem}}.filter-group{display:flex;align-items:center;gap:.7rem}@media (max-width: 768px){.filter-group{gap:.6rem}}@media (max-width: 600px){.filter-group{width:100%;justify-content:space-between;margin-bottom:.3rem}}.filter-group label{font-weight:500;font-size:1.05rem}@media (max-width: 768px){.filter-group label{font-size:1rem}}@media (max-width: 600px){.filter-group label{min-width:80px;font-size:1rem}}.filter-group select{padding:.7rem;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:.95rem}@media (max-width: 768px){.filter-group select{padding:.65rem}}@media (max-width: 600px){.filter-group select{flex:1;padding:.8rem;font-size:1rem}}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:2.2rem;margin-bottom:2.5rem;width:100%;box-sizing:border-box}@media (max-width: 768px){.book-grid{grid-template-columns:repeat(2,1fr);gap:1.8rem}}@media (max-width: 600px){.book-grid{grid-template-columns:1fr;gap:1.2rem;margin-bottom:2rem;padding:0 .5rem}}@media (max-width: 420px){.book-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem}}.book-card{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 3px 12px #0000001a;transition:transform .3s,box-shadow .3s;cursor:pointer;height:100%;display:flex;flex-direction:column;width:100%;box-sizing:border-box}@media (max-width: 600px){.book-card{border-radius:6px;box-shadow:0 3px 10px #0000001a;max-width:100%}}@media (max-width: 420px){.book-card{max-width:95%;margin:0 auto}}.book-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000001a}.book-cover{width:100%;aspect-ratio:2/3;overflow:hidden;position:relative}.book-cover img{width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .3s ease;display:block}.book-cover:hover img{transform:scale(1.05)}@media (max-width: 600px){.book-cover{aspect-ratio:2/3}}.book-info{padding:1.2rem;flex-grow:1;display:flex;flex-direction:column}@media (max-width: 768px){.book-info{padding:1rem}}@media (max-width: 600px){.book-info{padding:.8rem}}@media (max-width: 420px){.book-info{padding:.7rem}}.book-title{font-family:Playfair Display,serif;font-size:1.15rem;margin-bottom:.6rem;font-weight:600;line-height:1.3}@media (max-width: 768px){.book-title{font-size:1.1rem}}@media (max-width: 600px){.book-title{font-size:1.05rem;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}}.book-author{font-size:1rem;color:#666;margin-bottom:.6rem}@media (max-width: 768px){.book-author{font-size:.95rem}}@media (max-width: 600px){.book-author{font-size:.9rem;margin-bottom:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.book-rating{margin-top:auto;color:#7f5af0;font-size:.9rem}@media (max-width: 600px){.book-rating{font-size:.85rem}}.book-rating .fa-star{font-size:.9rem}@media (max-width: 600px){.book-rating .fa-star{font-size:.85rem}}.book-genre{background-color:#7f5af01a;display:inline-block;padding:.3rem .6rem;border-radius:4px;font-size:.85rem;margin-top:.7rem}@media (max-width: 600px){.book-genre{font-size:.8rem;padding:.25rem .5rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.loading{text-align:center;padding:3rem 0;grid-column:1/-1}@media (max-width: 600px){.loading{padding:2.5rem 0}}.spinner{width:45px;height:45px;border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#7f5af0;margin:0 auto 1.2rem;animation:spin 1s linear infinite}@media (max-width: 600px){.spinner{width:38px;height:38px;border-width:3px}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pagination{display:flex;justify-content:center;margin-top:2.5rem;gap:.6rem;flex-wrap:wrap}@media (max-width: 768px){.pagination{margin-top:2.2rem}}@media (max-width: 600px){.pagination{margin-top:2rem;gap:.5rem}}.pagination button{padding:.7rem 1.2rem;background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:background-color .3s;font-size:1rem}@media (max-width: 768px){.pagination button{padding:.65rem 1.1rem}}@media (max-width: 600px){.pagination button{padding:.8rem 1.1rem;font-size:.95rem;min-width:2.8rem}}.pagination button.active{background-color:#7f5af0;color:#fff;border-color:#7f5af0;font-weight:500}.pagination button:hover:not(.active){background-color:#7f5af01a}.pagination-ellipsis{padding:.6rem;color:#666}@media (max-width: 600px){.pagination-ellipsis{padding:.5rem}}.book-modal{display:none;position:fixed;z-index:1001;left:0;top:0;width:100%;height:100%;background-color:#000000b3;overflow:auto}.modal-content{background-color:#fff;margin:4% auto;padding:2.2rem;border-radius:10px;width:80%;max-width:850px;box-shadow:0 5px 20px #0006;animation:modalFade .3s}@media (max-width: 768px){.modal-content{width:90%;padding:1.8rem;margin:5% auto;overflow-y:auto}}@media (max-width: 600px){.modal-content{width:92%;padding:1.5rem;margin:6% auto;max-height:90vh;border-radius:8px;overflow-y:auto}}@keyframes modalFade{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.close-modal{color:#aaa;float:right;font-size:2.2rem;font-weight:700;cursor:pointer;transition:color .3s;margin-top:-.5rem;margin-right:-.5rem}@media (max-width: 768px){.close-modal{font-size:2rem}}@media (max-width: 600px){.close-modal{font-size:1.9rem;margin-top:-.4rem;margin-right:-.4rem}}.close-modal:hover{color:#7f5af0}.modal-book-content{display:flex;flex-direction:column;margin-top:1.5rem}@media screen and (min-width: 769px){.modal-book-content{flex-direction:row;gap:2.5rem}}.modal-book-cover{width:220px;height:330px;object-fit:cover;border-radius:6px;box-shadow:0 5px 15px #0000001a;margin-bottom:1.5rem}@media (max-width: 768px){.modal-book-cover{width:200px;height:300px}}@media (max-width: 600px){.modal-book-cover{width:160px;height:240px;margin:0 auto 1.5rem}}.modal-book-details{flex:1}.modal-book-title{font-family:Playfair Display,serif;font-size:2rem;margin-bottom:.7rem;color:#3a3a3a;line-height:1.2}@media (max-width: 768px){.modal-book-title{font-size:1.8rem}}@media (max-width: 600px){.modal-book-title{font-size:1.6rem;text-align:center;margin-bottom:.6rem}}.modal-book-author{font-size:1.3rem;color:#666;margin-bottom:1.2rem}@media (max-width: 768px){.modal-book-author{font-size:1.2rem;margin-bottom:1.1rem}}@media (max-width: 600px){.modal-book-author{font-size:1.1rem;text-align:center;margin-bottom:1rem}}.modal-book-rating{color:#7f5af0;margin-bottom:1.2rem;font-size:1.3rem}@media (max-width: 768px){.modal-book-rating{font-size:1.2rem;margin-bottom:1.1rem}}@media (max-width: 600px){.modal-book-rating{text-align:center;font-size:1.15rem;margin-bottom:1rem}}.modal-book-metadata{display:grid;grid-template-columns:auto 1fr;gap:.6rem 1.2rem;margin-bottom:1.8rem;font-size:1.05rem}@media (max-width: 768px){.modal-book-metadata{gap:.5rem 1.1rem;margin-bottom:1.6rem;font-size:1rem}}@media (max-width: 600px){.modal-book-metadata{grid-template-columns:1fr;text-align:center;gap:.4rem;margin-bottom:1.5rem;font-size:1rem}}.metadata-label{font-weight:600;color:#666}@media (max-width: 600px){.metadata-label{margin-top:.4rem}}.modal-book-review{margin-bottom:1.8rem}.modal-book-review h3{font-size:1.4rem;color:#3a3a3a;margin-bottom:1rem;font-family:Playfair Display,serif}@media (max-width: 768px){.modal-book-review h3{font-size:1.3rem;margin-bottom:.9rem}}@media (max-width: 600px){.modal-book-review h3{font-size:1.25rem;text-align:center;margin-bottom:.8rem}}.modal-book-review p{line-height:1.7;color:#2b2b2b;font-size:1.05rem}@media (max-width: 768px){.modal-book-review p{line-height:1.6;font-size:1rem}}@media (max-width: 600px){.modal-book-review p{line-height:1.6;font-size:1rem}}.modal-book-excerpt{background-color:#7f5af01a;padding:1.8rem;border-radius:8px;margin-bottom:1.8rem}@media (max-width: 768px){.modal-book-excerpt{padding:1.6rem;margin-bottom:1.6rem}}@media (max-width: 600px){.modal-book-excerpt{padding:1.4rem;margin-bottom:1.5rem;border-radius:6px}}.modal-book-excerpt h3{font-family:Playfair Display,serif;font-size:1.4rem;color:#3a3a3a;margin-bottom:1rem}@media (max-width: 768px){.modal-book-excerpt h3{font-size:1.3rem;margin-bottom:.9rem}}@media (max-width: 600px){.modal-book-excerpt h3{font-size:1.25rem;text-align:center;margin-bottom:.8rem}}.modal-book-excerpt blockquote{font-family:Playfair Display,serif;font-style:italic;border-left:3px solid #7f5af0;padding-left:1.2rem;margin-bottom:1.2rem;font-size:1.05rem;line-height:1.7}@media (max-width: 768px){.modal-book-excerpt blockquote{padding-left:1.1rem;font-size:1rem;line-height:1.6}}@media (max-width: 600px){.modal-book-excerpt blockquote{padding-left:1rem;font-size:1rem;line-height:1.6;margin-bottom:1rem}}.modal-book-excerpt blockquote:before{content:"“";color:#7f5af0;font-size:1.5em;line-height:0;margin-right:.2em}.modal-book-excerpt blockquote:after{content:"”";color:#7f5af0;font-size:1.5em;line-height:0;margin-left:.2em}.modal-actions{display:flex;gap:1.2rem;margin-top:1.2rem}@media (max-width: 768px){.modal-actions{justify-content:center;gap:1.1rem}}@media (max-width: 600px){.modal-actions{flex-direction:column;gap:1rem}}.modal-actions button{padding:.9rem 1.8rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .3s,transform .2s;font-size:1.05rem}@media (max-width: 768px){.modal-actions button{padding:.85rem 1.6rem;font-size:1rem}}@media (max-width: 600px){.modal-actions button{padding:1rem 1.5rem;font-size:1.05rem;border-radius:5px}}.modal-actions button:hover{transform:translateY(-2px)}.modal-actions button:active{transform:translateY(0)}.modal-actions .add-to-list-btn{background-color:#7f5af0;color:#fff}.modal-actions .add-to-list-btn:hover{background-color:#5b2bec}.modal-actions .view-more-btn{background-color:#f0f0f0;color:#3a3a3a}.modal-actions .view-more-btn:hover{background-color:#e3e3e3}footer{margin-top:5rem;padding:2.5rem 0;text-align:center;border-top:1px solid rgba(0,0,0,.1);color:#666;font-size:1rem}@media (max-width: 768px){footer{margin-top:4rem;padding:2rem 0}}@media (max-width: 600px){footer{margin-top:3.5rem;padding:1.8rem 0;font-size:.95rem}}footer p{margin:0}.no-results{grid-column:1/-1;text-align:center;padding:3.5rem 0}@media (max-width: 768px){.no-results{padding:3rem 0}}@media (max-width: 600px){.no-results{padding:2.5rem 0}}.no-results h3{color:#3a3a3a;font-size:1.5rem;margin-bottom:1.2rem}@media (max-width: 768px){.no-results h3{font-size:1.4rem}}@media (max-width: 600px){.no-results h3{font-size:1.3rem;margin-bottom:1rem}}.no-results p{color:#666;margin-bottom:1.8rem;font-size:1.05rem}@media (max-width: 768px){.no-results p{grid-template-columns:repeat(2,1fr);gap:1.8rem}}@media (max-width: 600px){.no-results p{grid-template-columns:1fr;gap:1.5rem}}.no-results .book-card{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 6px #0000001a;display:flex;flex-direction:column;transition:transform .3s ease}.no-results .book-card:hover{transform:translateY(-5px)}.no-results .book-card img{width:100%;height:auto;object-fit:cover}.no-results .book-card .book-content{padding:1.2rem}.no-results .book-card .book-content h3{font-size:1.4rem;margin-bottom:.6rem;color:#3a3a3a}@media (max-width: 600px){.no-results .book-card .book-content h3{font-size:1.2rem}}.no-results .book-card .book-content p{font-size:1rem;color:#555}@media (max-width: 600px){.no-results .book-card .book-content p{font-size:.95rem}}.no-results footer{margin-top:4rem;padding:2rem 0;text-align:center;font-size:.95rem;color:#999}@media (max-width: 600px){.no-results footer{font-size:.9rem;padding:1.5rem 0}}
