.book-card{border:1px solid #ccc;border-radius:5px;padding:8px;display:flex;flex-direction:column;align-items:center;box-sizing:border-box}.book-card img{width:100%;height:auto;border-radius:5px;flex-shrink:0}.book-details{margin-top:16px;text-align:center;width:100%;flex-grow:1;display:flex;flex-direction:column}.book-details h2{font-size:1rem;line-height:1.2;margin:10px 0}.book-details p{font-size:.9rem;margin:10px 0;word-wrap:break-word}.buy-button{background-color:green;color:#fff;border:none;padding:10px 20px;cursor:pointer;border-radius:5px;flex-shrink:0;margin-top:auto;width:100%}@media (max-width:767px){.book-card{padding:4px;margin:0;flex-grow:1;flex-shrink:1;flex-basis:50%;max-width:none;box-sizing:border-box}.book-card:focus-within{z-index:10;transform:scale(1.1);box-shadow:0 10px 20px rgba(0,0,0,.7);background-color:#1c1c1c}.book-card img{max-height:220px;object-fit:contain}.book-details{margin-top:8px;flex-grow:1;display:flex;flex-direction:column;width:100%}.book-details h2{font-size:.7rem;margin:4px 0;line-height:1.1}.book-details p{font-size:.55rem;margin:3px 0;word-wrap:break-word;line-height:1.2}.buy-button{padding:5px 10px;font-size:.65rem;width:100%;margin-top:auto}}.payment-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;z-index:1000}.payment-modal-content{background-color:#282c34;padding:20px;border-radius:8px;width:90%;max-width:500px;position:relative;border:1px solid #444}.modal-close-button{position:absolute;top:10px;right:10px;background:none;border:none;color:#fff;font-size:24px;cursor:pointer}.modal-title{margin-top:0;margin-bottom:5px;font-size:1.2rem}.modal-book-title{font-size:.9rem;color:#aaa;margin-top:0;margin-bottom:20px}.modal-card-element-container{padding:10px;border:1px solid #444;border-radius:4px;margin-bottom:20px}.modal-submit-button{width:100%}.modal-loading{text-align:center;padding:40px 20px;font-size:1.1rem}.modal-error{margin-top:15px}.StripeElement{box-sizing:border-box;height:40px;padding:10px 12px;border:1px solid #ccc;border-radius:4px;background-color:#000}.StripeElement--focus{border-color:#1e90ff}.StripeElement--invalid{border-color:#fa755a}.StripeElement--webkit-autofill{background-color:#fefde5!important}.buy-button:hover{background-color:#006400}.popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fff;border:2px solid green;padding:20px;z-index:1000;text-align:center;color:green;border-radius:10px}.error{color:red;margin-top:10px}body{background-color:#000;color:#fff}.app{display:flex;flex-direction:column;align-items:center;padding:20px;min-height:100vh;box-sizing:border-box}.app>h1{text-align:center;width:100%}.book-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:32px;gap:32px;flex-grow:1}.app-footer,.book-list{width:100%;max-width:1400px}.app-footer{text-align:left;padding:20px 0;margin-top:20px;border-top:1px solid #333;box-sizing:border-box}.app-footer a{color:#1e90ff;text-decoration:none;font-size:.9rem}.app-footer a:hover{color:#fff}@media (max-width:767px){.book-list{display:flex;flex-wrap:wrap;justify-content:center;max-width:350px;align-items:stretch;padding:5px;box-sizing:border-box;grid-gap:0;gap:0;margin-bottom:10px}.app-footer{max-width:350px;padding-left:10px;padding-right:10px;margin-top:10px;padding-top:10px}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}