#canvasWrap{position:relative;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:auto;padding:8px}
#checker{position:absolute;inset:8px;background-size:32px 32px;
  background-image:
    linear-gradient(45deg,#eee 25%,transparent 25%),
    linear-gradient(-45deg,#eee 25%,transparent 25%),
    linear-gradient(45deg,transparent 75%,#eee 75%),
    linear-gradient(-45deg,transparent 75%,#eee 75%);
  background-position:0 0, 0 16px, 16px -16px, -16px 0;
  pointer-events:none}
#lienzo{display:block;margin:0 auto;background:transparent;border:1px solid var(--line);border-radius:12px;cursor:move}

.grid-2{display:grid;grid-template-columns:360px 1fr;gap:16px}
.lista-productos{display:grid;gap:8px;max-height:560px;overflow:auto;padding-right:4px}
.prod{display:grid;grid-template-columns:88px 1fr;gap:10px;border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff}
.prod .thumb{width:80px;height:80px;object-fit:contain;background:#f0f0f0;border:1px solid var(--line);border-radius:8px}
.prod .nombre{font-weight:600}
.prod .cat{font-size:12px;color:#6b7280;margin-bottom:6px}
.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-bottom:10px}
.toolbar .group{display:grid;gap:4px}
.sel{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}
.preview{white-space:pre-wrap;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}
.btn.mini{padding:6px 10px;font-size:13px}
.danger{background:#b91c1c;border-color:#b91c1c}
@media (max-width:1000px){.grid-2{grid-template-columns:1fr}}
