@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-color:#3498db;--secondary-color:#2ecc71;--background-color:#f4f6f7;--text-color:#2c3e50;--card-background:#fff;--shadow-color:#0000001a;--gradient-start:#6a11cb;--gradient-end:#2575fc;--max-content-width:1200px;--bg-dark:#121212;--bg-dark-light:#1e1e1e;--text-primary:#e0e0e0;--text-secondary:#a0a0a0;--accent-color:#bb86fc;--accent-color-variant:#3700b3}*{box-sizing:border-box;padding:0}*,body{margin:0}body{background-color:#f5f5f5;color:#333;font-family:Inter,sans-serif;line-height:1.6;padding:20px}.app-container{margin:0 auto;max-width:1200px;max-width:var(--max-content-width);padding:20px}.controls-container{background-color:#1e1e1e;background-color:var(--bg-dark-light);border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 8px 15px #0000004d;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:20px}.control-group{display:flex;flex:1 1;flex-direction:column;gap:10px;min-width:200px}.control-group label{color:#a0a0a0;color:var(--text-secondary);font-weight:600;margin-bottom:5px}.control-group input[type=range]{-webkit-appearance:none;background:#0000;width:100%}.control-group input[type=range]::-webkit-slider-runnable-track{background:#121212;background:var(--bg-dark);border-radius:4px;height:8px;width:100%}.control-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#bb86fc;background:var(--accent-color);border-radius:50%;cursor:pointer;height:20px;margin-top:-6px;width:20px}.control-group input[type=text]{background-color:#121212;background-color:var(--bg-dark);border:1px solid #ffffff1a;border-radius:8px;color:#e0e0e0;color:var(--text-primary);padding:10px}.control-group button{background-color:#3700b3;background-color:var(--accent-color-variant);border:none;border-radius:8px;color:#e0e0e0;color:var(--text-primary);cursor:pointer;padding:10px 15px;transition:background-color .3s}.control-group button:hover{background-color:#bb86fc;background-color:var(--accent-color)}.book-table-container{background-color:#1e1e1e;background-color:var(--bg-dark-light);border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 8px 15px #0000004d;overflow:hidden}.book-table thead{background-color:#ffffff0d}.book-table th{color:#a0a0a0;color:var(--text-secondary);font-size:.8em;letter-spacing:1px;padding:15px}.book-table td{border-bottom:1px solid #ffffff0d;color:#e0e0e0;color:var(--text-primary);padding:15px}.book-row{cursor:pointer;transition:background-color .3s}.book-row:hover{background-color:#ffffff0d}.loader{background-color:#121212;background-color:var(--bg-dark);color:#a0a0a0;color:var(--text-secondary)}.table-actions{background-color:#ffffff0d;display:flex;justify-content:flex-end;padding:15px}.csv-export-btn{background-color:#bb86fc;background-color:var(--accent-color);color:#121212;color:var(--bg-dark);font-weight:600;text-decoration:none;transition:background-color .3s}.csv-export-btn:hover{background-color:#9768d1}.book-details-modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#000c}.book-details-modal{background-color:#1e1e1e;background-color:var(--bg-dark-light);border:1px solid #ffffff1a;border-radius:15px;box-shadow:0 15px 30px #0006;max-height:90%;max-width:900px}.close-btn{align-items:center;background:#ffffff1a;border-radius:50%;color:#e0e0e0;color:var(--text-primary);display:flex;height:40px;justify-content:center;transition:background-color .3s;width:40px}.close-btn:hover{background:#fff3}.book-cover-section{padding:20px}.book-cover-image{border-radius:10px;box-shadow:0 10px 20px #0000004d;max-height:500px}.book-cover-overlay{background-color:#000000b3;border-radius:10px;bottom:30px;left:30px;right:30px}.book-info-section{background-color:#ffffff0d;flex:1 1;padding:30px}.book-review{background-color:#ffffff0d;font-style:italic;margin-bottom:15px;max-height:150px;overflow:auto}.review-author{color:#bb86fc;color:var(--accent-color);font-weight:700;margin-bottom:10px}.review-text{color:#a0a0a0;color:var(--text-secondary)}.review-rating{color:#bb86fc;color:var(--accent-color);font-style:italic}.books-container{grid-gap:30px;align-items:stretch;display:grid;gap:30px;justify-content:center;margin:0 auto;max-width:1200px;max-width:var(--max-content-width);padding:20px;width:100%}.books-container.gallery-view{grid-template-columns:1fr;max-width:800px}.books-container.table-view{grid-template-columns:repeat(3,1fr)}.book-card{background:#1e1e1e;background:var(--bg-dark-light);border-radius:15px;box-shadow:0 10px 25px #0000001a,inset 0 2px 4px #fff9;box-shadow:0 10px 25px var(--shadow-color),inset 0 2px 4px #fff9;display:flex;flex-direction:column;height:100%;perspective:1000px;position:relative;transition:all .4s ease;width:100%}.gallery-view .book-card{box-shadow:0 15px 30px #0000001a;flex-direction:row;margin-bottom:20px;max-height:none;min-height:500px}.gallery-view .book-card img{height:auto;max-height:600px;min-height:500px;object-fit:cover;width:40%}.gallery-view .book-details{display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;overflow:visible;padding:30px}.gallery-view .book-details h3{color:#e0e0e0;color:var(--text-primary);display:block;font-size:1.5em;line-height:1.4;margin-bottom:20px}.gallery-view .book-details h3,.gallery-view .book-details p{max-width:100%;overflow-wrap:break-word;white-space:normal;word-break:break-word}.gallery-view .book-details p{line-height:1.6;margin-bottom:15px}.table-view .book-card{flex-direction:column}.table-view .book-card img{height:350px;object-fit:cover;width:100%}.table-view .book-details{display:flex;flex-direction:column;flex-grow:1;justify-content:space-between;padding:20px}.table-view .book-details h3{font-size:1.2em}.book-card:before{background:linear-gradient(90deg,#6a11cb,#2575fc);background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));content:"";height:5px;left:0;position:absolute;top:0;width:100%}.book-card:hover{box-shadow:0 20px 35px #00000026,inset 0 2px 4px #fff9;transform:translateY(-15px) rotateX(5deg)}.book-card img{background-color:#f0f0f0;height:450px;object-fit:cover;transition:transform .4s ease;width:100%}.book-card img:not([src]){animation:loading-shimmer 1.5s infinite;background-image:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}@keyframes loading-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.book-card:hover img{transform:scale(1.05)}.book-details{display:flex;flex-direction:column;flex-grow:1;justify-content:space-between;overflow:hidden;padding:20px}.book-details h3{color:#e0e0e0;color:var(--text-primary);font-size:1.2em;line-height:1.4}.book-details h3,.book-details p{-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;display:-webkit-box;margin-bottom:10px;max-height:3em;overflow:hidden;text-overflow:ellipsis}.book-details p{line-height:1.5}.book-stats{color:#a0a0a0;color:var(--text-secondary);display:flex;font-size:.9em;justify-content:space-between;margin-top:15px;opacity:.7}.review{background-color:#ffffff0d;font-style:italic;margin-top:15px;max-height:150px;overflow:auto}.review small{display:block;margin-top:10px;opacity:.7;text-align:right}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.book-card{animation:fadeIn .5s ease forwards;animation-delay:calc(var(--index)*.1s);opacity:0}@media screen and (max-width:1200px){.books-container.table-view{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:768px){.books-container.gallery-view,.books-container.table-view{grid-template-columns:1fr}.gallery-view .book-card{flex-direction:column}.gallery-view .book-card img{height:400px;width:100%}}@media screen and (max-width:480px){.book-card img{height:350px}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#121212;background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#6a11cb,#2575fc);background:linear-gradient(to bottom,var(--gradient-start),var(--gradient-end));border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#6a11cb,#2575fc)}.export-button{align-items:center;background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:10px;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;letter-spacing:1px;overflow:hidden;padding:12px 25px;position:relative;text-transform:uppercase;transition:all .4s ease}.export-button:before{background:linear-gradient(120deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:all .6s ease;width:100%}.export-button:hover:before{left:100%}.export-button:hover{box-shadow:0 6px 10px #00000026,0 2px 4px #0000001a;transform:translateY(-3px)}.export-button:active{box-shadow:0 2px 4px #0000001a,0 1px 2px #00000014;transform:translateY(1px)}.export-button svg{margin-right:8px}.export-button.loading{cursor:wait;opacity:.7;pointer-events:none}.export-button.loading:after{animation:loading-dots 1.4s infinite;content:"..."}.load-more-button{align-items:center;background:linear-gradient(135deg,#2196f3,#1e88e5);border:none;border-radius:10px;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014;color:#fff;cursor:pointer;display:flex;display:block;font-size:16px;font-weight:600;gap:10px;justify-content:center;letter-spacing:1px;margin:20px auto;overflow:hidden;padding:12px 25px;position:relative;text-transform:uppercase;transition:all .4s ease}.load-more-button:before{background:linear-gradient(120deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:all .6s ease;width:100%}.load-more-button:hover:before{left:100%}.load-more-button:hover{box-shadow:0 6px 10px #00000026,0 2px 4px #0000001a;transform:translateY(-3px)}.load-more-button:active{box-shadow:0 2px 4px #0000001a,0 1px 2px #00000014;transform:translateY(1px)}.load-more-button svg{margin-right:8px}.load-more-button.loading{cursor:wait;opacity:.7;pointer-events:none}.load-more-button.loading:after{animation:loading-dots 1.4s infinite;content:"..."}@keyframes loading-dots{0%,20%{content:"."}33%{content:".."}66%{content:"..."}to{content:"."}}.seed-input{gap:10px}.seed-input-wrapper{align-items:center;border:1px solid #ddd;border-radius:6px;display:flex;overflow:hidden;position:relative}.seed-input input{border:none;flex-grow:1;font-size:14px;outline:none;padding:8px;width:calc(100% - 40px)}.seed-generate-btn{align-items:center;background:none;border:none;border-left:1px solid #ddd;cursor:pointer;display:flex;font-size:18px;height:100%;justify-content:center;padding:8px;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:background-color .3s ease;width:40px}.seed-generate-btn:hover{background-color:#f0f0f0}.seed-input label{color:#666;font-size:12px;text-transform:uppercase}.table-view{margin-top:20px;overflow-x:auto;width:100%}.table-view table{background-color:#fff;border-collapse:initial;border-radius:12px;border-spacing:0;box-shadow:0 4px 6px #0000001a;overflow:hidden;width:100%}.table-view thead{background:linear-gradient(135deg,#6a5acd,#7b68ee);color:#fff}.table-view td,.table-view th{border-bottom:1px solid #e0e0e0;padding:15px;text-align:left;transition:background-color .3s ease}.table-view th{font-size:14px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.table-view tbody tr{background-color:#fff;transition:background-color .3s ease}.table-view tbody tr:nth-child(2n){background-color:#f9f9f9}.table-view tbody tr:hover{background-color:#6a5acd0d}.table-view td{color:#333;font-size:15px}.table-view td:first-child{color:#6a5acd;font-weight:500}@media (max-width:768px){.table-view{overflow-x:scroll}.table-view table{min-width:800px}}.load-more-trigger{height:20px;margin:20px 0}.expanded-book-details{background-color:#f9f9f9;transition:all .3s ease}.book-details-content{gap:20px}.expanded-book-cover{border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:200px}.book-reviews{flex-grow:1}.book-reviews h4{color:#6a5acd;margin-bottom:15px}.review{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:15px}.review,.review p{margin-bottom:10px}.review p{color:#333}.review span{color:#666;font-size:.9em;font-style:italic}.region-select{display:flex;gap:10px;margin-bottom:20px}.region-btn{align-items:center;background-color:#f0f0f0;border:2px solid #0000;border-radius:8px;display:flex;gap:8px;padding:8px 15px;transition:all .3s ease}.region-btn.active,.region-btn:hover{background-color:#6a5acd1a}.region-btn.active{border-color:#6a5acd;color:#6a5acd}.slider-container{display:flex;gap:20px;margin-bottom:20px}.slider-container label{display:flex;flex-direction:column;gap:10px;width:100%}.slider-container input[type=range]{accent-color:#6a5acd;width:100%}.view-toggle{margin-bottom:20px}.view-toggle button{background-color:#f0f0f0;border:none;border-radius:8px;cursor:pointer;padding:8px;transition:background-color .3s ease}.view-toggle button.active,.view-toggle button:hover{background-color:#6a5acd;color:#fff}.csv-export-btn{background-color:#f0f0f0;border-radius:8px;justify-content:center;padding:8px}.csv-export-btn:hover{background-color:#6a5acd;color:#fff}.App{margin:0 auto;max-width:1200px}.config-container{align-items:center;background-color:#2c2c2c;border-radius:10px;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px;padding:20px}.config-container label{color:#e0e0e0;display:flex;flex-direction:column;gap:10px}.likes-reviews-input input[type=range],.locale-select select,.seed-input input{background-color:#1c1c1c;border:1px solid #444;border-radius:4px;color:#e0e0e0;padding:8px;width:100%}.likes-reviews-input label{width:200px}.loader{background-color:#2c2c2c;border-radius:10px;color:#e0e0e0;margin-top:20px}.seed-input{display:flex;flex-direction:column;gap:5px}.seed-container{align-items:center;display:flex;gap:10px}.seed-container input{background-color:#1c1c1c;border:1px solid #444;border-radius:4px;color:#e0e0e0;flex-grow:1;padding:8px}.seed-container button{align-items:center;background-color:#3f51b5;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background-color .3s ease}.seed-container button:hover{background-color:#354495}input[type=range]{-webkit-appearance:none;background:#3f51b5;border-radius:5px;height:10px;opacity:.7;outline:none;transition:opacity .2s;width:100%}input[type=range]:hover{opacity:1}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#e0e0e0;border-radius:50%;cursor:pointer;height:20px;width:20px}input[type=range]::-moz-range-thumb{background:#e0e0e0;border-radius:50%;cursor:pointer;height:20px;width:20px}.export-container{justify-content:center}.csv-export-btn{align-items:center;border-radius:4px;display:flex;gap:10px;padding:10px 15px;transition:background-color .3s ease,transform .1s ease}.csv-export-btn:hover{transform:scale(1.05)}.csv-export-btn:active{transform:scale(.95)}.likes-reviews-input,.locale-select,.seed-input{display:flex;flex-direction:column;gap:10px}.likes-reviews-input input,.locale-select select,.seed-input input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px}.seed-input{position:relative}.seed-input button{background:none;border:none;cursor:pointer;font-size:20px;position:absolute;right:5px;top:50%;transform:translateY(-50%)}.likes-reviews-input{align-items:center;display:flex;flex-direction:row;gap:20px}.likes-reviews-input label{flex-direction:column;gap:10px}.export-container,.likes-reviews-input label{align-items:center;display:flex}.csv-export-btn{background-color:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .3s ease}.csv-export-btn:hover{background-color:#45a049}.loader{color:#666;font-size:14px;padding:20px;text-align:center}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.book-table-container{width:100%}.view-toggle{display:flex;gap:10px;justify-content:flex-end;margin-bottom:15px}.view-btn{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:5px 10px;transition:background-color .3s ease,color .3s ease}.view-btn.active{background-color:#4caf50;color:#fff}.view-btn:hover{background-color:#f0f0f0}.book-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.book-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;cursor:pointer;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.book-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-5px)}.book-card-content{display:flex;flex-direction:column}.book-cover{height:300px;overflow:hidden}.book-cover-image{height:100%;object-fit:cover}.book-details{padding:15px}.book-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#1a1a1a;font-size:16px;font-weight:600;margin-bottom:5px;overflow:hidden;text-overflow:ellipsis;transition:color .3s ease;white-space:nowrap}.book-card:hover .book-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#3498db,#2c3e50);-webkit-background-clip:text}.book-authors{color:#666;font-size:14px;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-meta{align-items:center;color:#888;display:flex;font-size:12px;justify-content:space-between}.book-index{color:#4caf50;font-weight:600}.book-likes,.book-reviews{align-items:center;display:flex;gap:5px}.heart-icon,.review-icon{font-size:14px}.book-table{background-color:#fff;border-collapse:collapse;box-shadow:0 4px 6px #0000001a;width:100%}.book-table th{background-color:#f2f2f2;border-bottom:2px solid #4caf50;color:#333;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px;text-align:left;text-transform:uppercase}.book-table td{border-bottom:1px solid #e0e0e0;color:#333;font-size:14px;padding:12px}.book-table tr:nth-child(2n){background-color:#f9f9f9}.book-table tr:hover{background-color:#f5f5f5;transition:background-color .3s ease}.book-table td:first-child{color:#4caf50;font-weight:600}.book-table td:nth-child(2){color:#666;font-family:monospace}.book-table td:nth-child(3){color:#333;font-weight:500}.book-table td:nth-child(4),.book-table td:nth-child(5){color:#666}.book-table td:nth-child(6),.book-table td:nth-child(7){color:#4caf50;font-weight:500}.book-table td button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background-color .3s ease}.book-table td button:hover{background-color:#45a049}@media (max-width:1200px){.book-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.book-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.book-grid{grid-template-columns:1fr}}.book-details-modal-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.book-details-modal{background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:90%}.close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:24px;position:absolute;right:15px;top:15px;transition:color .3s ease}.close-btn:hover{color:#333}.book-details-content{display:flex;padding:20px}.book-cover-section{flex:1 1;position:relative}.book-cover-image{border-radius:8px;box-shadow:0 4px 10px #0003;width:100%}.book-cover-overlay{background:linear-gradient(0deg,#000000b3,#0000);border-bottom-left-radius:8px;border-bottom-right-radius:8px;bottom:0;color:#fff;left:0;padding:15px;position:absolute;right:0}.book-modal-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#2c3e50,#3498db);-webkit-background-clip:text;font-size:24px;font-weight:700;margin-bottom:5px;transition:background .3s ease}.book-cover-overlay:hover .book-modal-title,.book-modal-authors{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#3498db,#2c3e50);-webkit-background-clip:text}.book-modal-authors{color:#fffc;font-size:16px;font-weight:500;transition:background .3s ease}.book-cover-overlay:hover .book-modal-authors{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#2c3e50,#3498db);-webkit-background-clip:text}.book-info-section{flex:1.5 1;padding-left:30px}.book-details-heading,.book-reviews-heading{border-bottom:2px solid #4caf50;color:#333;margin-bottom:15px;padding-bottom:10px}.book-details-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.book-detail-item{display:flex;flex-direction:column}.book-detail-label{color:#666;font-size:12px;margin-bottom:5px;text-transform:uppercase}.book-detail-value{color:#333;font-size:15px;font-weight:500}.book-reviews-container{display:flex;flex-direction:column;gap:15px}.book-review{background-color:#f9f9f9;border-radius:8px;padding:15px}.review-text{color:#555;font-size:14px;font-style:italic;margin-bottom:10px}.review-meta{align-items:center;display:flex;justify-content:space-between}.review-author{color:#666;font-size:12px}.review-rating{color:gold;font-size:14px}@media (max-width:768px){.book-details-content{flex-direction:column}.book-info-section{margin-top:20px;padding-left:0}.book-details-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.f6dff20d.css.map*/