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;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-header{align-items:center;background-color:#20232a;box-sizing:border-box;color:#fff;display:flex;justify-content:space-between;left:0;padding:1rem 2rem;position:fixed;top:0;width:100%;z-index:1000}.app-header .logo{color:#ffab00;font-size:1.4rem;text-decoration:none}nav{align-items:center;display:flex;gap:1.5rem}nav a,nav button{background:none;border:none;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;margin-left:1rem;padding:0;text-decoration:none;transition:color .3s}nav a:hover,nav button:hover{color:#ffab00}.logo-container{align-items:center;display:flex;text-decoration:none}nav a.active{border-bottom:2px solid #ffab00;color:#ffab00;font-weight:700}.logo-image{height:40px;margin-right:.6rem;width:auto}.site-title{color:#ffab00;font-size:1.2rem;font-weight:700}.cart-link{position:relative}.cart-badge{background:#ff5252;border-radius:50%;color:#fff;font-size:.75rem;font-weight:700;padding:2px 8px;position:absolute;right:-10px;top:-6px}.nav-button{background-color:#ffab00!important;border-radius:5px;color:#20232a!important;font-weight:700;padding:.5rem 1rem;white-space:nowrap}.nav-toggle{background:#0000;border:0;cursor:pointer;display:none;padding:0;z-index:1001}.hamburger{display:block;position:relative;width:25px}.hamburger,.hamburger:after,.hamburger:before{background:#fff;height:3px;transition:all .2s ease-in-out}.hamburger:after,.hamburger:before{content:"";left:0;position:absolute;width:100%}.hamburger:before{top:-8px}.hamburger:after{bottom:-8px}@media (max-width:850px){.nav-toggle{display:block}nav{align-items:center;background-color:#20232a;flex-direction:column;gap:2rem;justify-content:center;max-width:300px;min-height:100vh;padding-top:5rem;position:fixed;right:-100%;top:0;transition:right .3s ease-in-out;width:60%}nav.nav-open{right:0}nav a,nav button{font-size:1.2rem}}@media (max-width:480px){.app-header{padding:1rem}.site-title{font-size:1rem}}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background-color:#00000080;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:1rem;position:fixed;z-index:1000}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}.quick-auth-modal{animation:fadeIn .4s ease-in-out forwards;background:#181818f2;border:2px solid #ffffff26;border-radius:12px;box-shadow:0 12px 30px #0009;color:#000;left:50%;max-height:95vh;max-width:550px;overflow-y:auto;padding:2rem;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}.quick-auth-modal h2{color:#fff;font-size:1.8rem;font-weight:600;margin-bottom:1rem;text-align:center}.auth-form{gap:1rem}.auth-form,.auth-group{display:flex;flex-direction:column}.auth-group label{color:grey;font-size:.95rem;font-weight:500;margin-bottom:.25rem}.auth-form input[type=email],.auth-form input[type=password]{background-color:#ffffff1f;border:1px solid #ffffff80;border-radius:6px;box-shadow:inset 0 1px 2px #0006;color:#000;font-size:.95rem;font-weight:500;height:38px;padding:.6rem .75rem;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.auth-form input::placeholder{color:grey}.auth-form input:focus{border-color:#00eaff;box-shadow:0 0 8px #00eaff99;outline:none}.auth-error{background-color:#ff4d4d33;border:1px solid #ff4d4d99;border-radius:6px;color:#ff4d4d}.auth-error,.feedback{animation:fadeIn .3s ease;font-weight:500;padding:.6rem;text-align:center}.feedback{background-color:#28a74533;border:1px solid #28a74599;border-radius:6px;color:#28a745}.auth-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.auth-actions .btn{border:none;border-radius:6px;cursor:pointer;font-weight:600;padding:.75rem;transition:background .3s ease;width:100%}.auth-actions .btn.email-login{background-color:#1d4ed8;color:#fff}.auth-actions .btn.email-login:hover{background-color:#2563eb}.auth-actions .btn.google-login{background-color:#db4437;color:#fff}.auth-actions .btn.google-login:hover{background-color:#c1351d}.auth-actions .btn.cancel{background-color:#444;color:#fff}.auth-actions .btn.cancel:hover{background-color:#555}.quote-generator{background:linear-gradient(135deg,#0f0f0f,#1a1a1a);border:1px solid #ffffff14;border-radius:12px;box-shadow:0 8px 24px #0009;color:#fff;font-family:Inter,sans-serif;padding:2rem}.quote-generator input,.quote-generator select{background-color:#111;border:1px solid #555;border-radius:8px;box-shadow:inset 0 1px 2px #0006;color:#fff;font-size:16px;font-weight:500;margin-bottom:1rem;padding:12px 16px;width:100%}.quote-generator input::placeholder,.quote-generator select{color:#aaa}.quote-generator button{background:linear-gradient(135deg,#7f00ff,#e100ff);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-bottom:1rem;margin-right:0;padding:12px 24px;transition:box-shadow .3s ease;width:100%}.quote-generator button:hover{box-shadow:0 0 12px #7f00ff99}.quote-generator input[type=file]::-webkit-file-upload-button{background:#333;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 16px}.modal-buttons{display:flex;flex-direction:column;gap:.75rem;justify-content:center;margin-top:1.5rem}.modal-buttons button{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:12px 24px;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.modal-buttons .copy-btn{background:linear-gradient(135deg,#00c6ff,#0072ff);color:#fff}.modal-buttons .copy-btn:hover{background:linear-gradient(135deg,#0090ff,#0056cc);box-shadow:0 0 8px #0090ff80}.modal-buttons .close-btn{background-color:#555;color:#fff}.modal-buttons .close-btn:hover{background-color:#777;box-shadow:0 0 8px #fff3}.auth-container{background-color:#fff;border-radius:12px;box-shadow:0 0 16px #0009;margin:auto;max-width:400px;padding:24px;text-align:center;width:90%}.auth-container h2{color:#111;font-size:24px;font-weight:600;margin-bottom:16px}@media (max-width:768px){.quick-auth-modal{left:50%;max-height:90vh;max-width:95%;padding:1.5rem;top:50%;transform:translate(-50%,-50%)}.quick-auth-modal h2{font-size:1.6rem}.auth-form input[type=email],.auth-form input[type=password]{font-size:.9rem;padding:.5rem .75rem}.auth-form input[type=email]:-ms-input-placeholder,.auth-form input[type=email]::-moz-placeholder,.auth-form input[type=email]::-webkit-input-placeholder,.auth-form input[type=email]::placeholder,.auth-form input[type=password]:-ms-input-placeholder,.auth-form input[type=password]::-moz-placeholder,.auth-form input[type=password]::-webkit-input-placeholder,.auth-form input[type=password]::placeholder{font-size:.9rem}.auth-actions .btn{font-size:.95rem;padding:.65rem}.auth-error,.feedback{font-size:.95rem;padding:.5rem}.quote-generator{padding:1.5rem}.quote-generator input,.quote-generator select{font-size:15px;padding:10px 14px}.quote-generator button{font-size:.95rem;margin-bottom:.75rem;padding:10px 18px}.modal-buttons{gap:.75rem}.modal-buttons button{font-size:1rem;padding:10px 18px}}@media (max-width:480px){.modal-backdrop{padding:.5rem}.quick-auth-modal{padding:1rem;width:95%}.quick-auth-modal h2{font-size:1.5rem}.auth-form input[type=email],.auth-form input[type=password]{font-size:.85rem;height:auto;padding:.4rem .6rem}.auth-form input[type=email]:-ms-input-placeholder,.auth-form input[type=email]::-moz-placeholder,.auth-form input[type=email]::-webkit-input-placeholder,.auth-form input[type=email]::placeholder,.auth-form input[type=password]:-ms-input-placeholder,.auth-form input[type=password]::-moz-placeholder,.auth-form input[type=password]::-webkit-input-placeholder,.auth-form input[type=password]::placeholder{font-size:.85rem}.auth-actions .btn{font-size:.9rem;padding:.6rem}.auth-error,.feedback{font-size:.85rem;padding:.4rem}.quote-generator{padding:1rem}.quote-generator input,.quote-generator select{font-size:14px;padding:8px 12px}.quote-generator button{margin-bottom:.6rem}.modal-buttons button,.quote-generator button{font-size:.9rem;padding:8px 16px}}.hero-banner{background:url(/static/media/hero.0e3e8592f619dbf9c8ba.jpeg) 50%/cover no-repeat;color:#fff;height:90vh;position:relative}.overlay{align-items:center;background-color:#0000008c;display:flex;height:100%;justify-content:center;width:100%}.hero-content{max-width:700px;padding:2rem;text-align:center}.hero-content h1{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:1rem}.hero-content p{font-size:clamp(1rem,3vw,1.25rem);line-height:1.6;margin-bottom:2rem}.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn{border-radius:5px;box-shadow:0 2px 6px #0003;font-weight:700;padding:.8rem 1.6rem;text-decoration:none;transition:all .3s ease}.btn.primary:hover{transform:scale(1.05)}.btn.secondary{background-color:#444;color:#fff}.btn.secondary:hover{background-color:#666;transform:scale(1.05)}.btn:focus{outline:2px solid #ffab00;outline-offset:3px}@media (max-width:600px){.cta-buttons{align-items:center;flex-direction:column}.btn{max-width:300px;width:100%}}.steps{background-color:#f5f5f5;padding:4rem 2rem;text-align:center}.steps h2{font-size:2rem;margin-bottom:2rem}.step-cards{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.step-card{background:#fff;border-radius:10px;box-shadow:0 4px 10px #0000001a;max-width:250px;padding:2rem;transition:transform .3s ease}.step-card:hover{transform:translateY(-5px)}.icon{font-size:2rem;margin-bottom:1rem}.featured{background-color:#fff;padding:4rem 2rem;text-align:center}.featured h2{font-size:2rem;margin-bottom:2rem}.book-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.book-card{background:#f9f9f9;border-radius:10px;box-shadow:0 4px 8px #0000001a;max-width:250px;padding:1.5rem}.book-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-5px)}.book-card img{border-radius:6px;height:300px;margin-bottom:1rem;object-fit:cover;width:100%}.book-card h3{font-size:1.2rem;margin-bottom:.5rem}.book-card p{font-size:.95rem;margin-bottom:1rem}.view-book-btn{background-color:#ffab00;border:none;border-radius:5px;color:#000;cursor:pointer;display:inline-block;font-weight:700;padding:.6rem 1.4rem;text-decoration:none;transition:background-color .2s ease-in-out}.view-book-btn:hover{background-color:#ffd54f}.view-book-btn:focus{outline:2px dashed #ffab00;outline-offset:4px}@media (max-width:600px){.book-card{max-width:90%}}.home-section{padding:4rem 2rem}.home-section.light-bg{background-color:#f9f9f9}.home-section.alt-bg{background-color:#f0f0f0}.home-section h2{color:#333;font-size:2rem;margin-bottom:2rem;text-align:center}.book-card{align-items:flex-end;background-color:#2c3e50;background-position:50%;background-size:cover;border-radius:12px;box-shadow:0 10px 20px #0003;color:#fff;display:flex;height:400px;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:280px}.book-card:hover{box-shadow:0 15px 25px #0000004d;transform:translateY(-8px)}.book-card-overlay{background:linear-gradient(0deg,#000000e6 0,#00000080 50%,#0000);inset:0;position:absolute;transition:background .4s ease;z-index:1}.book-card:hover .book-card-overlay{background:linear-gradient(0deg,#000000f2 0,#0000004d 60%,#0000)}.book-card-content{box-sizing:border-box;padding:1.5rem;position:relative;width:100%;z-index:2}.book-card-content h3{font-size:1.4rem;line-height:1.2;margin-bottom:.5rem}.book-card-content .description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;font-size:.9rem;height:4.5em;margin-bottom:1rem;opacity:.85;overflow:hidden;text-overflow:ellipsis}.book-card-content .price{color:#ffab00;font-size:1.1rem;font-weight:700;margin-bottom:1.2rem}.book-card-content button{background-color:#ffab00;border:none;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 1rem;transition:background-color .3s ease,transform .2s ease;width:100%}.book-card-content button:hover:not(:disabled){background-color:#ffd54f;transform:scale(1.05)}.book-card-content button:disabled{background-color:#2ecc71;color:#fff;cursor:not-allowed}.booklist{padding:4rem 2rem;text-align:center}.booklist h2{font-size:2rem;margin-bottom:2rem}.booklist-grid{flex-wrap:wrap;gap:2rem}.booklist-grid,.cart-wrapper{display:flex;justify-content:center}.cart-wrapper{align-items:center;background:url(/static/media/bookshelf-background.9b7f2ab4e3b5439512a8.jpeg) 50%/cover no-repeat;min-height:100vh;padding:2rem}.cart-container{background:#fffffff2;border-radius:12px;box-shadow:0 8px 32px #00000040;max-width:600px;padding:2.5rem;text-align:center;width:100%}.cart-items{list-style:none;margin-bottom:1.5rem;padding:0}.cart-items li{margin-bottom:.8rem}.btn.primary{background-color:#ffab00;border:none;border-radius:6px;color:#000;font-weight:700;padding:.75rem 1.5rem;text-decoration:none;transition:background .3s ease}.btn.primary:hover{background-color:#e69900}.upload-wrapper{align-items:center;background:url(/static/media/upload-bg.6c14c5c8bacecbd150c6.jpeg) 50%/cover no-repeat;display:flex;justify-content:center;min-height:100vh;padding:2rem}.upload-form{background:#ffffffa1;border-radius:10px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;gap:1rem;max-width:550px;padding:2.5rem 2rem;width:100%}.upload-form h2{color:#333;margin-bottom:1rem;text-align:center}.upload-form input,.upload-form textarea{border:1px solid #ccc;border-radius:6px;font-size:1rem;padding:.8rem 1rem}.upload-form textarea{min-height:100px;resize:vertical}.upload-form button{background-color:#ffab00;border:none;border-radius:6px;color:#000;cursor:pointer;font-weight:700;padding:.8rem;transition:background .3s ease}.upload-form button:hover{background-color:#e69900}.upload-form button:disabled{background-color:#ccc;cursor:not-allowed}.upload-form label{color:#555;font-size:.9rem;font-weight:700;margin-bottom:-.5rem;margin-top:.5rem}.progress-bar-container{background-color:#e0e0e0;border-radius:6px;margin-top:.5rem;overflow:hidden;width:100%}.progress-bar{background-color:#2ecc71;color:#fff;font-weight:700;height:24px;line-height:24px;text-align:center;transition:width .4s ease-in-out;width:0}.payment-wrapper{align-items:center;background-color:#f4f4f4;display:flex;justify-content:center;min-height:80vh;padding:2rem}.payment-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:500px;padding:3rem;width:100%}.payment-container h2{color:#333;margin-bottom:2rem;text-align:center}.payment-items{list-style:none;padding:0}.payment-items li{border-bottom:1px solid #eee;padding:.75rem 0}.payment-items li,.payment-total{display:flex;justify-content:space-between}.payment-total{margin-top:1.5rem}.btn-pay{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;display:block;font-size:1.1rem;margin-top:2rem;padding:.75rem;width:100%}.btn-pay:hover{background-color:#218838}.confirmation-wrapper{display:flex;justify-content:center;padding:2rem}.confirmation-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:600px;padding:1.5rem;width:100%}.order-items{list-style:none;padding:0}.order-items li{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0}.order-items a{color:#007bff;text-decoration:none}.order-items a:hover{text-decoration:underline}.order-total{display:flex;font-weight:700;justify-content:space-between;margin-top:1rem}.btn-continue{background:#28a745;border-radius:4px;color:#fff;display:inline-block;margin-top:1rem;padding:.5rem 1rem;text-decoration:none}.btn-continue:hover{background:#218838}.dashboard-container{background-color:#fff;border-radius:12px;box-shadow:0 6px 20px #00000014;display:flex;flex-direction:column;margin:2rem auto;max-width:900px;min-height:calc(100vh - 200px);padding:2rem}.dashboard-container h1{color:#333;margin-bottom:.5rem;text-align:center}.dashboard-container p{color:#666;margin-bottom:2.5rem;text-align:center}.book-list{display:flex;flex-direction:column;gap:1rem;margin-top:auto}.book-item{align-items:center;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;padding:1rem 1.5rem;transition:box-shadow .2s ease-in-out}.book-item:hover{box-shadow:0 4px 12px #0000000f}.book-actions{display:flex;gap:.75rem}.btn-delete,.btn-edit{border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.6rem 1.2rem;text-decoration:none}.btn-edit{background-color:#007bff}.btn-edit:hover{background-color:#0056b3}.btn-delete{background-color:#dc3545}.btn-delete:hover{background-color:#a71d2a}@media (max-width:600px){.book-item{align-items:flex-start;flex-direction:column}.book-actions{margin-top:.5rem}}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;margin:0 0 2rem;padding:1rem;text-align:center}.auth-wrapper{align-items:center;background-color:#f4f4f4;display:flex;justify-content:center;min-height:80vh;padding:2rem}.auth-form{background:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a;max-width:450px;padding:2rem 3rem;text-align:center;width:100%}.auth-form h2{color:#333;font-size:1.8rem;margin-bottom:1.5rem}.auth-form input,.auth-form select{border:1px solid #ddd;border-radius:5px;box-sizing:border-box;font-size:1rem;margin-bottom:1rem;padding:.8rem;width:100%}.auth-form button{background-color:#ffab00;border:none;border-radius:5px;color:#20232a;cursor:pointer;font-size:1.1rem;font-weight:700;padding:.9rem;transition:background-color .3s;width:100%}.auth-form button:hover{background-color:#e09a00}.auth-form button:disabled{background-color:#ccc;cursor:not-allowed}.auth-form p{font-size:.9rem;margin-top:1.5rem}.auth-form p a{color:#007bff;text-decoration:none}.auth-form p a:hover{text-decoration:underline}.error-message{color:red}.site-footer{background:#333;color:#fff;padding:1.5rem 2rem;text-align:center}.footer-links{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:.5rem}.footer-links a{color:#ffab00;text-decoration:none}.footer-links a:hover{text-decoration:underline}
/*# sourceMappingURL=main.b2bb05ed.css.map*/