:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.user-id-container{display:flex;gap:12px;justify-content:flex-end;padding:12px 24px;align-items:center;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;max-width:1280px;margin:0 auto;box-sizing:border-box}.user-id-section{display:flex;align-items:center;gap:12px}.user-id-label{font-size:.9rem;color:#6c757d;font-weight:500;min-width:45px}.user-id-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;width:280px;background-color:#f5f5f5;color:#666;cursor:not-allowed}.reset-user-button{padding:8px 16px;background-color:#e74c3c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s ease}.reset-user-button:hover{background-color:#c0392b}.reset-user-button:active{transform:scale(.98)}.admin-checkbox-section{display:flex;align-items:center;gap:8px}.admin-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:2px solid #adb5bd;border-radius:4px;cursor:pointer;position:relative;transition:background-color .2s ease,border-color .2s ease}.admin-checkbox:checked{background-color:#007bff;border-color:#007bff}.admin-checkbox:checked:before{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.admin-checkbox:hover{border-color:#0056b3}.admin-checkbox-label{font-size:.9rem;color:#495057;cursor:pointer;-webkit-user-select:none;user-select:none}.layout{max-width:2000px;margin:0 auto;min-height:100vh;padding:20px}@media (min-width: 768px){.layout{display:flex;gap:32px}.main-content{flex:1;min-width:0;max-width:calc(100% - 380px);order:1}.sidebar{width:380px;flex-shrink:0;order:2}}@media (max-width: 767px){.layout{display:flex;flex-direction:column;gap:24px;padding:16px}.main-content{order:2}.sidebar{width:100%;order:1}}.main-content{background-color:#fff;padding:24px;border-radius:8px;box-shadow:0 2px 4px #0000000d}.sidebar{background-color:#f5f5f5;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000000d}.product-item{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease-in-out;display:flex;flex-direction:column;height:100%}.product-item-list{flex-direction:row}.product-item-list .product-info{display:flex;flex-direction:column;justify-content:space-between}.product-item-list .product-description{margin:12px 0;color:#666;font-size:.9rem}.product-info{padding:16px;flex:1;display:flex;flex-direction:column}.product-title{font-size:1.1rem;margin:0 0 8px;color:#2c3e50;line-height:1.3}.product-item-grid .product-title{min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.product-item-list .product-title{min-height:unset;display:block;overflow:visible}.product-author{color:#666;font-size:.9rem;margin-bottom:auto}.product-description{display:none}.product-item-list .product-description{display:block}.product-footer{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:12px}.product-item-list .product-footer{flex-direction:row;justify-content:space-between;align-items:center;margin-top:24px}.product-price{font-size:1.2rem;font-weight:700;color:#2c3e50;margin:0}.product-item .add-to-cart-button{width:auto;padding:6px 12px;background-color:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease}.product-item.product-item-list .add-to-cart-button{min-width:100px}.product-item .add-to-cart-button:hover{background-color:#2980b9}.product-item .add-to-cart-button:active{transform:scale(.98)}@media (max-width: 900px){.product-item-list{flex-direction:column}.product-item-list .product-info{padding:16px}.product-item-list .product-title{min-height:2.6em}.product-item-list .product-footer{flex-direction:column;align-items:center}.product-item-list .add-to-cart-button{width:100%;max-width:200px}}.products-grid{display:grid;grid-template-columns:repeat(var(--column-count, 4),1fr);gap:24px}.products-list{display:flex;flex-direction:column;gap:24px}.products-list .product-item{display:flex;flex-direction:row;max-width:100%}.products-list .product-cover{width:200px;height:300px;flex-shrink:0}.products-list .product-info{flex:1;padding:24px}@media (max-width: 1200px){.products-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.products-grid{grid-template-columns:repeat(2,1fr)}.products-list .product-item{flex-direction:column}.products-list .product-cover{width:100%;height:auto}}@media (max-width: 500px){.products-grid{grid-template-columns:1fr}}.product-item{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease-in-out}.product-item:hover{transform:translateY(-4px)}.product-cover{width:100%;aspect-ratio:2/3;object-fit:cover}.product-info{padding:16px}.product-title{font-size:1.1rem;margin:0 0 8px;color:#2c3e50}.product-author{color:#666;font-size:.9rem;margin-bottom:12px}.product-price{font-size:1.2rem;font-weight:700;color:#2c3e50;margin-bottom:16px}.add-to-cart-button{width:100%;padding:8px 16px;background-color:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s ease}.add-to-cart-button:hover{background-color:#2980b9}.add-to-cart-button:active{transform:scale(.98)}.quantity-input{display:flex;align-items:center;border:1px solid #ddd;border-radius:4px;overflow:hidden;width:fit-content;background:#f5f5f5}.quantity-button{border:none;background:#f5f5f5;color:#333;font-size:1rem;padding:2px 6px;cursor:pointer;transition:background-color .2s ease;min-width:24px}.quantity-button:hover:not(:disabled){background:#e0e0e0}.quantity-button:disabled{color:#999;cursor:not-allowed}.quantity-value{width:32px;border:none;text-align:center;font-size:.9rem;padding:2px 0;-moz-appearance:textfield;background:#f5f5f5}.quantity-value:focus{outline:none;background:#fff}.quantity-value::-webkit-outer-spin-button,.quantity-value::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cart-item{display:flex;flex-direction:column;padding:12px;border-bottom:1px solid #eee;text-align:left}.cart-item:last-child{border-bottom:none}.cart-item-info{width:100%;margin-bottom:8px}.cart-item-title{font-size:.95rem;margin:0 0 4px;color:#2c3e50;text-align:left;word-wrap:break-word;width:100%}.cart-item-author{font-size:.8rem;color:#666;margin:0 0 8px;text-align:left;width:100%}.cart-item-footer{display:flex;align-items:center;justify-content:space-between;width:100%}.cart-item-price{display:flex;align-items:center;gap:8px;margin:0}.cart-item-controls{display:flex;align-items:center;gap:8px}.cart-item-total{font-size:.8rem;color:#666;margin:0;text-align:left}.cart-item-remove{background:none;border:none;color:#e74c3c;font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;line-height:1;transition:background-color .2s ease}.cart-item-remove:hover{background-color:#fee}.original-total{color:#666;text-decoration:line-through;font-size:.8rem}.discounted-total{color:#e74c3c;font-weight:700;font-size:.9rem}.discount-label{color:#27ae60;font-size:.8rem}.credit-card-form{margin:16px 0;padding:16px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef;position:relative}.test-buttons{position:absolute;top:4px;right:4px;display:flex;gap:4px}.test-button{font-size:.65rem;padding:2px 4px;border:none;border-radius:2px;cursor:pointer;color:#fff;transition:opacity .2s ease;text-transform:uppercase;line-height:1}.test-button:hover{opacity:.9}.test-button.valid{background-color:#27ae60}.test-button.invalid{background-color:#e74c3c}.form-group{margin-bottom:12px}.form-group label{display:block;font-size:.8rem;color:#666;margin-bottom:4px}.form-group input{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;transition:border-color .2s ease}.form-group input:focus{outline:none;border-color:#3498db}.form-row{display:flex;gap:12px}.form-row .form-group{flex:1}.form-row .form-group:last-child{flex:0 0 80px}.purchase-result{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#fffffff2;border-radius:4px;animation:fadeIn .3s ease;z-index:10;cursor:pointer}.purchase-result-content{text-align:center;padding:20px}.purchase-result h3{margin:0 0 8px;font-size:1.2rem}.purchase-result p{margin:0 0 16px;color:#666}.purchase-result.success .checkmark{color:#27ae60;font-size:3rem;animation:scaleIn .3s ease}.purchase-result.error .error-mark{color:#e74c3c;font-size:3rem;animation:scaleIn .3s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.close-button{position:absolute;top:10px;right:10px;background:none;border:none;color:#e74c3c;font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s ease;z-index:11}.close-button:hover{background-color:#fee}.money-back-guarantee{margin-top:24px;padding:16px;background-color:#e8f4ff;border-radius:12px;display:flex;align-items:center;gap:16px;border:2px solid #b3d7ff;box-shadow:0 2px 4px #0000000d}.guarantee-content{flex:1}.guarantee-content h3{margin:0 0 8px;font-size:1.1rem;color:#1a73e8;font-weight:600}.guarantee-content p{margin:0;font-size:.9rem;color:#3c4043;line-height:1.4}.guarantee-icon{font-size:2rem;color:#1a73e8;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#fff;width:48px;height:48px;border-radius:50%;box-shadow:0 2px 4px #0000001a}.discount-offer{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.discount-offer-content{background:#fff;padding:24px;border-radius:12px;max-width:480px;width:90%;position:relative;animation:slideIn .3s ease}.close-button{position:absolute;top:12px;right:12px;background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:4px 12px;border-radius:4px}.close-button:hover{background:#f5f5f5}.discount-offer h3{margin:0 0 16px;color:#2c3e50;font-size:1.5rem;text-align:center}.discount-offer p{margin:0 0 20px;color:#666;text-align:center}.discounted-book{display:flex;gap:16px;margin-bottom:24px;padding:16px;background:#f8f9fa;border-radius:8px}.book-cover{width:100px;height:150px;object-fit:cover;border-radius:4px}.book-info{flex:1}.book-info h4{margin:0 0 8px;color:#2c3e50;font-size:1.1rem}.author{margin:0 0 16px;color:#666;font-size:.9rem}.price{display:flex;align-items:center;gap:12px}.original-price{color:#666;text-decoration:line-through;font-size:.9rem}.discounted-price{color:#e74c3c;font-weight:700;font-size:1.2rem}.add-discounted-book{width:100%;padding:12px;background:#e74c3c;color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.add-discounted-book:hover{background:#c0392b}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.cart-sidebar{display:flex;flex-direction:column;height:auto;min-height:0;padding:20px}.cart-empty{text-align:center;padding:24px;color:#666;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-bottom:16px}.cart-content{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:16px}.cart-items{overflow-y:auto;max-height:60vh;margin:0 0 16px;padding-right:8px;border-bottom:1px solid #ddd}.cart-summary{background:#fff;padding:16px 0}.cart-total{display:flex;justify-content:space-between;align-items:center;font-size:1.1rem;font-weight:700;margin-bottom:16px;color:#2c3e50;padding:0 16px}.credit-card-form{background:#f8f9fa;border-radius:8px;padding:16px;margin:16px 0;border:1px solid #e9ecef}.cart-purchase{width:100%;padding:12px;background-color:#27ae60;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s ease;margin-top:16px}.cart-purchase:hover:not(:disabled){background-color:#219a52}.cart-purchase:disabled{background-color:#95a5a6;cursor:not-allowed}.cart-purchase:active:not(:disabled){transform:scale(.98)}.cart-sidebar h2{text-align:left}#root{margin:0 auto;text-align:center}th,td{padding-left:1rem;padding-right:1rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;background-color:#f9f9f9;color:#333}h1{font-size:2rem;margin-bottom:1.5rem;color:#2c3e50}h2{font-size:1.5rem;margin-bottom:1rem;color:#2c3e50}.panel-page-container{display:flex;flex-direction:column;height:100vh;overflow:hidden}.panel-content{flex-grow:1;display:flex;overflow:hidden;width:100%;max-width:1280px;margin-left:auto;margin-right:auto}.panel-iframe{width:100vw;height:calc(100vh - 80px);border:none}
