*{box-sizing:border-box}body{font-family:system-ui,sans-serif;margin:0;background:#f7f7f7}button{font-size:1.1rem;padding:.8rem 1.1rem;border-radius:.5rem;border:1px solid #ccc;background:#fff;cursor:pointer}.error{color:#c00}.pulse{animation:pulse 1.2s infinite alternate}@keyframes pulse{to{opacity:.45}}.shop{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;max-width:70rem;margin:0 auto}.menu{flex:2 1 24rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.7rem}.product{display:flex;flex-direction:column;gap:.25rem;min-height:7rem;text-align:left}.product .name{font-weight:700}.product .name-en{color:#666;font-size:.9rem}.product .price{margin-top:auto}.cart{flex:1 1 18rem;background:#fff;padding:1rem;border-radius:.5rem;align-self:flex-start}.cart ul{list-style:none;padding:0}.cart li{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0}.total{font-size:1.3rem;font-weight:700}.checkout{background:#1a7f37;color:#fff;border:none;width:100%}.pay,.final{max-width:30rem;margin:4rem auto;background:#fff;padding:2rem;border-radius:.6rem;text-align:center}.qr code{display:block;word-break:break-all;background:#f4f4f4;padding:1rem;margin:.6rem 0}
