:root{--bg-primary:#090d16;--bg-card:#0f172a;--bg-surface:#1e293b;--bg-surface-hover:#334155;--border-color:#334155;--border-subtle:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--text-dim:#64748b;--accent-blue:#38bdf8;--accent-cyan:#06b6d4;--accent-green:#22c55e;--accent-red:#ef4444;--accent-amber:#f59e0b;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;font-family:var(--font-family);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--bg-primary);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);width:100%;height:100%;color:var(--text-main);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden}#root{flex-direction:column;width:100%;height:100%;display:flex}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}input{outline:none;font-family:inherit}.app-shell{background-color:var(--bg-primary);flex-direction:column;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.app-header{height:58px;padding:0 16px;padding-top:env(safe-area-inset-top,0);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);z-index:20;background-color:#0f172ad9;justify-content:space-between;align-items:center;display:flex}.header-brand{align-items:center;gap:10px;display:flex}.brand-logo{color:#fff;background:linear-gradient(135deg,#0284c7,#38bdf8);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 12px #38bdf840}.brand-titles{flex-direction:column;display:flex}.brand-name{letter-spacing:-.3px;color:var(--text-main);font-size:16px;font-weight:700;line-height:1.2}.brand-sub{color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:500}.header-actions{align-items:center;gap:8px;display:flex}.header-btn{background-color:var(--bg-surface);border:1px solid var(--border-color);width:38px;height:38px;color:var(--text-muted);border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative}.header-btn:hover,.header-btn:active{background-color:var(--bg-surface-hover);color:var(--text-main)}.badge-count{background-color:var(--accent-blue);color:#0f172a;border-radius:10px;padding:1px 5px;font-size:10px;font-weight:700;line-height:1.2;position:absolute;top:-4px;right:-4px;box-shadow:0 2px 5px #0006}.scanner-main{background:#000;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.scanner-container{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.scanner-viewport{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}#interactive-barcode-reader{border:none!important;width:100%!important;height:100%!important}#interactive-barcode-reader video{object-fit:cover!important;width:100%!important;height:100%!important}.viewfinder-overlay{pointer-events:none;z-index:10;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.viewfinder-frame{background:#0f172a14;border-radius:16px;width:min(82vw,360px);height:min(42vh,220px);position:relative;box-shadow:0 0 0 4000px #0000008c}.corner-bracket{border-color:var(--accent-cyan);border-style:solid;width:24px;height:24px;position:absolute}.corner-bracket.top-left{border-width:4px 0 0 4px;border-top-left-radius:14px;top:-2px;left:-2px}.corner-bracket.top-right{border-width:4px 4px 0 0;border-top-right-radius:14px;top:-2px;right:-2px}.corner-bracket.bottom-left{border-width:0 0 4px 4px;border-bottom-left-radius:14px;bottom:-2px;left:-2px}.corner-bracket.bottom-right{border-width:0 4px 4px 0;border-bottom-right-radius:14px;bottom:-2px;right:-2px}.scanning-laser{background:linear-gradient(90deg,#0000,#ef4444,#f87171,#ef4444,#0000);height:2px;animation:2.4s ease-in-out infinite laserScan;position:absolute;left:4px;right:4px;box-shadow:0 0 12px 2px #ef4444d9}@keyframes laserScan{0%{opacity:.2;top:6%}20%{opacity:1}80%{opacity:1}to{opacity:.2;top:94%}}.viewfinder-hint{color:#e2e8f0;text-shadow:0 1px 4px #000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aa6;border-radius:20px;margin-top:20px;padding:6px 14px;font-size:13px;font-weight:500}.camera-controls-bar{z-index:15;flex-direction:column;gap:12px;display:flex;position:absolute;bottom:24px;right:16px}.cam-btn{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;background:#0f172abf;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex;box-shadow:0 4px 12px #0006}.cam-btn.active{color:#000;background:#f59e0b;border-color:#f59e0b}.cam-btn:active{transform:scale(.92)}.scanner-fallback-message{text-align:center;z-index:12;background:#090d16f2;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex;position:absolute;inset:0}.scanner-fallback-message.error .error-title{color:#ef4444;font-size:18px;font-weight:700}.scanner-fallback-message.error .error-desc{color:var(--text-muted);max-width:300px;font-size:14px;line-height:1.4}.btn-retry{background:var(--accent-blue);color:#0f172a;border-radius:10px;margin-top:8px;padding:10px 20px;font-size:14px;font-weight:600}.spinner{border:3px solid #38bdf833;border-top-color:var(--accent-blue);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spin-animation{animation:.8s linear infinite spin}.overlay-input-container{z-index:16;position:absolute;top:16px;left:16px;right:16px}.overlay-input-form{width:100%}.overlay-input-wrapper{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f172ad9;border:1px solid #ffffff29;border-radius:14px;align-items:center;width:100%;padding:4px 6px 4px 14px;transition:all .2s;display:flex;box-shadow:0 8px 24px #00000073}.overlay-input-wrapper:focus-within{border-color:var(--accent-cyan);box-shadow:0 0 0 2px #06b6d440,0 8px 24px #00000080}.input-icon-barcode{color:var(--accent-cyan);flex-shrink:0;margin-right:10px}.overlay-barcode-input{color:#fff;letter-spacing:.3px;background:0 0;border:none;flex:1;height:38px;font-size:15px;font-weight:500}.overlay-barcode-input::placeholder{color:#64748b;font-size:14px}.input-clear-btn{color:#94a3b8;border-radius:50%;justify-content:center;align-items:center;padding:6px;transition:color .15s;display:flex}.input-clear-btn:hover{color:#fff}.input-submit-btn{color:#0f172a;background:linear-gradient(135deg,#0284c7,#38bdf8);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-left:4px;font-weight:700;transition:transform .15s;display:flex}.input-submit-btn:disabled{opacity:.4;color:#64748b;background:#334155}.input-submit-btn:not(:disabled):active{transform:scale(.94)}.spinner-icon{animation:.8s linear infinite spin}.error-floating-banner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;z-index:18;background:#ef4444f2;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;animation:.25s ease-out slideUp;display:flex;position:absolute;bottom:24px;left:16px;right:16px;box-shadow:0 8px 24px #0006}.error-banner-content{align-items:center;gap:10px;font-size:14px;font-weight:500;display:flex}.btn-dismiss-error{color:#fff;background:#0003;border-radius:6px;padding:4px 10px;font-size:13px;font-weight:700}.product-result-sheet{background-color:var(--bg-card);z-index:30;flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) slideUpSheet;display:flex;position:absolute;inset:58px 0 0;overflow:hidden}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-header{border-bottom:1px solid var(--border-color);background-color:#0f172acc;flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 16px;display:flex}.sheet-drag-handle{background-color:#334155;border-radius:2px;width:40px;height:4px;margin-left:8px}.sheet-top-actions{align-items:center;gap:8px;display:flex}.btn-icon{width:34px;height:34px;color:var(--text-muted);background-color:var(--bg-surface);border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-icon:hover{color:var(--text-main);background-color:var(--bg-surface-hover)}.sheet-content{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:16px;padding:16px 16px 30px;display:flex;overflow-y:auto}.warning-banner{color:#fde68a;background:#f59e0b26;border:1px solid #f59e0b66;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:13px;display:flex}.warning-icon{color:#f59e0b;flex-shrink:0;margin-top:2px}.warning-content strong{color:#f59e0b;margin-bottom:2px;display:block}.warning-text{font-size:12px}.product-headline{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;padding:16px}.title-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.product-title{color:#fff;letter-spacing:-.3px;font-size:19px;font-weight:700;line-height:1.3}.price-tag{color:var(--accent-green);white-space:nowrap;background:#22c55e1f;border-radius:8px;padding:4px 10px;font-size:18px;font-weight:800}.sku-badge-row{align-items:center;gap:10px;display:flex}.sku-badge{color:var(--text-muted);font-size:13px;font-family:var(--font-mono);background:#ffffff0f;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.sku-badge strong{color:#fff}.btn-copy-sku{background:var(--bg-surface-hover);color:var(--text-muted);border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.btn-copy-sku:hover{color:#fff}.stock-summary-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;flex-direction:column;gap:16px;padding:16px;display:flex}.total-stock-block{border-bottom:1px solid #ffffff14;padding-bottom:14px}.stock-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:600}.stock-huge-number{color:#fff;align-items:baseline;gap:8px;font-size:36px;font-weight:800;line-height:1;display:flex}.stock-box-icon{color:var(--accent-blue);margin-right:4px}.stock-unit{color:var(--text-dim);font-size:16px;font-weight:600}.locations-section{flex-direction:column;gap:10px;display:flex}.section-subtitle{color:var(--text-main);text-transform:uppercase;letter-spacing:.4px;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.branch-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:10px;display:grid}.branch-card{border:1px solid var(--border-color);text-align:left;background:#0f172a99;border-left-width:4px;border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;transition:all .15s;display:flex}.branch-card:hover{background:var(--bg-surface-hover)}.branch-card.selected{border-color:var(--accent-cyan);box-shadow:0 0 0 1px var(--accent-cyan);background:#06b6d41f}.branch-info{align-items:center;gap:8px;display:flex}.branch-color-indicator{border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 4px #00000080}.branch-name{color:#fff;font-size:13px;font-weight:700}.branch-stock-pill{color:var(--text-muted);font-size:12px}.branch-stock-pill strong{color:var(--accent-blue);font-size:14px}.variations-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.variations-header{justify-content:space-between;align-items:center;display:flex}.btn-reset-filters{color:var(--accent-cyan);background:#06b6d41a;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600}.filter-chips-row{-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.filter-chip{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-muted);white-space:nowrap;border-radius:20px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s}.filter-chip.active{background:var(--accent-blue);color:#0f172a;border-color:var(--accent-blue)}.variations-list{flex-direction:column;gap:8px;display:flex}.empty-variations{text-align:center;color:var(--text-dim);padding:24px;font-size:13px}.variation-card{background:#0f172ab3;border:1px solid #ffffff14;border-radius:10px;justify-content:space-between;align-items:center;padding:12px 14px;transition:all .15s;display:flex}.variation-card.scanned-match{border-color:var(--accent-cyan);background:#06b6d414;box-shadow:0 0 12px #06b6d426}.variation-left{align-items:center;gap:12px;display:flex}.variation-size-badge{background:var(--bg-surface-hover);color:#fff;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;min-width:36px;height:36px;font-size:14px;font-weight:800;display:flex}.variation-meta{flex-direction:column;gap:3px;display:flex}.variation-color-title{align-items:center;gap:8px;display:flex}.color-name{color:#fff;font-size:14px;font-weight:700}.exact-match-tag{background:var(--accent-cyan);color:#0f172a;text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:700}.variation-location-meta{align-items:center;gap:8px;font-size:12px;display:flex}.branch-tag{border:1px solid;border-radius:4px;align-items:center;gap:4px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-flex}.sku-subtext{color:var(--text-dim);font-family:var(--font-mono);font-size:11px}.variation-right{align-items:center;display:flex}.qty-display{flex-direction:column;align-items:flex-end;display:flex}.qty-display.in-stock .qty-val{color:var(--accent-green);font-size:18px;font-weight:800}.qty-display.out-of-stock .qty-val{color:var(--text-dim);font-size:18px;font-weight:800}.qty-label{color:var(--text-dim);text-transform:uppercase;font-size:10px}.sheet-footer{margin-top:10px}.btn-scan-next{color:#0f172a;background:linear-gradient(135deg,#0284c7,#38bdf8);border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;height:50px;font-size:16px;font-weight:700;transition:transform .15s;display:flex;box-shadow:0 4px 16px #38bdf84d}.btn-scan-next:active{transform:scale(.98)}.drawer-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:40;background:#0009;justify-content:flex-end;animation:.2s ease-out fadeIn;display:flex;position:absolute;inset:0}.drawer-content{background:var(--bg-card);border-left:1px solid var(--border-color);flex-direction:column;width:100%;max-width:380px;height:100%;animation:.25s ease-out slideLeft;display:flex}@keyframes slideLeft{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.recent-scans-panel{flex-direction:column;height:100%;display:flex}.recent-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;height:58px;padding:0 16px;display:flex}.recent-title{color:#fff;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.recent-actions{align-items:center;gap:8px;display:flex}.btn-clear-history{color:var(--accent-red);background:#ef44441f;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:600;display:flex}.recent-list{flex-direction:column;flex:1;gap:8px;padding:12px 16px;display:flex;overflow-y:auto}.empty-history{text-align:center;height:240px;color:var(--text-dim);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.empty-history-icon{margin-bottom:4px}.recent-item{background:var(--bg-surface);border:1px solid var(--border-color);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:12px;transition:all .15s;display:flex}.recent-item:hover{background:var(--bg-surface-hover);border-color:var(--accent-blue)}.recent-item-info{flex-direction:column;gap:4px;display:flex}.recent-item-name{color:#fff;font-size:14px;font-weight:700}.recent-item-meta{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:flex}.recent-sku{font-family:var(--font-mono)}.recent-item-stock{align-items:center;gap:8px;display:flex}.recent-stock-badge{color:var(--accent-blue);background:#38bdf81f;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:700;display:flex}.recent-arrow{color:var(--text-dim)}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#000000b3;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out fadeIn;display:flex;position:absolute;inset:0}.modal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 16px 36px #0009}.modal-header{border-bottom:1px solid var(--border-color);background:var(--bg-surface);justify-content:space-between;align-items:center;height:52px;padding:0 16px;display:flex}.modal-header h3{color:#fff;font-size:16px;font-weight:700}.settings-form{flex-direction:column;gap:18px;padding:16px;display:flex}.setting-group{flex-direction:column;gap:6px;display:flex}.setting-label{color:#e2e8f0;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.fixed-badge{text-transform:uppercase;color:var(--text-dim);background:#ffffff0f;border-radius:4px;align-items:center;gap:3px;margin-left:auto;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.server-readonly-badge{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:10px;padding:10px 14px}.server-readonly-badge code{color:var(--accent-cyan);font-size:13px;font-family:var(--font-mono);-webkit-user-select:text;user-select:text}.setting-toggle-row{border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.setting-toggle-info{flex-direction:column;gap:2px;display:flex}.setting-toggle-title{color:#fff;align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.switch{width:44px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:#334155;border-radius:24px;transition:all .3s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}input:checked+.slider{background-color:var(--accent-blue)}input:checked+.slider:before{transform:translate(20px)}.settings-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;display:flex}.btn-secondary{color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.btn-primary{color:#0f172a;background:var(--accent-blue);border-radius:8px;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:700;display:flex}.install-prompt-banner{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:25;background:#0f172af2;border:1px solid #38bdf866;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;animation:.3s ease-out slideUp;display:flex;position:absolute;bottom:16px;left:16px;right:16px;box-shadow:0 8px 24px #00000080}.install-prompt-content{align-items:center;gap:12px;display:flex}.install-icon{color:var(--accent-blue);flex-shrink:0}.install-prompt-text{flex-direction:column;display:flex}.install-prompt-text strong{color:#fff;font-size:13px}.install-prompt-text span{color:var(--text-muted);font-size:11px}.install-prompt-buttons{align-items:center;gap:6px;display:flex}.btn-install{background:var(--accent-blue);color:#0f172a;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700}.btn-dismiss{color:var(--text-dim);padding:4px}
