:root{--bg: #f7f8fa;--card: #ffffff;--ink: #1a1f2b;--muted: #6b7280;--line: #e5e7eb;--accent: #2563eb;--accent-ink: #1d4ed8;--ok: #047857;--bad: #b91c1c;--mono: ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}#app{max-width:960px;margin:0 auto;padding:1.5rem 1rem 3rem}header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.brand{display:flex;align-items:center;gap:.7rem}.logo{display:block;border-radius:9px;flex:none}.brand-text{min-width:0}header h1{margin:0;font-size:1.6rem;line-height:1.1}.tagline{margin:.15rem 0 0;color:var(--muted)}.share{flex:none;display:inline-flex;align-items:center;gap:.35rem;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:.5rem .9rem;font-size:.9rem;cursor:pointer;white-space:nowrap}.share:hover{background:var(--accent-ink)}.share:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}section{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.25rem}h2{margin:0 0 .75rem;font-size:1.05rem}#search{width:100%;font-size:1.15rem;padding:.75rem 1rem;border:2px solid var(--line);border-radius:10px;outline:none}#search:focus{border-color:var(--accent)}.search-result{margin-top:.75rem;min-height:1.5rem}.hit{display:flex;gap:.75rem;align-items:baseline;flex-wrap:wrap;padding:.6rem .8rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px}.hit .ids{color:var(--muted);font-family:var(--mono);font-size:.85rem}.qty-badge{margin-left:auto;background:var(--accent);color:#fff;padding:.1rem .5rem;border-radius:999px;font-size:.8rem}.miss{color:var(--muted);padding:.4rem 0}.grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr .7fr;gap:.75rem;margin-bottom:.75rem}label{display:flex;flex-direction:column;font-size:.8rem;color:var(--muted);gap:.25rem}input{font-size:.95rem;padding:.5rem .6rem;border:1px solid var(--line);border-radius:8px;color:var(--ink)}input:focus{outline:2px solid var(--accent);border-color:transparent}button{cursor:pointer;font-size:.9rem;padding:.5rem 1rem;border:none;border-radius:8px;background:var(--accent);color:#fff}button:hover{background:var(--accent-ink)}.error{color:var(--bad);margin-left:.75rem;font-size:.85rem}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.mono{font-family:var(--mono);font-size:.85rem}tr.highlight{background:#fffbeb}.qty{white-space:nowrap}.qty-val{display:inline-block;min-width:2ch;text-align:center;font-variant-numeric:tabular-nums}.qty-btn{background:var(--line);color:var(--ink);padding:.1rem .55rem;font-size:1rem;line-height:1}.qty-btn:hover{background:#d1d5db}.del{background:transparent;color:var(--bad);padding:.25rem .5rem}.del:hover{background:#fee2e2}.empty{color:var(--muted);padding:.5rem 0}footer{text-align:center;color:var(--muted);margin-top:1rem}@media (max-width: 640px){.grid{grid-template-columns:1fr 1fr}header{flex-wrap:wrap}}
