@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap);*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;color:#263238;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{scroll-behavior:smooth}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid #3a7bd5;outline-offset:2px}.notification{align-items:center;animation:slideDown .3s ease-out forwards;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;justify-content:space-between;left:50%;max-width:80%;min-width:300px;padding:12px 20px;position:fixed;top:20px;transform:translateX(-50%);z-index:1000}.notification-success{background-color:#e8f5e9;border-left:4px solid #4caf50;color:#2e7d32}.notification-error{background-color:#fdecea;border-left:4px solid #f44336;color:#d32f2f}.notification-info{background-color:#e3f2fd;border-left:4px solid #2196f3;color:#1976d2}.notification-close{background:none;border:none;color:inherit;cursor:pointer;font-size:20px;margin-left:10px;opacity:.7}.notification-close:hover{opacity:1}@keyframes slideDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.page-transition-enter{opacity:0;transform:translateY(10px)}.page-transition-enter-active{transition:opacity .3s,transform .3s}.page-transition-enter-active,.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s}.saving-item{background-color:#2196f30d;border:1px solid #2196f333}.item-saving-indicator{align-items:center;background-color:#e3f2fd;border:1px solid #90caf9;border-radius:8px;color:#1976d2;display:flex;font-size:.8rem;padding:5px 10px;position:absolute;right:10px;top:10px}.spinner{animation:spin 1s linear infinite;border:2px solid #1976d233;border-radius:50%;border-top-color:#1976d2;display:inline-block;height:16px;margin-right:8px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}*{scrollbar-color:#c1c1c1 #f1f1f1;scrollbar-width:thin}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.full-width{width:100%}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:1rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.d-flex{display:flex}.flex-column{flex-direction:column}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.justify-content-end{justify-content:flex-end}.align-items-center{align-items:center}.flex-grow-1{flex-grow:1}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:1rem}.gap-4{gap:1.5rem}.text-primary{color:#3a7bd5}.text-secondary{color:#00bcd4}.text-success{color:#4caf50}.text-danger{color:#f44336}.text-warning{color:#ff9800}.text-info{color:#2196f3}.text-muted{color:#757575}.font-weight-bold{font-weight:700}.font-weight-medium{font-weight:500}.font-weight-light{font-weight:300}.rounded{border-radius:8px}.rounded-circle{border-radius:50%}.border{border:1px solid #e0e0e0}.shadow-sm{box-shadow:0 1px 3px #0000001a}.shadow{box-shadow:0 4px 6px #0000001a}.shadow-lg{box-shadow:0 10px 15px #0000001a}.bg-white{background-color:#fff}.bg-light{background-color:#f5f7fa}.bg-primary{background-color:#3a7bd5;color:#fff}.bg-secondary{background-color:#00bcd4;color:#fff}.bg-success{background-color:#4caf50;color:#fff}.bg-danger{background-color:#f44336;color:#fff}.bg-warning{background-color:#ff9800;color:#000}.bg-info{background-color:#2196f3;color:#fff}.d-none{display:none}.d-block{display:block}.d-inline-block{display:inline-block}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.w-100{width:100%}.h-100{height:100%}.min-w-0{min-width:0}.min-h-0{min-height:0}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-75{opacity:.75}.opacity-50{opacity:.5}.opacity-25{opacity:.25}.transition{transition:all .3s ease}.hover-shadow:hover{box-shadow:0 4px 8px #0000001a}.hover-grow:hover{transform:scale(1.02)}.hover-opacity:hover{opacity:.8}@media (max-width:600px){.d-xs-none{display:none}.d-xs-block{display:block}.text-xs-center{text-align:center}}@media (min-width:601px) and (max-width:960px){.d-sm-none{display:none}.d-sm-block{display:block}.text-sm-center{text-align:center}}@media (min-width:961px) and (max-width:1280px){.d-md-none{display:none}.d-md-block{display:block}}@media (min-width:1281px){.d-lg-none{display:none}.d-lg-block{display:block}}.camera-container{background-color:#000;display:flex;flex-direction:column;height:100%;left:0;position:fixed;top:0;z-index:1000}.video-container{flex:1 1;overflow:hidden;position:relative}video{height:100%;object-fit:cover;width:100%}.camera-controls{align-items:center;background-color:#000000b3;justify-content:space-around;padding:1rem}.camera-button{background:none;border:none;color:#fff;cursor:pointer;font-size:1.5rem;padding:.5rem 1rem;transition:all .2s ease}.camera-button:hover{transform:scale(1.1)}.camera-button:disabled{cursor:not-allowed;opacity:.5}.camera-button.capture{align-items:center;background-color:#fff;border-radius:50%;color:#000;display:flex;height:60px;justify-content:center;width:60px}.camera-button.capture:hover{background-color:#f0f0f0}.camera-button.close,.camera-button.switch{align-items:center;background-color:#fff3;border-radius:50%;display:flex;height:50px;justify-content:center;width:50px}.camera-error{align-items:center;color:#fff;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:1rem;text-align:center}.camera-error p{font-size:1.2rem;margin-bottom:1rem}.barcode-scanner-overlay{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.scanner-rectangle{border:2px solid #fffc;border-radius:8px;box-shadow:0 0 0 2000px #0006;height:200px;position:relative;width:80%}.scanner-rectangle:before{animation:scan 2s linear infinite;background-color:#ff000080;content:"";height:4px;left:0;position:absolute;top:0;width:100%}.barcode-scanner-container{background-color:#000;display:flex;flex-direction:column;height:100%;left:0;position:fixed;top:0;width:100%;z-index:1000}.scanner-view{flex:1 1;overflow:hidden;position:relative}.scanner-overlay{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;pointer-events:none;position:absolute;top:0;width:100%}.scanner-target{border:2px solid #fffc;border-radius:8px;box-shadow:0 0 0 2000px #0006;height:200px;position:relative;width:80%}.scanner-target:before{animation:scan 2s linear infinite;background-color:#ff000080;content:"";height:4px;left:0;position:absolute;top:0;width:100%}@keyframes scan{0%{top:0}50%{top:calc(100% - 4px)}to{top:0}}.scanner-message{background-color:#000000b3;border-radius:20px;color:#fff;font-size:1rem;margin-top:1rem;padding:8px 16px}.scanner-controls{align-items:center;background-color:#000000b3;display:flex;justify-content:space-around;padding:1rem}.scanner-button{background:none;border:none;color:#fff;cursor:pointer;font-size:1.5rem;padding:.5rem 1rem;transition:all .2s ease}.scanner-button:hover{transform:scale(1.1)}.scanner-button:disabled{cursor:not-allowed;opacity:.5}.scanner-button.close,.scanner-button.switch{align-items:center;background-color:#fff3;border-radius:50%;display:flex;height:50px;justify-content:center;width:50px}.scanner-error{align-items:center;color:#fff;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:1rem;text-align:center}.scanner-error p{font-size:1.2rem;margin-bottom:1rem}.scanner-error .scanner-controls{background:none}.scanner-button.close,.scanner-button.retry{align-items:center;display:flex;font-size:1rem;margin:0 10px}.scanner-button.close i,.scanner-button.retry i{margin-right:5px}#interactive canvas,#interactive video{height:100%;object-fit:cover;width:100%}.barcode-scan-page{display:flex;flex-direction:column;height:100%;min-height:calc(100vh - 60px)}.product-result-container{margin:0 auto;max-width:800px;padding:1.5rem;width:100%}.product-result-container h1{margin-bottom:1.5rem;text-align:center}.product-details{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem;overflow:hidden}.product-image{align-items:center;background-color:#f8f8f8;display:flex;height:250px;justify-content:center;overflow:hidden;width:100%}.product-image img{height:100%;object-fit:contain;width:100%}.product-info{padding:1.5rem}.product-info h2{margin-bottom:1rem;margin-top:0}.product-barcode,.product-brand,.product-weight{font-size:1.1rem;margin-bottom:.5rem}.button-group{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1.5rem}.error-message{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:2rem;text-align:center}.error-message p{color:#e74c3c;font-size:1.1rem;margin-bottom:1.5rem}.loading{font-size:1.1rem;padding:2rem;text-align:center}.scan-options{display:flex;gap:1rem;justify-content:center;margin-top:1rem;padding:0 1rem}.camera-container{border-radius:8px;box-shadow:0 4px 8px #0000001a;margin:0 auto 20px;max-width:500px;overflow:hidden;position:relative;width:100%}.camera-view{display:block;width:100%}.camera-controls{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:15px 0}.file-upload-container{align-items:center;display:flex;flex-direction:column;margin:20px 0}.file-upload-input{display:none}.manual-entry{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:500px;padding:2rem}.manual-entry h2{text-align:center}.form-group,.manual-entry h2{margin-bottom:1.5rem}.barcode-input{border:1px solid #ddd;border-radius:4px;font-size:16px;letter-spacing:1px;padding:12px;text-align:center;width:100%}
/*# sourceMappingURL=main.0bb98607.css.map*/