:root{color-scheme:light;--canvas: #E3E3E3;--ink: #070607;--accent: #6253E6;--muted: #B4B3BA;--stone: #616362;--rose: #B96F7D;--card: #ffffff;--focus: #6253E6;--in-stock: #2E7D32;--in-stock-bg: #E8F5E9;--low: #F9A825;--low-bg: #FFF8E1;--out: #C62828;--out-bg: #FFEBEE;--card-radius: 24px;--font: "Plus Jakarta Sans", system-ui, sans-serif;--err: #b00020}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--canvas);color:var(--ink);min-height:100dvh;-webkit-font-smoothing:antialiased}#root{min-height:100dvh}a{color:var(--accent);text-decoration:none}button,input,select,textarea{font:inherit}.sh-card{background:var(--card);border-radius:var(--card-radius);padding:16px;margin:12px 0;box-shadow:0 2px 8px #0000000f}.sh-btn{width:100%;padding:12px 16px;margin:8px 0;border-radius:12px;border:none;font-size:16px;font-weight:700;cursor:pointer;background:var(--accent);color:#fff}.sh-btn:disabled{opacity:.5;cursor:not-allowed}.sh-btn.secondary{background:var(--card);color:var(--ink);border:1px solid #ccc}.sh-input{width:100%;padding:12px;margin:8px 0;border-radius:12px;border:1px solid #ddd;font-size:16px;background:#fff}.muted{color:var(--stone);font-size:13px}.err{color:var(--err);font-size:13px}.chip{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.chip.in-stock{background:var(--in-stock-bg);color:var(--in-stock)}.chip.low{background:var(--low-bg);color:var(--low)}.chip.out{background:var(--out-bg);color:var(--out)}.offline-banner{background:var(--out-bg);color:var(--out);padding:8px 16px;text-align:center;font-size:13px;font-weight:600}.app-shell{max-width:640px;margin:0 auto;padding:16px 16px 80px}.app-nav{position:fixed;bottom:0;left:0;right:0;display:flex;gap:4px;padding:8px;background:var(--card);border-top:1px solid #ddd;z-index:100}.app-nav a{flex:1;text-align:center;padding:8px 4px;font-size:11px;font-weight:600;color:var(--stone);border-radius:8px}.app-nav a.active{color:var(--accent);background:#6253e614}.kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.kpi{background:var(--card);border-radius:16px;padding:14px;box-shadow:0 2px 8px #0000000f}.kpi strong{display:block;font-size:1.5rem}.kpi span{font-size:12px;color:var(--stone)}.item-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee;gap:8px}.item-row:last-child{border-bottom:none}.scan-video{width:100%;border-radius:16px;background:#000;aspect-ratio:4/3}
