@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Source+Sans+3:wght@300;400;500;600&display=swap);*,:after,:before{box-sizing:border-box}*{margin:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}ol,ul{list-style:none;padding:0}a{color:inherit;text-decoration:none}canvas,img,picture,svg,video{display:block;max-width:100%}button{background:none;border:none;cursor:pointer}button,input,select,textarea{all:unset;font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}table{border-collapse:collapse;border-spacing:0}[role=button],a,button{-webkit-tap-highlight-color:transparent}:root{--font-title:"Playfair Display",serif;--font-text:"Source Sans 3",sans-serif;--white:#fff;--green:#27694d;--yellow:#daa520;--red:#ef4444;--brown:#383129;--black:#2a2622;--title:#2b2622;--text:#7c736a;--border:#e7e2da;--background:#f7f4ef;--card:#fcfaf7;--secondary:#eeebe4;--shadow:#c4b8a8;--favorite:#eaf0ed}body{background:var(--background);color:var(--text);font-family:var(--font-text);font-size:16px}h1,h2,h3,h4,h5,h6{color:var(--title);font-family:var(--font-title);line-height:1.2}h1{font-size:42px}h1,h2{font-weight:600}h2{font-size:18px}p{color:var(--text)}@media screen and (max-width:768px){h1{font-size:36px}h2{font-size:22px}}::-moz-selection{background-color:var(--yellow);color:var(--brown);text-shadow:none}::selection{background-color:var(--yellow);color:var(--brown);text-shadow:none}body{display:flex;flex-direction:column;gap:30px;justify-content:space-between;min-height:100vh}.page .container{display:grid;gap:15px;grid-template-columns:1fr 220px;min-height:50vh;width:100%}.main{height:100%;position:relative}.books-list{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.state{inset:-30px 0;position:absolute}@media screen and (max-width:768px){body{gap:20px}.page .container{display:flex;flex-direction:column}.books-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.container{margin:0 auto;max-width:1200px;padding:0 20px}@media screen and (max-width:768px){.container{max-width:100%;padding:0 10px}}.header{border-bottom:1px solid var(--border)}.header .container{align-items:center;display:flex;justify-content:space-between}.header .logo{align-items:center;display:flex;gap:10px;padding:10px;width:max-content}.header .logo-icon{background-color:var(--green);background-image:url(assets/book.svg);background-position:50%;background-repeat:no-repeat;border-radius:12px;height:40px;width:40px}.header .logo-title{color:var(--title);font-family:var(--font-title);font-size:22px;font-weight:600}.header .logo-subtitle{font-size:12px}.footer{border-top:1px solid var(--border);padding:15px 0;text-align:center}.footer a{color:var(--green)}.footer a:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.hero .container{align-items:center;display:flex;flex-direction:column;gap:15px;max-width:600px;padding:30px 0}.hero h1,.hero p{text-align:center}.hero p{font-size:18px}@media screen and (max-width:768px){.hero .container{max-width:100%;padding:20px 10px}}.search-btn{background-color:var(--green);border-radius:8px;color:var(--secondary);cursor:pointer;padding:5px 20px;transition:all .2s ease}.search-btn[disabled],.search-btn[disabled]:hover{background-color:color-mix(in srgb,var(--green),#fff 20%);color:var(--secondary);cursor:default}.search-btn:hover{background-color:color-mix(in srgb,var(--green),#000 10%);color:var(--white)}.search-btn:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.book-favorite-toggle{align-items:center;cursor:pointer;display:flex;justify-content:center;min-height:30px;min-width:30px;transition:scale .2s ease}.book-favorite-toggle:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.book-favorite-toggle svg{transition:scale .2s ease}.book-favorite-toggle:hover svg{scale:1.2}.book-favorite-toggle--page{background-color:hsla(0,0%,100%,.9);border-radius:50%;position:absolute;right:10px;top:10px}.book-favorite-toggle--page svg{stroke:var(--text)}.book-favorite-toggle.active svg{fill:var(--red);stroke:var(--red)}.open-favorite-btn{background-image:url(assets/heart.svg);background-position:50%;background-repeat:no-repeat;background-size:25px;cursor:pointer;display:none;height:40px;margin:10px;transition:scale .2s ease;width:40px}.open-favorite-btn:hover{scale:1.1}.close-btn{background-color:transparent;border:none;color:var(--text);cursor:pointer;display:none;font-size:35px;font-weight:700;line-height:1;padding:0;transition:scale .2s ease}.close-btn:hover{scale:1.2}@media screen and (max-width:768px){.search-btn{cursor:pointer;font-size:14px;padding:5px 10px}.open-favorite-btn{display:block}}.search-input{background-color:var(--white);background-image:url(assets/search.svg);background-position:15px;background-repeat:no-repeat;border:1px solid var(--border);border-radius:8px;flex-grow:1;font-size:14px;padding:5px 40px}.search-input:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}@media screen and (max-width:768px){.search-input{background-image:none;padding:5px 10px}}.search-form{display:flex;gap:5px;max-width:100vw;width:100%}.book-card{background:var(--white);border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 4px var(--shadow);display:flex;flex-direction:column;position:relative}.book-cover,.fallback{aspect-ratio:1/1.5;border-top-left-radius:8px;border-top-right-radius:8px;width:100%}.fallback{align-items:center;background:linear-gradient(to bottom right,#fff,#d0c5b7);justify-content:center;text-align:center}.book-info,.fallback{display:flex;font-size:14px}.book-info{flex-direction:column;flex-grow:1;line-height:1.4;padding:10px}.book-title{color:var(--title);font-family:var(--font-title);font-size:16px;font-weight:600;overflow:hidden;overflow-wrap:anywhere}.book-author,.book-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.book-author{flex-grow:1;overflow:hidden}.book-card--favorite{align-items:center;border:none;border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;flex-direction:row;gap:10px;padding:5px 0}.book-card--favorite .book-cover,.book-card--favorite .fallback{border-radius:8px;max-width:25%}.book-card--favorite .book-info{font-size:12px;line-height:1.2;padding:0}.book-card--favorite .book-title{font-size:14px}.favorites{background:var(--white);border:1px solid var(--border);border-radius:8px}.favorites-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;line-height:.8;padding:10px}.favorites-header>div{align-items:center;display:flex;gap:5px}.favorites-icon{align-items:center;background-color:rgba(39,105,77,.2);border-radius:8px;display:flex;height:30px;justify-content:center;width:30px}.favorites-icon svg{fill:none;stroke:var(--green)}.favorites-header span{font-size:12px}.favorites-list{display:flex;flex-direction:column;gap:10px;padding:10px}@media screen and (max-width:768px){.favorites{border-radius:0;display:none;height:fit-content;left:0;position:absolute;top:0;width:100%;z-index:100}.favorites-icon{border-radius:12px;height:40px;width:40px}.close-btn{align-items:center;display:block;display:flex;height:40px;justify-content:center;width:40px}.favorites-header{line-height:1.4;padding:10px 20px}.favorites-header>div{gap:10px}.favorites-header span{font-size:14px}}.coverage.isVisible{display:none}@media screen and (max-width:768px){.coverage.isVisible{background-color:rgba(42,38,34,.5);display:block;height:100vh;left:0;position:fixed;top:0;transition:background-color .2s ease;width:100%;z-index:25}}