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}.auth-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:none;border-radius:20px;box-shadow:0 15px 35px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.auth-card:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-5px)}.auth-title{color:#333;font-size:2rem;font-weight:700;margin-bottom:30px}.auth-form .form-control{background:#fff;border:2px solid #e9ecef;border-radius:12px;font-size:16px;padding:12px 16px;transition:all .3s ease}.auth-form .form-control:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 .2rem #667eea40}.auth-form .form-control::placeholder{color:#6c757d;opacity:.7}.auth-btn{background:#0000;border:2px solid #28a745;border-radius:12px;color:#28a745;font-weight:600;padding:12px 30px;transition:all .3s ease}.auth-btn:hover:not(:disabled){background:#28a745;box-shadow:0 5px 15px #28a7454d;color:#fff;transform:translateY(-2px)}.auth-btn:disabled{border-color:#6c757d;color:#6c757d;cursor:not-allowed;opacity:.6}.auth-link{color:#667eea;font-weight:500;transition:color .3s ease}.auth-link:hover{color:#764ba2;text-decoration:none}.forgot-password-link{color:#6c757d;font-size:14px;transition:color .3s ease}.forgot-password-link:hover{color:#667eea;text-decoration:none}.auth-alert{border:none;border-radius:12px;font-weight:500}.auth-card{animation:fadeIn .6s ease-out}@media (max-width:768px){.auth-card{margin:10px;padding:20px;width:95%!important}.auth-title{font-size:1.5rem}.auth-container .d-flex{padding:10px}}.auth-switch-text{color:#6c757d;font-size:14px}.auth-switch-link{color:#667eea;font-weight:500;text-decoration:none;transition:color .3s ease}.auth-switch-link:hover{color:#764ba2;text-decoration:none}.auth-form .form-control.mt-2,.auth-form .form-control.mt-3{margin-top:1rem!important}.auth-form .d-flex.justify-content-between{margin-top:2rem!important}.form-control:invalid{border-color:#e9ecef}.form-control:valid{border-color:#e9ecef}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.d-flex.justify-content-center.align-items-center{padding:20px}.modal-backdrop{align-items:center;animation:fadeIn .3s ease;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:100%}.modal-header{border-bottom:1px solid #e0e0e0;flex-shrink:0;padding:24px 30px 20px}.modal-header h2{color:#333}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;transition:all .2s;width:40px}.close-button:hover{background:#f5f5f5;color:#333}.close-button:disabled{cursor:not-allowed;opacity:.5}.product-form{display:flex;flex-direction:column;height:100%}.form-scrollable{flex:1 1;max-height:calc(90vh - 200px);overflow-y:auto;padding:0 30px}.form-row{display:flex;gap:25px;margin:20px 0}.form-column,.form-row-small{display:flex;gap:15px}.form-column{flex:1 1;flex-direction:column}.form-group label{color:#333;font-size:14px}.form-group input,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 15px;width:100%}.form-group textarea{min-height:60px}.form-group small{color:#666;display:block;font-size:12px;margin-top:4px}.image-upload-group{flex:0 0 250px}.image-upload-area{align-items:center;border:2px dashed #ccc;border-radius:8px;cursor:pointer;display:flex;justify-content:center;min-height:200px;padding:20px;position:relative;text-align:center;transition:all .2s}.image-upload-area:hover{background:#f8f9fa;border-color:#007bff}.image-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.image-placeholder{color:#666}.upload-icon{display:block;font-size:36px;margin-bottom:8px}.image-preview{display:inline-block;position:relative}.image-preview img{border-radius:6px;max-height:180px;max-width:180px;object-fit:cover}.remove-image-btn{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;width:24px}.remove-image-btn:hover{background:#c82333}.form-actions{background:#f8f9fa;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:1px solid #e0e0e0;flex-shrink:0;padding:20px 30px}.cancel-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s}.cancel-btn:hover:not(:disabled){transform:translateY(-1px)}.submit-btn{align-items:center;background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s}.submit-btn:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.cancel-btn:disabled,.submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.error-message{font-size:14px;margin:15px 0;padding:12px 15px}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.modal-backdrop{padding:10px}.modal-content{max-height:95vh}.form-row{flex-direction:column;gap:20px}.image-upload-group{flex:none}.form-scrollable{max-height:calc(95vh - 180px);padding:0 20px}.modal-header{padding:20px 20px 15px}.form-actions{flex-direction:column-reverse;padding:15px 20px}.image-upload-area{min-height:150px}.image-preview img{max-height:120px;max-width:120px}}.modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.description-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e1e5e9;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.close-btn{color:#6c757d;font-size:28px;height:32px;transition:all .2s;width:32px}.close-btn:hover{background:#e9ecef;color:#495057}.modal-body{padding:24px}.product-info{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-bottom:24px;padding:16px}.product-info h3{color:#2c3e50;font-size:1.1rem;margin:0 0 8px}.product-info p{color:#6c757d;font-size:.9rem;margin:0}.loading-state{align-items:center;color:#6c757d;display:flex;flex-direction:column;padding:40px}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.description-form{display:flex;flex-direction:column;gap:20px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#495057;font-size:.9rem;margin-bottom:6px}.form-group input,.form-group textarea{border:2px solid #e9ecef;border-radius:6px;font-size:.95rem;padding:10px 12px;transition:all .2s}.form-group input:focus,.form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-group textarea{font-family:inherit;min-height:80px;resize:vertical}.form-actions{border-top:1px solid #e9ecef;gap:12px;justify-content:flex-end;padding-top:20px}.cancel-btn,.save-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:10px 24px;transition:all .2s}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover:not(:disabled){background:#5a6268}.save-btn{background:#007bff;color:#fff}.save-btn:hover:not(:disabled){background:#0056b3}.cancel-btn:disabled,.save-btn:disabled{cursor:not-allowed;opacity:.6}.button-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:16px;width:16px}@media (max-width:768px){.modal-overlay{padding:10px}.description-modal{max-height:95vh}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.cancel-btn,.save-btn{justify-content:center;width:100%}}.product-tooltip{animation:tooltipFadeIn .3s ease-out;background:#fff;border:2px solid #007bff;border-radius:12px;box-shadow:0 8px 30px #0000004d;height:100%;left:calc(100% + 20px);overflow-y:auto;position:absolute;top:0;width:400px;z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.tooltip-content{display:flex;flex-direction:column;height:100%;padding:20px}.tooltip-header h4{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 8px}.tooltip-header .product-name,.tooltip-header h4{word-wrap:break-word!important;overflow:hidden;overflow-wrap:break-word!important;white-space:normal!important}.tooltip-header .product-name{color:#6c757d;display:block;font-size:14px;font-weight:500}.tooltip-section strong{word-wrap:break-word!important;overflow:hidden;overflow-wrap:break-word!important;white-space:normal!important}.tooltip-body{flex:1 1;overflow-y:auto;padding-right:5px}.tooltip-body::-webkit-scrollbar{width:6px}.tooltip-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.tooltip-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.tooltip-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.tooltip-section{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-bottom:20px;padding:15px}.tooltip-section:last-child{margin-bottom:0}.tooltip-section strong{color:#495057;display:block;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.tooltip-specs{display:flex;flex-direction:column;gap:8px}.tooltip-spec{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:6px 0}.tooltip-spec:last-child{border-bottom:none}.spec-label{color:#6c757d;flex-shrink:0;font-weight:500;max-width:90px;overflow:hidden;width:90px}.spec-label,.spec-value{font-size:13px;line-height:1.4;white-space:normal!important}.spec-value{min-width:0!important;overflow-wrap:break-word!important;text-align:left;word-break:normal!important}@media (max-width:1200px){.product-tooltip{left:calc(100% + 15px);width:320px}}@media (max-width:768px){.product-tooltip{height:auto;left:50%;max-height:80vh;max-width:400px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}}@media (max-width:480px){.tooltip-content{padding:15px}.tooltip-section{padding:12px}}.products-container{margin:0 auto;max-width:1200px;padding:20px;position:relative;z-index:1}.products-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px}.products-title{color:#2c3e50;font-size:2.5rem;font-weight:700;margin:0}.pagination-info{color:#7f8c8d;font-size:1rem;font-weight:500}.products-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));padding:20px 0;position:relative;z-index:1}.product-card{background:#fff;border:1px solid #e1e5e9;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:visible!important;padding:24px;position:relative;transition:all .3s ease;z-index:10}.product-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-5px);z-index:50}.product-image-section{margin-bottom:20px;position:relative;z-index:1}.product-image-container{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;height:250px;justify-content:center;overflow:hidden;position:relative;width:100%;z-index:1}.product-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.product-card:hover .product-image{transform:scale(1.05)}.image-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:3rem;height:100%;justify-content:center;width:100%}.product-badges-overlay{display:flex;flex-direction:column;gap:8px;left:12px;position:absolute;top:12px;z-index:20}.inventory-badge{background:#fffffff2;border:1px solid #27ae6033;border-radius:20px;color:#27ae60}.inventory-badge,.out-of-stock-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.85rem;font-weight:600;padding:6px 12px;z-index:25}.out-of-stock-badge{background:#e74c3cf2;border-radius:20px;color:#fff}.description-badge{animation:pulse 2s infinite;background:linear-gradient(135deg,#28a745,#20c997);border-radius:12px;box-shadow:0 2px 4px #28a7454d;color:#fff;cursor:help;font-size:10px;margin-left:5px;padding:4px 8px;z-index:25}.product-content{display:flex;flex-direction:column;height:calc(100% - 270px);z-index:1}.product-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.product-name{flex:1 1;font-size:1.4rem;line-height:1.3;margin:0 15px 0 0}.product-price{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:1.2rem;font-weight:700;padding:8px 16px;white-space:nowrap}.product-descriptions{flex-grow:1;margin-bottom:20px}.short-description{color:#34495e;font-size:1.1rem;font-weight:500;line-height:1.4;margin-bottom:8px}.long-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#7f8c8d;display:-webkit-box;font-size:.95rem;line-height:1.5;margin:0;overflow:hidden}.product-actions{margin-top:auto;z-index:1}.add-to-cart-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:all .3s ease;width:100%}.add-to-cart-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.add-to-cart-btn:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;transform:none}.description-btn{align-items:center;background:linear-gradient(135deg,#6c757d,#5a6268);border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;justify-content:center;margin-top:8px;padding:8px 12px;transition:all .3s ease;width:100%;z-index:1}.description-btn:hover{background:linear-gradient(135deg,#5a6268,#495057);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.description-btn:active{box-shadow:0 1px 2px #0000001a;transform:translateY(0)}.description-btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.pagination-container{display:flex;justify-content:center;margin-top:40px;padding:20px 0}.pagination{align-items:center;background:#fff;border-radius:50px;box-shadow:0 4px 15px #0000001a;display:flex;gap:10px;padding:15px 25px}.pagination-btn{background:#f8f9fa;border:2px solid #e9ecef;border-radius:25px;color:#495057;cursor:pointer;font-weight:600;min-width:100px;padding:10px 20px;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff;transform:translateY(-2px)}.pagination-btn.disabled{background:#f8f9fa;color:#adb5bd;cursor:not-allowed;opacity:.6}.page-numbers{display:flex;gap:5px}.page-number{align-items:center;background:#0000;border:2px solid #e9ecef;border-radius:50%;color:#495057;cursor:pointer;display:flex;font-weight:600;height:45px;justify-content:center;transition:all .3s ease;width:45px}.page-number:hover{background:#667eea;border-color:#667eea;color:#fff;transform:translateY(-2px)}.page-number.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.no-products{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin:40px 0;padding:80px 20px;text-align:center}.no-products-icon{font-size:4rem;margin-bottom:20px}.no-products h3{color:#2c3e50;font-size:1.8rem;margin-bottom:10px}.no-products p{color:#7f8c8d;font-size:1.1rem}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:100px 20px;text-align:center}.loading-spinner{margin-bottom:20px}.loading-container p{color:#7f8c8d;font-size:1.2rem;font-weight:500}.error-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin:40px 0;padding:80px 20px;text-align:center}.error-container h3{color:#e74c3c;font-size:1.8rem;margin-bottom:15px}.error-container p{color:#7f8c8d;font-size:1.1rem;margin-bottom:25px}.retry-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 30px;transition:all .3s ease}.retry-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.products-title-section{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.add-product-btn{align-items:center;background:linear-gradient(135deg,#27ae60,#2ecc71);border:none;border-radius:12px;box-shadow:0 4px 15px #27ae604d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.add-product-btn:hover{background:linear-gradient(135deg,#229954,#27ae60);box-shadow:0 6px 20px #27ae6066;transform:translateY(-2px)}.add-product-btn:active{transform:translateY(0)}.add-product-icon{font-size:1.2rem;font-weight:700}.add-product-btn.empty-state-btn{font-size:1.1rem;margin-top:20px;padding:14px 28px}.delete-product-btn{align-items:center;background:#ff3b30e6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:32px;justify-content:center;position:absolute;right:10px;top:10px;transition:all .3s ease;width:32px;z-index:100}.delete-product-btn:hover:not(:disabled){background:#ff3b30;transform:scale(1.1)}.delete-product-btn:disabled{background:#ff3b3080;cursor:not-allowed}.deleting-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.product-card.deleting{opacity:.6;pointer-events:none}.product-card.has-description{position:relative;transition:all .3s ease}.product-card.has-description:hover{border-color:#667eea;box-shadow:0 8px 25px #00000026;transform:translateY(-2px);z-index:50}@media (max-width:768px){.products-grid{gap:20px;grid-template-columns:1fr}.products-container{padding:15px}.products-header{flex-direction:column;gap:10px;text-align:center}.products-title{font-size:2rem}.product-header{align-items:flex-start;flex-direction:column;gap:10px}.product-price{align-self:flex-start}.product-image-container{height:200px}.pagination{flex-wrap:wrap;gap:8px;justify-content:center;padding:12px 20px}.pagination-btn{font-size:.9rem;min-width:80px;padding:8px 16px}.page-number{font-size:.9rem;height:40px;width:40px}.description-btn{font-size:13px;padding:10px}.delete-product-btn{font-size:18px;height:28px;right:8px;top:8px;width:28px}}@media (max-width:480px){.products-grid{grid-template-columns:1fr}.product-card{padding:20px}.product-name{font-size:1.2rem}.product-price{font-size:1.1rem;padding:6px 12px}.pagination{border-radius:16px;flex-direction:column;gap:10px}.page-numbers{justify-content:center;order:-1;width:100%}.description-btn{font-size:12px;padding:8px 10px}.product-actions{gap:6px}.products-title-section{align-items:stretch}.add-product-btn{justify-content:center}}.cart-overlay{animation:fadeIn .3s ease;background:#00000080;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.cart-sidebar{animation:slideIn .3s ease;background:#fff;box-shadow:-2px 0 10px #0000001a;display:flex;flex-direction:column;height:100vh;max-width:450px;transform:translateX(0);width:100%}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.cart-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.cart-header h2{color:#333;font-size:1.5rem;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;padding:0;transition:all .3s ease;width:40px}.close-btn:hover{background:#e0e0e0;color:#333}.cart-content{flex:1 1;overflow:hidden}.cart-content,.empty-cart{display:flex;flex-direction:column}.empty-cart{align-items:center;flex:1 1;justify-content:center;padding:40px 20px;text-align:center}.empty-cart-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-cart p{color:#666;font-size:1.2rem;margin:0 0 10px}.empty-cart span{color:#999;font-size:.9rem}.cart-items{flex:1 1;overflow-y:auto;padding:20px}.cart-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:15px 0}.cart-item:last-child{border-bottom:none}.item-info{margin-right:15px}.item-name{color:#333;font-size:1rem;font-weight:600;margin:0 0 8px}.item-price{color:#666;font-size:.9rem;margin:0 0 4px}.item-total{color:#2c5aa0;font-size:1rem;margin:0}.item-controls{align-items:flex-end;display:flex;flex-direction:column;gap:10px}.quantity-controls{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:10px;padding:5px}.quantity-btn{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:32px;justify-content:center;transition:all .3s ease;width:32px}.quantity-btn:hover:not(:disabled){background:#2c5aa0;border-color:#2c5aa0;color:#fff}.quantity-btn:disabled{cursor:not-allowed;opacity:.5}.quantity{font-weight:600;min-width:20px;text-align:center}.remove-btn{align-items:center;background:#ff6b6b;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .3s ease;width:32px}.remove-btn:hover:not(:disabled){background:#ff5252;transform:scale(1.05)}.remove-btn:disabled{cursor:not-allowed;opacity:.5}.address-section{border-top:1px solid #e0e0e0;margin:0 20px;padding:20px 0}.address-section h3{color:#333;font-size:1.1rem;margin:0 0 15px}.address-select{background:#fff;border:1px solid #ddd;border-radius:8px;font-size:14px;margin-bottom:15px;padding:12px;transition:border-color .3s ease;width:100%}.address-select:focus{border-color:#2c5aa0;outline:none}.address-select:disabled{background:#f5f5f5;cursor:not-allowed}.selected-address-details{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:15px}.address-info p{color:#555;font-size:.9rem;margin:5px 0}.address-info strong{color:#333}.loading-addresses{color:#666;font-style:italic;padding:20px;text-align:center}.no-addresses{background:#f8f9fa;border:1px dashed #ddd;border-radius:8px;padding:20px;text-align:center}.no-addresses p{color:#666;margin:0 0 10px}.add-address-btn{background:#2c5aa0;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:10px 20px;transition:all .3s ease}.add-address-btn:hover:not(:disabled){background:#1e3d6f}.add-address-btn:disabled{cursor:not-allowed;opacity:.5}.order-error{background:#ffebee;border:1px solid #ffcdd2;border-radius:8px;color:#c62828;font-size:.9rem;margin:0 20px 20px;padding:12px 15px;text-align:center}.cart-footer{background:#f8f9fa;border-top:1px solid #e0e0e0;padding:20px}.cart-total{align-items:center;color:#333;display:flex;font-size:1.2rem;font-weight:600;justify-content:space-between;margin-bottom:20px}.total-price{color:#2c5aa0;font-size:1.4rem}.cart-actions{display:flex;gap:10px}.clear-btn{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:.9rem;padding:12px 20px;transition:all .3s ease}.clear-btn:hover:not(:disabled){background:#5a6268}.checkout-btn{background:#2c5aa0;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:2 1;font-size:1rem;font-weight:600;padding:12px 20px;transition:all .3s ease}.checkout-btn:hover:not(:disabled){background:#1e3d6f;transform:translateY(-1px)}.checkout-btn:disabled,.clear-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}@media (max-width:480px){.cart-sidebar{max-width:100%}.cart-header{padding:15px}.cart-header h2{font-size:1.3rem}.cart-items{padding:15px}.cart-item{flex-direction:column;gap:10px}.item-controls{align-items:center;flex-direction:row;justify-content:space-between;width:100%}.cart-actions{flex-direction:column}.address-section{margin:0 15px}.cart-footer{padding:15px}}.cart-items::-webkit-scrollbar{width:6px}.cart-items::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.cart-items::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.cart-items::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.cart-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:25px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:12px;padding:12px 20px;transition:all .3s ease}.cart-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.cart-icon{font-size:1.2rem}.cart-info{align-items:flex-start;display:flex;flex-direction:column;line-height:1.2}.items-count{font-size:.9rem;opacity:.9}.total-price{font-size:1.1rem;font-weight:700}.product-showcase{margin:0 auto;max-width:1400px;padding:0 20px}.showcase-hero{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;margin-bottom:40px;padding:60px 40px;text-align:center}.hero-content h2{font-size:3rem;font-weight:700;margin-bottom:16px}.hero-content p{font-size:1.2rem;margin:0;opacity:.9}.showcase-controls{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:40px;padding:30px}.controls-grid{grid-gap:20px;align-items:end;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:#2c3e50;font-weight:600;margin-bottom:4px}.filter-select{background:#fff;border:2px solid #e1e5e9;border-radius:10px;font-size:1rem;padding:12px 16px;transition:border-color .3s ease}.filter-select:focus{border-color:#667eea;outline:none}.price-slider{margin-top:8px;width:100%}.featured-products{margin-bottom:60px}.featured-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px}.featured-products h3{color:#2c3e50;font-size:2rem;margin:0}.show-more-btn{background:#0000;border:2px solid #667eea;border-radius:20px;color:#667eea;cursor:pointer;font-weight:600;padding:8px 16px;transition:all .3s ease}.show-more-btn:hover{background:#667eea;color:#fff}.featured-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.featured-card{background:#fff;border-radius:16px;box-shadow:0 8px 30px #0000001f;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:all .3s ease}.featured-card:hover{box-shadow:0 15px 40px #00000026;transform:translateY(-8px)}.featured-badge{background:#ff6b6b;border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;left:12px;padding:6px 12px;position:absolute;top:12px;z-index:2}.showcase-image-container{align-items:center;background:#f8f9fa;box-sizing:border-box;display:flex;flex-shrink:0;height:220px;justify-content:center;overflow:hidden;padding:25px;position:relative;width:100%}.showcase-image-container img{display:block;height:auto;max-height:100%;max-width:100%;object-fit:contain;transition:transform .3s ease;width:auto}.featured-card:hover .showcase-image-container img{transform:scale(1.05)}.showcase-image-placeholder{align-items:center;background:#e9ecef;color:#999;display:flex;font-size:2.5rem;height:100%;justify-content:center;width:100%}.showcase-product-info{display:flex;flex:1 1;flex-direction:column;padding:20px}.showcase-product-info h4{color:#2c3e50;font-size:1.2rem;line-height:1.3;margin:0 0 10px}.showcase-product-description{color:#7f8c8d;flex:1 1;font-size:.9rem;line-height:1.4;margin-bottom:15px}.showcase-product-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.showcase-price{color:#667eea;font-size:1.4rem;font-weight:700}.showcase-rating{background:#fff3cd;border-radius:12px;color:#856404;font-size:.8rem;font-weight:600;padding:4px 10px}.buy-now-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:auto;padding:12px;transition:all .3s ease;width:100%}.buy-now-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.showcase-error,.showcase-loading{padding:60px 20px;text-align:center}.showcase-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 15px;width:50px}.showcase-error .error-icon{font-size:3rem;margin-bottom:15px}.showcase-error h3{color:#e74c3c;margin-bottom:10px}.showcase-error p{color:#7f8c8d;margin-bottom:20px}.showcase-no-products{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin:40px 0;padding:60px 20px;text-align:center}.showcase-no-products-icon{font-size:3rem;margin-bottom:15px;opacity:.5}.showcase-no-products h3{color:#2c3e50;margin-bottom:10px}.showcase-no-products p{color:#7f8c8d}@media (max-width:768px){.product-showcase{padding:0 15px}.showcase-hero{padding:30px 20px}.hero-content h2{font-size:1.8rem}.controls-grid{gap:15px;grid-template-columns:1fr}.featured-grid{gap:20px;grid-template-columns:1fr}.all-products-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.promo-banner{padding:30px 20px}.featured-header{align-items:center;flex-direction:column;text-align:center}.showcase-image-container{height:200px;padding:20px}.all-product-image{height:160px;padding:15px}}@media (max-width:480px){.all-products-grid,.featured-grid{grid-template-columns:1fr}.all-product-card{padding:15px}.all-product-image{height:140px;padding:12px}.showcase-image-container{height:180px;padding:15px}}.order-history{margin:0 auto;max-width:1000px;padding:20px}.order-history h2{color:#2c3e50;font-size:2.2rem;margin-bottom:30px;text-align:center}.no-orders{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:60px 20px;text-align:center}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.no-orders p{color:#2c3e50;font-size:1.3rem;margin-bottom:8px}.no-orders span{color:#7f8c8d}.orders-list{display:flex;flex-direction:column;gap:25px}.order-card{background:#fff;border:1px solid #e1e5e9;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:30px;transition:all .3s ease}.order-card:hover{box-shadow:0 6px 25px #0000001f;transform:translateY(-2px)}.order-header{align-items:flex-start;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.order-header h3{color:#2c3e50;font-size:1.4rem;margin:0}.order-meta{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.order-user{color:#7f8c8d;font-size:.9rem}.order-address{background:#f8f9fa;border-radius:12px;margin-bottom:25px;padding:20px}.order-address h4{color:#2c3e50;font-size:1.1rem;margin:0 0 12px}.order-address p{color:#5a6c7d;margin:4px 0}.order-items{margin-bottom:20px}.order-items h4{color:#2c3e50;font-size:1.1rem;margin:0 0 15px}.order-item{align-items:flex-start;background:#fafbfc;border:1px solid #e1e5e9;border-radius:8px;margin-bottom:10px;padding:15px}.item-info{flex:1 1}.product-name{color:#2c3e50;display:block;font-weight:600;margin-bottom:4px}.product-description{color:#7f8c8d;display:block;font-size:.9rem}.item-details{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.item-quantity{color:#5a6c7d;font-size:.9rem}.item-total{color:#667eea;font-weight:600}.order-footer{border-top:1px solid #e1e5e9;padding-top:20px}.order-total{color:#2c3e50;font-size:1.2rem;text-align:right}@media (max-width:768px){.order-history{padding:15px}.order-card{padding:20px}.order-header{flex-direction:column;gap:10px}.order-meta{align-items:flex-start}.order-item{flex-direction:column;gap:10px}.item-details{align-items:flex-start}}.user-profile{box-sizing:border-box;max-width:1000px;padding:30px 20px;width:100%}.profile-card{border:1px solid #e9ecef;border-radius:20px;box-shadow:0 8px 32px #0000001a;padding:40px;width:100%}.profile-header{border-bottom:2px solid #f8f9fa;gap:30px;margin-bottom:40px;padding-bottom:30px}.user-avatar{box-shadow:0 4px 15px #667eea4d;font-size:2.5rem;font-weight:700;height:120px;width:120px}.user-info h2{color:#2d3748;font-size:2.2rem;font-weight:700;margin:0 0 8px}.username{color:#718096;font-size:1.3rem;font-weight:500}.profile-details{gap:20px;margin-bottom:40px}.detail-item{padding:16px 0}.label{color:#4a5568;font-weight:600;min-width:180px}.label,.value{font-size:1.1rem}.value{color:#2d3748;flex:1 1;flex-wrap:wrap;gap:12px;text-align:right}.verified-badge{background:#48bb78;border-radius:15px;display:inline-block;font-weight:600;line-height:1.3;padding:6px 12px;white-space:nowrap}.auth-badge{color:#48bb78;font-size:1.1rem;font-weight:600}.auth-badge-inactive{color:#e53e3e;font-size:1.1rem;font-weight:600}.addresses-section{margin-top:40px}.section-header{align-items:center;border-bottom:2px solid #f8f9fa;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.section-header h3{color:#2d3748;font-size:1.6rem;font-weight:700;margin:0}.btn-add-address{background:linear-gradient(135deg,#4299e1,#3182ce);border:none;border-radius:10px;box-shadow:0 2px 10px #4299e14d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-add-address:hover{box-shadow:0 4px 15px #4299e166;transform:translateY(-1px)}.btn-add-address:disabled{cursor:not-allowed;opacity:.6;transform:none}.address-form{background:#f8f9fa;border:1px solid #e9ecef;border-radius:15px;margin-bottom:30px;padding:30px}.address-form h4{color:#2d3748;font-size:1.3rem;margin:0 0 25px}.form-group{margin-bottom:20px}.form-group label{color:#4a5568;display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.form-group input{border:2px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:14px 16px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.checkbox-group,.checkbox-group label{align-items:center;display:flex}.checkbox-group label{cursor:pointer;font-size:1rem;gap:10px;margin-bottom:0}.checkbox-group input[type=checkbox]{transform:scale(1.2);width:auto}.form-actions{display:flex;gap:15px;margin-top:30px}.btn-save{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:14px 28px;transition:all .3s ease}.btn-save:hover{box-shadow:0 4px 15px #48bb7866;transform:translateY(-1px)}.btn-cancel{background:#a0aec0;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:14px 28px;transition:all .3s ease}.btn-cancel:hover{background:#718096;transform:translateY(-1px)}.addresses-list{display:flex;flex-direction:column;gap:20px}.address-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:25px;position:relative;transition:all .3s ease}.address-card:hover{border-color:#4299e1;box-shadow:0 4px 15px #0000001a}.address-card.default{background:linear-gradient(135deg,#f0fff4,#e6fffa);border-color:#48bb78}.default-badge{background:#48bb78;border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;padding:5px 14px;position:absolute;right:20px;top:-10px}.address-content{margin-bottom:15px}.address-content p{color:#4a5568;font-size:1rem;margin:10px 0}.address-content strong{color:#2d3748;display:inline-block;font-size:1rem;min-width:100px}.address-actions{display:flex;gap:10px}.btn-edit{background:#4299e1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-edit:hover{background:#3182ce;transform:translateY(-1px)}.error-message{background:#fed7d7;border-left:4px solid #e53e3e;border-radius:8px;color:#c53030;margin-bottom:20px;padding:12px 16px}.loading-addresses,.no-addresses{color:#718096;font-style:italic;padding:30px;text-align:center}.error-container,.loading-container{padding:50px 20px}.loading-spinner{border-top-color:#4299e1;height:50px;width:50px}.error-icon{font-size:3rem}@media (max-width:768px){.user-profile{padding:20px 15px}.profile-card{padding:25px}.profile-header{flex-direction:column;gap:20px;text-align:center}.detail-item{align-items:flex-start;flex-direction:column;gap:8px}.value{text-align:left}.section-header{align-items:flex-start;gap:15px}.address-actions,.form-actions,.section-header{flex-direction:column}.btn-edit{width:100%}}@media (max-width:480px){.user-avatar{font-size:2rem;height:80px;width:80px}.user-info h2{font-size:1.8rem}.username{font-size:1.1rem}.address-form{padding:20px}}.profile-actions{border-top:2px solid #f8f9fa;margin-top:40px;padding-top:30px;text-align:center}.logout-btn{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border:none;border-radius:12px;box-shadow:0 4px 15px #ff6b6b4d;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:12px;overflow:hidden;padding:14px 35px;position:relative;transition:all .3s ease}.logout-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.logout-btn:hover:before{left:100%}.logout-btn:hover{box-shadow:0 6px 20px #ff6b6b66;transform:translateY(-2px)}.logout-btn:active{transform:translateY(0)}.logout-btn:disabled{background:#a0aec0;box-shadow:none;cursor:not-allowed;transform:none}.logout-btn:disabled:hover:before{left:-100%}.logout-icon{font-size:1.3rem;transition:transform .3s ease}.logout-btn:hover .logout-icon{transform:translateX(3px)}@media (max-width:768px){.profile-actions{margin-top:30px;padding-top:25px}.logout-btn{font-size:1rem;justify-content:center;padding:16px 20px;width:100%}}@media (max-width:480px){.profile-actions{margin-top:25px;padding-top:20px}.logout-btn{font-size:.95rem;padding:14px 20px}.logout-icon{font-size:1.1rem}}.ecommerce{background:#f8f9fa;min-height:100vh}.ecommerce-header{background:#fff;box-shadow:0 2px 10px #0000001a;padding:15px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 20px}.ecommerce-header h1{color:#2c3e50;font-size:1.8rem;margin:0;white-space:nowrap}.navigation{display:flex;flex:1 1;gap:12px;justify-content:center}.nav-btn{background:#0000;border:2px solid #e1e5e9;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.nav-btn:hover{border-color:#667eea;color:#667eea}.nav-btn.active{background:#667eea;border-color:#667eea;color:#fff}.ecommerce-main{padding:20px 0}.header-right{align-items:center;display:flex;gap:12px}.user-welcome{background:#e3f2fd;border:1px solid #bbdefb;border-radius:16px;color:#1976d2;font-size:.85rem;padding:6px 12px;white-space:nowrap}@media (max-width:768px){.ecommerce-header{padding:12px 0}.header-content{flex-direction:column;gap:12px;padding:0 15px}.ecommerce-header h1{font-size:1.4rem;order:1}.header-right{justify-content:center;order:2;width:100%}.user-welcome{font-size:.8rem;padding:5px 10px}.navigation{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;order:3;width:100%}.nav-btn{border-radius:20px;font-size:.95rem;min-width:0;padding:14px 16px;text-align:center;white-space:nowrap}.nav-btn:first-child,.nav-btn:nth-child(2),.nav-btn:nth-child(3),.nav-btn:nth-child(4){grid-column:span 1}.ecommerce-main{padding:15px 0}}@media (max-width:480px){.header-content{gap:10px;padding:0 10px}.ecommerce-header h1{font-size:1.3rem}.navigation{gap:8px}.nav-btn{border-radius:18px;font-size:.9rem;padding:12px 14px}.user-welcome{font-size:.75rem;padding:4px 8px}}@media (max-width:360px){.ecommerce-header h1{font-size:1.2rem}.nav-btn{border-radius:16px;font-size:.85rem;padding:10px 12px}.user-welcome{font-size:.7rem;padding:3px 6px}.navigation{gap:6px}}.user-profile{margin:0 auto;max-width:500px;padding:20px}.profile-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:30px}.profile-header{border-bottom:1px solid #e1e5e9;gap:20px;margin-bottom:30px;padding-bottom:20px}.profile-header,.user-avatar{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;font-size:2rem;font-weight:600;height:100px;justify-content:center;width:100px}.user-info h2{color:#2c3e50;font-size:1.5rem;margin:0 0 5px}.username{color:#7f8c8d;font-size:1rem;margin:0}.profile-details{display:flex;flex-direction:column;gap:15px}.detail-item{align-items:center;border-bottom:1px solid #f1f3f4;display:flex;justify-content:space-between;padding:12px 0}.detail-item:last-child{border-bottom:none}.label{color:#7f8c8d;font-weight:500}.value{align-items:center;color:#2c3e50;display:flex;font-weight:600;gap:10px}.verified-badge{background:#4caf50;border-radius:12px;color:#fff;font-size:.9rem;font-weight:500;padding:4px 12px}.error-container,.loading-container{padding:60px 20px;text-align:center}.loading-spinner{border:5px solid #f3f3f3;border-top-color:#667eea;height:70px;margin:0 auto 20px;width:70px}.error-icon{font-size:4rem;margin-bottom:20px}@media (max-width:768px){.profile-header{flex-direction:column;text-align:center}.detail-item{align-items:flex-start;flex-direction:column;gap:5px}.user-profile{padding:15px}.profile-card{padding:20px}.user-avatar{font-size:1.8rem;height:90px;width:90px}.verified-badge{border-radius:10px;font-size:.8rem;padding:3px 10px}.loading-spinner{border-width:4px;height:60px;width:60px}.error-icon{font-size:3.5rem}}@media (max-width:480px){.user-avatar{font-size:1.6rem;height:80px;width:80px}.verified-badge{font-size:.75rem;padding:2px 8px}.loading-spinner{height:50px;width:50px}.error-icon{font-size:3rem}}.product-detail-page{background:#f8f9fa;box-sizing:border-box;margin:0;min-height:100vh;padding:20px;width:100%}.breadcrumb{align-items:center;color:#666;display:flex;flex-wrap:wrap;font-size:14px;margin-bottom:30px;padding-left:20px;padding-right:20px}.breadcrumb-link{border-radius:6px;color:#007bff;padding:5px 8px;text-decoration:none;transition:all .3s ease}.breadcrumb-link:hover{background:#007bff1a;color:#0056b3;text-decoration:none}.breadcrumb-separator{color:#adb5bd;margin:0 8px}.breadcrumb-current{background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#495057;font-weight:600;padding:5px 8px}.product-detail-container{grid-gap:50px;background:#fff;border-radius:16px;box-shadow:0 4px 25px #00000014;box-sizing:border-box;display:grid;gap:50px;grid-template-columns:1fr 1fr;margin-bottom:40px;margin-left:20px;margin-right:20px;padding:40px;width:calc(100% - 40px)}.product-image-column{display:flex;flex-direction:column;gap:25px}.product-image-main{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:16px;box-shadow:0 8px 30px #0000001f;overflow:hidden;position:relative;transition:transform .3s ease}.product-image-main:hover{transform:translateY(-5px)}.product-detail-image{display:block;height:500px;object-fit:cover;transition:all .3s ease;width:100%}.product-detail-image.loading{opacity:0;transform:scale(.95)}.image-loading-placeholder{background:linear-gradient(135deg,#f8f9fa,#e9ecef);bottom:0;left:0;position:absolute;right:0;top:0}.image-loading-placeholder,.image-placeholder-large{align-items:center;display:flex;justify-content:center}.image-placeholder-large{background:linear-gradient(135deg,#e9ecef,#dee2e6);border-radius:16px;color:#adb5bd;font-size:80px;height:500px;width:100%}.product-badges{display:flex;flex-wrap:wrap;gap:12px}.stock-badge{border-radius:25px;box-shadow:0 2px 8px #0000001a;font-size:14px;font-weight:600;padding:10px 18px;transition:all .3s ease}.stock-badge.in-stock{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745;color:#155724}.stock-badge.out-of-stock{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #dc3545;color:#721c24}.description-badge{background:linear-gradient(135deg,#e7f3ff,#d6e9ff);border:2px solid #007bff;border-radius:25px;box-shadow:0 2px 8px #0000001a;color:#004085;font-size:14px;font-weight:600;padding:10px 18px}.product-info-column{display:flex;flex-direction:column;gap:25px}.product-header-detail{align-items:flex-start;border-bottom:2px solid #e9ecef;display:flex;gap:20px;justify-content:space-between;padding-bottom:20px}.product-title{background:linear-gradient(135deg,#2c3e50,#34495e);-webkit-background-clip:text;color:#2c3e50;flex:1 1;font-size:32px;line-height:1.2;margin:0}.product-price-detail,.product-title{-webkit-text-fill-color:#0000;font-weight:800}.product-price-detail{background:linear-gradient(135deg,#28a745,#20c997);-webkit-background-clip:text;color:#28a745;font-size:36px;white-space:nowrap}.product-rating{align-items:center;background:#fff3cd;border:2px solid #ffeaa7;border-radius:12px;display:flex;gap:12px;padding:12px 18px}.rating-stars{color:#ffc107;font-size:20px;text-shadow:0 2px 4px #0000001a}.rating-value{color:#856404;font-size:15px;font-weight:600}.product-descriptions-detail{display:flex;flex-direction:column;gap:20px}.product-short-description{background:#f8f9fa;border-left:4px solid #007bff;border-radius:12px;color:#495057;font-size:18px;line-height:1.6;margin:0;padding:20px}.product-long-description{background:#fff;border-radius:12px;box-shadow:0 2px 15px #00000014;padding:25px}.product-long-description h3{color:#2c3e50;font-size:20px;font-weight:700;margin-bottom:15px}.product-long-description p{color:#495057;font-size:16px;line-height:1.7;margin:0}.product-actions-detail{display:flex;gap:15px;margin-top:10px}.add-to-cart-btn-detail{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:12px;box-shadow:0 4px 15px #007bff4d;color:#fff;cursor:pointer;flex:1 1;font-size:18px;font-weight:700;padding:18px 30px;transition:all .3s ease}.add-to-cart-btn-detail:hover:not(.disabled){background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 6px 20px #007bff66;transform:translateY(-3px)}.add-to-cart-btn-detail:active:not(.disabled){transform:translateY(-1px)}.add-to-cart-btn-detail.disabled{background:linear-gradient(135deg,#6c757d,#495057);box-shadow:none;cursor:not-allowed;transform:none}.product-specifications{background:#fff;border-radius:16px;box-shadow:0 4px 25px #00000014;box-sizing:border-box;margin:0 20px 40px;padding:40px;width:calc(100% - 40px)}.product-specifications h3{border-bottom:3px solid #007bff;color:#2c3e50;font-size:28px;font-weight:700;margin-bottom:30px;padding-bottom:15px;text-align:center;width:100%}.specifications-content{display:flex;flex-direction:column;gap:30px;width:100%}.specs-group{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;box-sizing:border-box;padding:30px;width:100%}.specs-group-title{border-bottom:3px solid #007bff;color:#2c3e50;font-size:22px;font-weight:700;margin:0 0 25px;padding-bottom:15px;width:100%}.specs-list{flex-direction:column;gap:15px}.spec-item,.specs-list{display:flex;width:100%}.spec-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 10px #0000000d;box-sizing:border-box;justify-content:space-between;padding:18px 25px;transition:all .3s ease}.spec-item:hover{background:#f8f9fa;border-color:#007bff;box-shadow:0 4px 20px #0000001a;transform:translateX(8px)}.spec-label{color:#495057;font-weight:600}.spec-label,.spec-value{flex:1 1;font-size:16px;min-width:250px}.spec-value{color:#2c3e50;font-weight:500;text-align:right}.product-tooltip-section{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;box-sizing:border-box;margin-bottom:40px;margin-left:20px;margin-right:20px;padding:30px;width:calc(100% - 40px)}.product-tooltip-section h3{color:#2c3e50;font-size:22px;font-weight:700;margin-bottom:20px;text-align:center;width:100%}.product-additional-info{grid-gap:30px;border-top:2px solid #e9ecef;box-sizing:border-box;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-left:20px;margin-right:20px;padding-top:40px;width:calc(100% - 40px)}.info-section{background:#fff;border:1px solid #e9ecef;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:30px;transition:all .3s ease}.info-section:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-5px)}.info-section h3{align-items:center;color:#2c3e50;display:flex;font-size:20px;font-weight:700;gap:10px;margin-bottom:15px}.info-section p{color:#6c757d;font-size:15px;line-height:1.6;margin:0}.product-detail-loading{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 25px #00000014;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:100px 20px;text-align:center;width:100%}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:60px;margin-bottom:25px;width:60px}.product-detail-error{background:#fff;border-radius:16px;box-shadow:0 4px 25px #00000014;box-sizing:border-box;padding:80px 20px;text-align:center;width:100%}.error-icon{opacity:.7}.product-detail-error h2{color:#dc3545;font-size:28px;margin-bottom:20px}.product-detail-error p{color:#6c757d;font-size:16px;margin-bottom:30px}.back-btn{background:linear-gradient(135deg,#6c757d,#495057);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 25px;transition:all .3s ease}.back-btn:hover{background:linear-gradient(135deg,#495057,#343a40);transform:translateY(-2px)}.shop-link{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:8px;font-weight:600;padding:12px 25px;transition:all .3s ease}.shop-link,.shop-link:hover{color:#fff;text-decoration:none}.shop-link:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-2px)}.product-detail-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 4px 25px #0000001a;margin-bottom:30px;padding:20px 0;position:relative;width:100%}.product-header-content{align-items:center;display:flex;justify-content:center;min-height:60px;padding:0 20px;position:relative}.back-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;left:10px;padding:12px 24px;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;white-space:nowrap}.back-button:hover{background:#ffffff4d;border-color:#ffffff80;box-shadow:0 4px 15px #fff3;transform:translateY(-50%) scale(1.05)}.product-page-title{color:#fff;font-size:28px;font-weight:800;margin:0;text-align:center;text-shadow:0 2px 4px #0000004d}@media (max-width:768px){.product-detail-page{padding:15px}.breadcrumb{padding-left:15px;padding-right:15px}.product-detail-container{gap:30px;grid-template-columns:1fr;margin-left:15px;margin-right:15px;padding:25px;width:calc(100% - 30px)}.product-header-detail{align-items:flex-start;flex-direction:column;gap:15px}.product-title{font-size:26px}.product-price-detail{font-size:30px}.product-actions-detail{flex-direction:column}.product-specifications{margin-bottom:30px;margin-left:15px;margin-right:15px;padding:25px;width:calc(100% - 30px)}.product-specifications h3{font-size:24px;margin-bottom:20px}.specs-group{padding:20px}.spec-item{align-items:flex-start;flex-direction:column;gap:8px;padding:12px 15px}.spec-label,.spec-value{font-size:14px;min-width:auto;width:100%}.spec-value{color:#007bff;font-weight:600;text-align:left}.specs-group-title{font-size:18px;margin-bottom:15px}.product-additional-info{gap:20px;grid-template-columns:1fr;margin-left:15px;margin-right:15px;width:calc(100% - 30px)}.error-actions{align-items:center;flex-direction:column}.product-header-content{flex-direction:column;gap:15px;padding-bottom:20px;padding-top:70px;text-align:center}.back-button{align-self:flex-start;left:15px;position:absolute;top:20px;transform:none}.back-button:hover{transform:scale(1.05)}.product-page-title{font-size:22px;margin-top:10px}.image-placeholder-large,.product-detail-image{height:350px}.info-section{padding:20px}.product-tooltip-section{margin-left:15px;margin-right:15px;padding:25px;width:calc(100% - 30px)}}@media (max-width:480px){.product-detail-container{padding:20px;width:calc(100% - 30px)}.product-title{font-size:22px}.product-price-detail{font-size:26px}.add-to-cart-btn-detail{font-size:16px;padding:15px 20px}.product-specifications{padding:20px;width:calc(100% - 30px)}.product-specifications h3{font-size:22px}.specs-group{padding:15px}.spec-item{padding:10px 12px}.specs-list{gap:10px}.image-placeholder-large,.product-detail-image{height:280px}.product-tooltip-section{padding:20px;width:calc(100% - 30px)}.back-button{font-size:14px;left:10px;padding:10px 18px;top:15px}.product-header-content{padding-bottom:15px;padding-top:60px}.product-additional-info{width:calc(100% - 30px)}}.cart-button-wrapper{position:absolute;right:20px;top:50%;transform:translateY(-50%)}@media (max-width:768px){.cart-button-wrapper{right:20px;top:20px;transform:none}.product-detail-header .cart-button{gap:10px;padding:10px 16px}.product-detail-header .items-count{font-size:.8rem}.product-detail-header .total-price{font-size:.95rem}}@media (max-width:480px){.cart-button-wrapper{right:15px;top:15px}.product-detail-header .cart-button{gap:6px;padding:10px 14px}.product-detail-header .cart-icon{font-size:1.1rem}.product-detail-header .items-count{font-size:.75rem}.product-detail-header .total-price{font-size:.85rem}}@media (max-width:360px){.cart-button-wrapper{right:10px}.product-detail-header .cart-button{padding:8px 12px}.product-detail-header .cart-info{display:none}.product-detail-header .cart-icon{font-size:1.3rem}}.checkout-page{background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:800px;min-height:100vh;padding:40px 20px}.checkout-page h2{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:40px;text-align:center;text-shadow:0 2px 10px #0000004d}.order-summary{animation:slideInUp .6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:0 15px 35px #0003;margin-bottom:25px;padding:30px}.order-summary h3{border-bottom:2px solid #ecf0f1;color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:20px;padding-bottom:10px}.order-item{align-items:center;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:15px 0;transition:all .3s ease}.order-item:hover{background-color:#f8f9fa;border-radius:8px;padding-left:10px;padding-right:10px;transform:translateX(5px)}.order-item:last-child{border-bottom:none}.order-item span:first-child{color:#2c3e50;flex:2 1;font-weight:600}.order-item span:last-child{color:#7f8c8d;flex:1 1;font-weight:500;text-align:right}.order-total{align-items:center;border-top:2px solid #bdc3c7;display:flex;font-size:1.3rem;justify-content:space-between;margin-top:20px;padding-top:20px}.order-total strong{color:#8e44ad;font-weight:700}.delivery-address{animation:slideInUp .8s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:0 15px 35px #0003;margin-bottom:25px;padding:30px}.delivery-address h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:15px}.delivery-address p{background:#f8f9fa;border-left:4px solid #9b59b6;border-radius:10px;color:#34495e;font-size:1.1rem;line-height:1.6;margin:0;padding:15px}.error-message{animation:shake .5s ease-in-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#e74c3c,#c0392b);border-radius:15px;box-shadow:0 10px 25px #e74c3c66;color:#fff;font-weight:600;margin-bottom:25px;padding:20px;text-align:center}.payment-button{background:linear-gradient(135deg,#8e44ad,#9b59b6);border:none;border-radius:15px;box-shadow:0 15px 35px #8e44ad66;color:#fff;cursor:pointer;font-size:1.3rem;font-weight:700;letter-spacing:1px;overflow:hidden;padding:20px;position:relative;text-transform:uppercase;transition:all .3s ease;width:100%}.payment-button:hover:not(:disabled){background:linear-gradient(135deg,#9b59b6,#8e44ad);box-shadow:0 20px 40px #8e44ad99;transform:translateY(-3px)}.payment-button:active:not(:disabled){transform:translateY(-1px)}.payment-button:disabled{background:linear-gradient(135deg,#95a5a6,#7f8c8d);box-shadow:0 5px 15px #95a5a666;cursor:not-allowed;transform:none}.payment-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.payment-button:hover:before{left:100%}body,html{background:linear-gradient(135deg,#667eea,#764ba2);background-attachment:fixed;margin:0;padding:0}#root,body,html{min-height:100vh}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.checkout-page .error-message{background:linear-gradient(135deg,#e67e22,#d35400);border-radius:15px;font-size:1.2rem;padding:40px;text-align:center}@media (max-width:768px){.checkout-page{padding:20px 15px}.checkout-page h2{font-size:2rem;margin-bottom:30px}.delivery-address,.order-summary{margin-bottom:20px;padding:20px}.order-item{align-items:flex-start;flex-direction:column;gap:8px}.order-item span:last-child{text-align:left;width:100%}.order-total{flex-direction:column;gap:10px;text-align:center}.payment-button{font-size:1.2rem;padding:18px}}@media (max-width:480px){.checkout-page{padding:15px 10px}.checkout-page h2{font-size:1.8rem}.delivery-address h3,.order-summary h3{font-size:1.3rem}.order-item span{font-size:.9rem}.delivery-address p{font-size:1rem;padding:12px}.payment-button{font-size:1.1rem;padding:16px}}.checkout-page:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' opacity='.03'%3E%3Cpath fill='%23fff' d='M0 1000 1000 0v1000z'/%3E%3C/svg%3E");content:"";height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:-1}.order-summary h3:before{content:"🛒";margin-right:10px}.delivery-address h3:before{content:"📍";margin-right:10px}.payment-button:after{content:"💳";margin-left:10px}.payment-button:disabled:after{animation:spin 1s linear infinite;content:"⏳";margin-left:10px}*{box-sizing:border-box}body{color:#333;line-height:1.6}.payment-success-page,body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.payment-success-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.success-content{animation:slideUp .6s ease-out;background:#fff;border-radius:20px;box-shadow:0 15px 35px #0000001a;max-width:600px;padding:50px 40px;text-align:center;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.success-icon{animation:bounce 1s ease-in-out;color:#28a745}.loading-icon,.success-icon{font-size:80px;margin-bottom:25px}.loading-icon{animation:spin 2s linear infinite;color:#ffc107}.error-icon{animation:shake .5s ease-in-out;color:#dc3545;font-size:80px;margin-bottom:25px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.success-content h1{color:#2c3e50;font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:20px}.success-content p{color:#6c757d;font-size:1.1rem;line-height:1.6;margin-bottom:15px}.success-content .countdown-text{color:#495057;font-size:1.2rem;font-weight:600;margin:20px 0}.return-home-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;box-shadow:0 5px 15px #667eea66;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:25px;padding:15px 40px;transition:all .3s ease}.return-home-btn:hover{box-shadow:0 8px 20px #667eea99;transform:translateY(-2px)}.return-home-btn:active{transform:translateY(0)}.error-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:30px}.retry-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:50px;box-shadow:0 5px 15px #28a74566;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 35px;transition:all .3s ease}.retry-btn:hover{box-shadow:0 8px 20px #28a74599;transform:translateY(-2px)}.return-home-btn.error-page{background:linear-gradient(135deg,#6c757d,#495057);box-shadow:0 5px 15px #6c757d66}.return-home-btn.error-page:hover{box-shadow:0 8px 20px #6c757d99}@media (max-width:768px){.success-content{margin:20px;padding:40px 25px}.success-content h1{font-size:2rem}.error-icon,.loading-icon,.success-icon{font-size:60px}.error-actions{align-items:center;flex-direction:column}.retry-btn,.return-home-btn{max-width:250px;width:100%}}@media (max-width:480px){.success-content{padding:30px 20px}.success-content h1{font-size:1.8rem}.success-content p{font-size:1rem}.error-icon,.loading-icon,.success-icon{font-size:50px}}.processing-status{border-left:5px solid #ffc107}.success-status{border-left:5px solid #28a745}.error-status{border-left:5px solid #dc3545}.pulse{animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}
/*# sourceMappingURL=main.9eee481a.css.map*/