@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Barlow+Condensed:wght@500;600;700&display=swap";:root{--bg-0: #0A0E14;--bg-1: #121A26;--bg-2: #1B2534;--line: #2E3A4E;--line-strong: #5E7290;--ink: #F2F6FB;--ink-2: #B9C4D6;--ink-3: #8B99AF;--mod-stock: #3B82F6;--mod-stock-ink: #7CB1FF;--mod-photos: #F59E0B;--mod-photos-ink: #FFC24D;--mod-inventory: #10B981;--mod-inventory-ink: #4ADE9E;--ok: #10B981;--ok-ink: #6EE7B7;--warn: #F59E0B;--warn-ink: #FFD166;--err: #EF4444;--err-ink: #FF9B9B;--primary: var(--mod-stock);--danger: var(--err);--success: var(--ok);--text-primary: var(--ink);--text-secondary: var(--ink-2);--radius-lg: 14px;--radius-md: 10px;--radius-sm: 6px;--font-display: "Barlow Condensed", "Arial Narrow", "Inter", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--shadow-1: 0 1px 3px rgba(0, 0, 0, .5);--focus-ring: 0 0 0 3px rgba(124, 177, 255, .55)}body{margin:0;font-family:Inter,sans-serif;background:var(--bg-0);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden;height:100dvh;overflow-y:hidden}.app{display:flex;flex-direction:column;height:100dvh;overflow:hidden}:focus-visible{outline:none;box-shadow:var(--focus-ring)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-header{padding:calc(env(safe-area-inset-top) + 10px) 16px 10px;background:var(--bg-1);border-bottom:1px solid var(--line-strong);position:sticky;top:0;z-index:50;display:flex;flex-direction:row;align-items:center;gap:12px}.app-header-brand{flex:1;min-width:0}.app-title{font-weight:800;font-size:1.3rem;letter-spacing:-.01em;color:var(--ink);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-subtitle{font-size:.72rem;color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;margin-top:2px;white-space:nowrap}.app-build-id{font-size:.62rem;color:var(--ink-3);letter-spacing:.04em;font-family:var(--font-mono);margin-top:2px;padding:1px 6px;border:1px solid var(--line);border-radius:999px;flex-shrink:0}.welcome-hero{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.welcome-hero-icon{width:72px;height:72px;background:var(--bg-2);border:1px solid var(--line-strong);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:var(--mod-stock-ink)}.welcome-hero-title{font-size:1.35rem;font-weight:700;color:var(--ink);letter-spacing:-.01em;margin-bottom:6px}.welcome-hero-sub{font-size:.9rem;color:var(--ink-2);letter-spacing:.02em}.api-mode-toggle{margin-top:1.25rem;display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:2rem;font-weight:500;letter-spacing:.01em}.app-main{flex:1;padding:12px 16px calc(env(safe-area-inset-bottom) + 12px);max-width:600px;margin:0 auto;width:100%;box-sizing:border-box;animation:fadeIn .3s ease-out;overflow-y:auto;display:flex;flex-direction:column}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn{border:1px solid transparent;border-radius:var(--radius-md);padding:14px 20px;min-height:48px;font-weight:700;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;position:relative;text-transform:uppercase;letter-spacing:.05em;font-size:.9rem}.btn:active{transform:scale(.98)}.btn-primary{background:#2563eb;border-color:#4e8cff;color:#fff}.btn-primary:hover{background:#2e6fe8}.btn-primary:disabled{opacity:.5;pointer-events:none;filter:grayscale(1)}.btn-secondary{background:var(--bg-2);color:var(--ink);border:1px solid var(--line-strong)}.btn-secondary:hover{background:#232f42}.btn-danger{background:#dc2626;border-color:#f87171;color:#fff}.btn-small{padding:8px 16px;min-height:40px;font-size:.8rem;border-radius:var(--radius-sm)}.center-content{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.card{background:var(--bg-1);border:1px solid var(--line-strong);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-1);margin-bottom:24px}.card-header{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.card-title-strong{font-size:1.25rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}.card-description{color:var(--ink-2);font-size:.9rem;margin-top:6px}.manual-entry-row{width:100%;max-width:340px;background:var(--bg-1);border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:14px 22px;display:flex;align-items:center;gap:14px;cursor:pointer;color:var(--ink);transition:background .15s ease;font-family:var(--font-display);font-size:1.35rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.manual-entry-row:active{background:var(--bg-2)}.manual-entry-arrow{margin-left:auto;color:var(--ink-3);flex-shrink:0}.api-pill{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.api-pill-on{background:#0b2b1c;color:var(--ok-ink);border:1px solid var(--ok)}.api-pill-off{background:#2b1214;color:var(--err-ink);border:1px solid var(--err)}.pricing-label{font-size:.7rem;letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase;margin:-8px 0 0}.list-selector{display:flex;gap:8px;align-items:center;width:100%}.list-selector select{flex:1;min-width:0}.list-selector-clear{background:transparent;border:1px solid var(--err);color:var(--err-ink);border-radius:var(--radius-sm);padding:8px 12px;min-height:44px;cursor:pointer;flex-shrink:0}.home-split{flex:1;display:grid;gap:12px;min-height:0}.home-pane{min-height:132px;padding:18px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--bg-1);border:1.5px solid var(--line-strong);border-left-width:4px;border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-1);transition:background .15s ease,transform .1s ease;color:var(--ink);font-family:inherit}.home-pane:active{transform:scale(.99);background:var(--bg-2)}.home-pane-icon{display:flex}.home-pane-icon svg{width:clamp(32px,9vw,44px);height:clamp(32px,9vw,44px)}.home-pane-title{font-family:var(--font-display);font-size:clamp(1.6rem,7vw,2.1rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);line-height:1.05;text-align:center}.home-pane-sub{font-size:.88rem;color:var(--ink-2);text-align:center}.home-pane-badge{margin-top:2px;padding:5px 12px;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--bg-2);color:var(--ink-2);border:1px solid var(--line-strong);max-width:100%;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-pane-badge--warn{background:#2e230a;color:var(--warn-ink);border-color:var(--warn)}.home-pane--stock{border-color:var(--mod-stock)}.home-pane--stock .home-pane-icon{color:var(--mod-stock-ink)}.home-pane--photos{border-color:var(--mod-photos)}.home-pane--photos .home-pane-icon{color:var(--mod-photos-ink)}.home-pane--inventory{border-color:var(--mod-inventory)}.home-pane--inventory .home-pane-icon{color:var(--mod-inventory-ink)}.home-pane--split{cursor:default;padding:12px;gap:8px}.home-pane-action{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:transparent;border:none;cursor:pointer;color:inherit;font-family:inherit}.home-pane-action--secondary{border-top:1px solid var(--line);padding-top:10px;flex:0 0 auto;min-height:44px}.home-pane-sub-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mod-photos-ink)}.home-list-strip{margin-top:-12px;padding:12px;background:var(--bg-1);border:1.5px solid var(--mod-stock);border-left-width:4px;border-top:1px solid var(--line);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.home-pane--stock.home-pane--has-strip{border-bottom-left-radius:0;border-bottom-right-radius:0}.scan-controls{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:12px}.scan-controls .pricing-label{margin:-4px 0 0;text-align:center}.scan-controls .manual-entry-row{font-size:1.05rem;padding:12px 18px}.field{margin-bottom:20px}.field-label{display:block;margin-bottom:8px;font-weight:600;font-size:.9rem;color:var(--ink-2);letter-spacing:.01em}.input{width:100%;padding:14px 16px;min-height:48px;border-radius:var(--radius-md);background:var(--bg-2);border:1px solid var(--line-strong);color:var(--ink);font-size:1rem;font-family:inherit;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease;font-weight:500}.input:focus{outline:none;border-color:var(--mod-stock);box-shadow:var(--focus-ring)}.input::placeholder{color:var(--ink-3)}.details-list{background:var(--bg-1);border-radius:var(--radius-md);border:1px solid var(--line-strong);overflow:hidden}.detail-row{display:flex;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line);align-items:center;gap:12px}.detail-row:last-child{border-bottom:none}.detail-row .label{color:var(--ink-2);font-size:.9rem}.detail-row strong{font-weight:600;color:var(--ink);text-align:right;overflow-wrap:anywhere}.message{padding:14px 16px;border-radius:var(--radius-md);margin-bottom:20px;font-weight:500;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid}.message-info{background:#10203a;border-color:var(--mod-stock);color:#a9cbff}.message-error{background:#2b1214;border-color:var(--err);color:var(--err-ink)}.message-success{background:#0b2b1c;border-color:var(--ok);color:var(--ok-ink)}.inv-confirm{display:flex;flex-direction:column;gap:10px;padding:16px;margin-bottom:12px;border-radius:var(--radius-md);background:#10203a;border:1px solid var(--mod-stock);color:#a9cbff}.inv-confirm-label{display:block;font-size:.72em;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.inv-confirm-barcode{display:flex;flex-direction:column;gap:2px}.inv-confirm-code{font-size:1.35em;font-weight:700;color:var(--ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;word-break:break-all}.inv-confirm-name{font-size:.95em;color:var(--ink-2)}.inv-confirm-total{align-self:flex-start;padding:4px 12px;border-radius:999px;background:#1d3357;border:1px solid var(--mod-stock);font-weight:600;font-size:.9em;color:var(--ink)}.inv-confirm-qty{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px}.inv-confirm-qty .inv-confirm-label{margin:0}.inv-confirm-qty input{width:90px;height:48px;font-size:1.2em;text-align:center}.inv-recount-warning{display:flex;flex-direction:column;gap:10px;padding:16px;margin-bottom:12px;border-radius:var(--radius-md);background:#2e230a;border:1px solid var(--warn);color:var(--warn-ink)}.inv-unknown-note{color:var(--err-ink);font-size:.8em;font-weight:600;margin-top:2px}.inv-move-note{color:var(--warn-ink);font-size:.8em;margin-top:2px}.inv-box-scan,.inv-box-assign{display:flex;flex-direction:column;gap:10px;padding:16px;margin-bottom:12px;border-radius:var(--radius-md);background:#10203a;border:1px solid var(--mod-stock);color:#a9cbff}.scanner-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,transparent 30%,rgba(0,0,0,.55) 95%)}.scanner-line{width:85%;height:2px;background:var(--err);box-shadow:0 0 8px #ef4444e6;animation:scan 2s cubic-bezier(.4,0,.2,1) infinite}.scanner-flash{outline:3px solid var(--ok);outline-offset:-3px}@keyframes scan{0%{transform:translateY(-110px);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(110px);opacity:0}}.offline-banner{background:var(--warn);color:#1f1502;padding:10px;text-align:center;font-weight:700;font-size:.9rem;letter-spacing:.05em;text-transform:uppercase}.btn-row{display:flex;gap:16px}.btn-row>*{flex:1}.btn-col{display:flex;flex-direction:column;gap:12px}.ai-searching{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--ink-3)}.ai-spinner{display:inline-block;width:12px;height:12px;border:2px solid var(--line-strong);border-top-color:var(--ink-3);border-radius:50%;animation:ai-spin .8s linear infinite}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-suggestion-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;background:#10203a;border:1px solid var(--mod-stock);border-radius:999px;color:#a9cbff;cursor:pointer;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .2s}.ai-suggestion-chip:hover{background:#1d3357}.photo-capture{display:flex;flex-direction:column;gap:12px}.muted{color:var(--ink-3);font-size:.88rem;margin:0}.warn{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 12px;border-radius:var(--radius-sm);background:#2e230a;border:1px solid var(--warn);color:var(--warn-ink);font-weight:600;font-size:.9em}.thumb-strip{display:flex;flex-wrap:wrap;gap:8px}.thumb{position:relative;width:64px;height:64px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);overflow:hidden;flex-shrink:0;object-fit:cover;box-sizing:border-box}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb button{position:absolute;top:2px;right:2px;width:20px;height:20px;padding:0;border:none;border-radius:50%;background:#0a0e14d9;color:var(--err-ink);font-size:12px;line-height:1;cursor:pointer}.fast-photo{display:flex;flex-direction:column;gap:12px}.fast-photo-progress{height:6px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);overflow:hidden}.fast-photo-progress-bar{height:100%;background:var(--mod-stock);transition:width .2s ease}.fast-photo-group,.fast-photo-orphans{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--bg-1)}.fast-photo-orphans{border-color:var(--warn)}.fast-photo-toggle{display:flex;align-items:center;gap:10px;padding:10px 14px;min-height:44px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--bg-1);cursor:pointer;font-weight:600;color:var(--ink)}.fast-photo-toggle input{width:18px;height:18px;accent-color:var(--mod-stock)}
