:root{color:#211f1a;font-synthesis:none;text-rendering:optimizelegibility;background:#f7f4ee;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(#f7f4eec7,#f7f4ee),url(https://images.unsplash.com/photo-1556740738-b6a63e27c4df?auto=format&fit=crop&w=1600&q=80) 50%/cover fixed;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation;border:0}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{width:min(100%,520px);min-height:100vh;padding:max(18px, env(safe-area-inset-top)) 16px max(18px, env(safe-area-inset-bottom));flex-direction:column;gap:16px;margin:0 auto;display:flex}.top-bar{justify-content:space-between;align-items:center;gap:16px;min-height:88px;display:flex}.top-bar p{color:#746f64;margin:0 0 2px;font-size:1rem;font-weight:800}.top-bar h1{letter-spacing:0;margin:0;font-size:clamp(2.35rem,12vw,4rem);line-height:.94}.top-bar svg{color:#fff;background:#20615b;border-radius:8px;flex:none;width:52px;height:52px;padding:10px}.scanner-panel,.product-view{flex-direction:column;flex:1;gap:14px;display:flex}.camera-frame{background:#171914;border-radius:8px;min-height:54vh;position:relative;overflow:hidden;box-shadow:0 18px 38px #211f1a2e}.camera-frame video{object-fit:cover;width:100%;height:100%;min-height:54vh}.scan-guide{pointer-events:none;border:3px solid #ffffffdb;border-radius:8px;position:absolute;inset:18%}.scan-guide span{background:#e0483f;border-radius:2px;height:4px;position:absolute;top:50%;left:8%;right:8%;box-shadow:0 0 18px #e0483fcc}.camera-status,.manual-form{color:#fff;text-align:center;background:#171914b3;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:absolute;inset:0}.camera-status svg,.manual-form svg{width:58px;height:58px}.manual-form label{font-size:1.35rem;font-weight:900}.manual-form input{text-align:center;border:3px solid #0000;border-radius:8px;width:100%;min-height:58px;padding:0 16px;font-size:1.25rem;font-weight:800}.manual-form input:focus{border-color:#f0b64a;outline:0}.manual-form button,.not-found button{color:#fff;background:#20615b;border-radius:8px;width:100%;min-height:58px;font-size:1.1rem;font-weight:900}.notice,.success{color:#574218;background:#fff4d7;border-radius:8px;margin:0;padding:14px 16px;font-weight:800}.success{color:#173d2b;background:#dff4e8}.scan-actions,.bottom-actions{grid-template-columns:1fr 1fr;gap:12px;display:grid}.scan-actions button,.bottom-actions button{border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:68px;font-size:1.05rem;font-weight:900;display:inline-flex}.scan-actions button{color:#211f1a;background:#fff;box-shadow:inset 0 0 0 2px #211f1a14}.scan-actions button.active{color:#fff;background:#20615b}.scan-actions svg,.bottom-actions svg,.not-found svg{flex:none;width:24px;height:24px}.sample-codes{align-items:center;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.sample-codes p{color:#625d52;white-space:nowrap;margin:0;font-weight:900}.sample-codes button{color:#211f1a;white-space:nowrap;background:#ffffffe0;border-radius:8px;min-height:42px;padding:0 12px;font-weight:800}.product-view img{object-fit:cover;border-radius:8px;width:100%;height:min(46vh,380px);box-shadow:0 18px 38px #211f1a2e}.product-info{padding:4px 0}.barcode{color:#746f64;margin:0 0 8px;font-size:.95rem;font-weight:900}.product-info h2,.not-found h2{letter-spacing:0;margin:0;font-size:clamp(2rem,9vw,3rem);line-height:1}.facts{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;display:grid}.facts div{background:#fff;border-radius:8px;min-height:102px;padding:14px;box-shadow:inset 0 0 0 2px #211f1a0f}.facts span{color:#746f64;margin-bottom:8px;font-weight:900;display:block}.facts strong{color:#20615b;font-size:clamp(1.45rem,7vw,2rem);line-height:1.05;display:block}.facts .low-stock{color:#b83b31}.sell-button{color:#fff;background:#20615b}.cancel-button{color:#fff;background:#b83b31}.not-found{text-align:center;background:#fff;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:62vh;padding:24px;display:flex}.not-found>svg{color:#b83b31;width:70px;height:70px}.not-found p{color:#625d52;margin:0;font-weight:800}footer{color:#625d52;text-align:center;justify-content:center;align-items:center;gap:8px;min-height:34px;font-size:.9rem;font-weight:800;display:flex}footer svg{color:#20615b;width:18px;height:18px}@media (height<=700px){.camera-frame,.camera-frame video{min-height:46vh}.top-bar{min-height:66px}}
