@gemboss/ui 0.21.0 → 0.30.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/CHANGELOG.md +328 -0
  2. package/README.md +433 -24
  3. package/catalog/editor.html +426 -10
  4. package/catalog/index.html +907 -33
  5. package/gemboss-ui.css +3 -3
  6. package/package.json +23 -3
  7. package/parts/components.css +5 -0
  8. package/parts/core.css +5 -0
  9. package/parts/shell.css +5 -0
  10. package/src/action-card.css +1 -0
  11. package/src/action-card.tsx +149 -0
  12. package/src/app-shell.css +1 -1
  13. package/src/assistant/chat-markdown.ts +279 -0
  14. package/src/assistant/chat-turns.ts +120 -0
  15. package/src/assistant/chat.tsx +871 -0
  16. package/src/assistant/engine-mark-art.ts +45 -0
  17. package/src/assistant/engine-mark.tsx +39 -0
  18. package/src/assistant/engine.tsx +697 -0
  19. package/src/assistant/host.tsx +3 -1
  20. package/src/assistant/index.ts +6 -0
  21. package/src/assistant-chat.css +1 -0
  22. package/src/assistant-engine.css +1 -0
  23. package/src/auth.css +1 -1
  24. package/src/auth.tsx +18 -2
  25. package/src/chat-composer.css +1 -1
  26. package/src/chat-plain.js +6 -0
  27. package/src/chat.css +1 -1
  28. package/src/collections.tsx +1 -0
  29. package/src/dialog.tsx +3 -135
  30. package/src/editor/controls.tsx +1 -0
  31. package/src/editor/frame.tsx +12 -4
  32. package/src/editor/index.ts +10 -1
  33. package/src/editor/layers.tsx +136 -0
  34. package/src/editor/panel.tsx +1 -0
  35. package/src/editor/panes.tsx +4 -3
  36. package/src/editor/sortable.tsx +79 -0
  37. package/src/editor/tree.tsx +61 -0
  38. package/src/editor-layers-plain.js +1 -0
  39. package/src/editor.css +1 -1
  40. package/src/engine-plain.js +1 -0
  41. package/src/index-table.tsx +1 -0
  42. package/src/index.ts +8 -3
  43. package/src/kit-plain.css +1 -1
  44. package/src/kit-plain.js +1 -1
  45. package/src/launcher.tsx +1 -0
  46. package/src/menu-layer.ts +9 -2
  47. package/src/minichart.css +1 -0
  48. package/src/minichart.tsx +165 -0
  49. package/src/portal.tsx +1 -0
  50. package/src/reactions.tsx +1 -0
  51. package/src/resource-list-select.tsx +1 -0
  52. package/src/search-dialog.tsx +146 -0
  53. package/src/selection.tsx +1 -0
  54. package/src/setup-guide.css +1 -0
  55. package/src/setup-guide.tsx +116 -0
  56. package/src/theme-script.ts +10 -0
  57. package/src/theme.tsx +5 -5
@@ -8,7 +8,7 @@
8
8
  .cat-code summary{padding:10px 16px;font-size:13px;cursor:pointer;color:var(--gemboss-text-muted);border-top:1px solid var(--gemboss-divider);min-height:24px}
9
9
  .cat-code pre,.cat-api{margin:0;padding:12px 16px;overflow:auto;background:#0f1012;color:#e8e8e6;font-size:12px;line-height:1.5;border-radius:0}
10
10
  .cat-api{border-radius:12px;margin:0 0 16px}</style></head><body><div class="cat">
11
- <h1>@gemboss/ui 0.21.0 · Editor</h1>
11
+ <h1>@gemboss/ui 0.30.2 · Editor</h1>
12
12
  <p>Khung của mọi editor: <code>EditorFrame</code> (cột trái · khe kéo · preview · cột phải dock trên mép phải preview) và <code>EditorTopbar</code> (← · tiêu đề · cụm giữa · cụm phải · dòng trạng thái). Là đúng khung của theme / page / section editor trong admin. Gói chỉ vẽ KHUNG; chat, Configure, canvas, page picker, menu, Publish là của editor, đi vào bằng slot. Trang HTML thuần nạp <code>editor.css</code> + <code>editor-plain.js</code> rồi gọi <code>gembossUI.initEditorFrame()</code>: kéo khe (chuột, chạm, phím mũi tên / Home / End), đổi thiết bị, mở ⋯ và Publish ▾, ẩn cột trái, Chat | Preview trên điện thoại. <a href="index.html">← Catalog</a></p>
13
13
  <h2>React</h2><pre class="cat-api"><code>import &quot;@gemboss/ui/editor.css&quot;;
14
14
  import { EditorFrame, EditorTopbar, EditorBack, EditorChatToggle, EditorPaneTabs, EditorSaveState, DeviceToggle } from &quot;@gemboss/ui/editor&quot;;
@@ -29,15 +29,18 @@ import { EditorFrame, EditorTopbar, EditorBack, EditorChatToggle, EditorPaneTabs
29
29
  …the markup below…
30
30
  &lt;script src=&quot;…/@gemboss/ui/src/kit-plain.js&quot;&gt;&lt;/script&gt;
31
31
  &lt;script src=&quot;…/@gemboss/ui/src/editor-plain.js&quot;&gt;&lt;/script&gt;
32
+ &lt;script src=&quot;…/@gemboss/ui/src/editor-layers-plain.js&quot;&gt;&lt;/script&gt; &lt;!-- 0.22.0, only where layers / drawers are --&gt;
32
33
  &lt;script&gt;
33
34
  gembossUI.initEditorFrame();
34
35
  gembossUI.initEditorPanel(); // 0.17.0: tabs, groups, Seg, colour, range, edges, image
36
+ gembossUI.initEditorLayers(); // 0.22.0: layers (select, hide, drag / Alt+↑↓), the element outline, drawers
37
+ addEventListener(&quot;gemboss:editor-layer-move&quot;, (e) =&gt; save(e.detail.id, e.detail.to));
35
38
  addEventListener(&quot;gemboss:editor-device&quot;, (e) =&gt; setCanvasWidth(e.detail.device));
36
39
  addEventListener(&quot;gemboss:editor-split&quot;, (e) =&gt; save(e.detail.width));
37
40
  addEventListener(&quot;gemboss:editor-edges&quot;, (e) =&gt; save(e.target.dataset.name, e.detail)); // {t, r, b, l}
38
41
  &lt;/script&gt;</code></pre>
39
42
  <h2>Builder: lớp trái, canvas, preset phải</h2>
40
- <figure class="cat-demo"><figcaption>1280: kéo khe giữa, bấm ⋯ / ▾ / thiết bị / biểu tượng cột trái</figcaption><div class="cat-wide"><iframe title="1280: kéo khe giữa, bấm ⋯ / ▾ / thiết bị / biểu tượng cột trái" style="width:1280px;height:560px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-editor&quot;&gt;&lt;header class=&quot;gemboss-editor-topbar gemboss-editor-topbar--theme&quot;&gt;&lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;&lt;button class=&quot;gemboss-editor-chat-toggle&quot; aria-pressed=&quot;false&quot; title=&quot;Hide chat — full-width preview&quot; aria-label=&quot;Hide chat panel&quot;&gt;&lt;svg viewBox=&quot;0 0 16 16&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;12.5&quot; height=&quot;10.5&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;6.25&quot; y1=&quot;2.75&quot; x2=&quot;6.25&quot; y2=&quot;13.25&quot;&gt;&lt;/line&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;4.5&quot; height=&quot;10.5&quot; fill=&quot;currentColor&quot; stroke=&quot;none&quot;&gt;&lt;/rect&gt;&lt;/svg&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-editor-tb-name&quot;&gt;Builder&lt;/span&gt;&lt;span class=&quot;gemboss-editor-savestate is-saved&quot; role=&quot;status&quot; aria-live=&quot;polite&quot; title=&quot;Every change is saved to the draft automatically&quot;&gt;✓ Draft saved · 10:42&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-center&quot;&gt;&lt;div class=&quot;ui-seg gemboss-pv-devices&quot; role=&quot;group&quot; aria-label=&quot;Device&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device active&quot; aria-label=&quot;Desktop&quot; title=&quot;Desktop&quot; aria-pressed=&quot;true&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;2.5&quot; y=&quot;4&quot; width=&quot;19&quot; height=&quot;12&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;9&quot; y1=&quot;20.5&quot; x2=&quot;15&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;line x1=&quot;12&quot; y1=&quot;16&quot; x2=&quot;12&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Tablet&quot; title=&quot;Tablet&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;4&quot; y=&quot;3&quot; width=&quot;16&quot; height=&quot;18&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18&quot; x2=&quot;13.5&quot; y2=&quot;18&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Mobile&quot; title=&quot;Mobile&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;6.5&quot; y=&quot;2.5&quot; width=&quot;11&quot; height=&quot;19&quot; rx=&quot;2.5&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18.5&quot; x2=&quot;13.5&quot; y2=&quot;18.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-right&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot;&gt;+ Add section&lt;/button&gt;&lt;div class=&quot;gemboss-editor-overflow&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device gemboss-editor-overflow-trigger&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;More actions&quot; title=&quot;More actions&quot;&gt;⋯&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Duplicate&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Export HTML&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-editor-menu-sep&quot; role=&quot;separator&quot;&gt;&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Delete&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-publish&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-main&quot;&gt;Publish&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-caret&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;Choose deploy target&quot;&gt;▾&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;div class=&quot;gemboss-editor-menu-label&quot; aria-hidden=&quot;true&quot;&gt;Target&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Deploy preview&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Publish live&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-editor-body&quot; data-mobile-pane=&quot;chat&quot; style=&quot;--gemboss-chat-w:320px&quot;&gt;&lt;div class=&quot;gemboss-ec&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot;&gt;Hero · Logos · Benefits · Reviews · FAQ&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-resizer ui-resizer&quot; role=&quot;separator&quot; aria-orientation=&quot;vertical&quot; aria-label=&quot;Resize layers panel&quot; aria-valuenow=&quot;320&quot; aria-valuemin=&quot;300&quot; aria-valuemax=&quot;680&quot; tabindex=&quot;0&quot;&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-preview-pane&quot;&gt;&lt;div class=&quot;gemboss-editor-dock&quot;&gt;&lt;div style=&quot;padding:16px&quot;&gt;&lt;b&gt;Presets&lt;/b&gt;&lt;p style=&quot;color:var(--gemboss-text-muted);margin:8px 0 0&quot;&gt;The right column: docked over the preview, 320px.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-pv-frame gemboss-pv-fit desktop&quot; style=&quot;display:grid;place-items:center;color:var(--gemboss-text-muted)&quot;&gt;Canvas&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-mobile-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panes&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;true&quot; class=&quot;gemboss-editor-mobile-tab active&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;false&quot; class=&quot;gemboss-editor-mobile-tab&quot;&gt;Preview&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-editor&quot;&gt;
43
+ <figure class="cat-demo"><figcaption>1280: kéo khe giữa, bấm ⋯ / ▾ / thiết bị / biểu tượng cột trái</figcaption><div class="cat-wide"><iframe title="1280: kéo khe giữa, bấm ⋯ / ▾ / thiết bị / biểu tượng cột trái" style="width:1280px;height:560px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-editor&quot;&gt;&lt;header class=&quot;gemboss-editor-topbar gemboss-editor-topbar--theme&quot;&gt;&lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;&lt;button class=&quot;gemboss-editor-chat-toggle&quot; aria-pressed=&quot;false&quot; title=&quot;Hide chat — full-width preview&quot; aria-label=&quot;Hide chat panel&quot;&gt;&lt;svg viewBox=&quot;0 0 16 16&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;12.5&quot; height=&quot;10.5&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;6.25&quot; y1=&quot;2.75&quot; x2=&quot;6.25&quot; y2=&quot;13.25&quot;&gt;&lt;/line&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;4.5&quot; height=&quot;10.5&quot; fill=&quot;currentColor&quot; stroke=&quot;none&quot;&gt;&lt;/rect&gt;&lt;/svg&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-editor-tb-name&quot;&gt;Builder&lt;/span&gt;&lt;span class=&quot;gemboss-editor-savestate is-saved&quot; role=&quot;status&quot; aria-live=&quot;polite&quot; title=&quot;Every change is saved to the draft automatically&quot;&gt;✓ Draft saved · 10:42&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-center&quot;&gt;&lt;div class=&quot;ui-seg gemboss-pv-devices&quot; role=&quot;group&quot; aria-label=&quot;Device&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device active&quot; aria-label=&quot;Desktop&quot; title=&quot;Desktop&quot; aria-pressed=&quot;true&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;2.5&quot; y=&quot;4&quot; width=&quot;19&quot; height=&quot;12&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;9&quot; y1=&quot;20.5&quot; x2=&quot;15&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;line x1=&quot;12&quot; y1=&quot;16&quot; x2=&quot;12&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Tablet&quot; title=&quot;Tablet&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;4&quot; y=&quot;3&quot; width=&quot;16&quot; height=&quot;18&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18&quot; x2=&quot;13.5&quot; y2=&quot;18&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Mobile&quot; title=&quot;Mobile&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;6.5&quot; y=&quot;2.5&quot; width=&quot;11&quot; height=&quot;19&quot; rx=&quot;2.5&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18.5&quot; x2=&quot;13.5&quot; y2=&quot;18.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-right&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot;&gt;+ Add section&lt;/button&gt;&lt;div class=&quot;gemboss-editor-overflow&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device gemboss-editor-overflow-trigger&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;More actions&quot; title=&quot;More actions&quot;&gt;⋯&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Duplicate&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Export HTML&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-editor-menu-sep&quot; role=&quot;separator&quot;&gt;&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Delete&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-publish&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-main&quot;&gt;Publish&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-caret&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;Choose deploy target&quot;&gt;▾&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;div class=&quot;gemboss-editor-menu-label&quot; aria-hidden=&quot;true&quot;&gt;Target&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Deploy preview&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Publish live&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-editor-body&quot; data-mobile-pane=&quot;chat&quot; style=&quot;--gemboss-chat-w:320px&quot;&gt;&lt;div class=&quot;gemboss-ec&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot;&gt;Hero · Logos · Benefits · Reviews · FAQ&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-resizer ui-resizer&quot; role=&quot;separator&quot; aria-orientation=&quot;vertical&quot; aria-label=&quot;Resize layers panel&quot; aria-valuenow=&quot;320&quot; aria-valuemin=&quot;300&quot; aria-valuemax=&quot;680&quot; tabindex=&quot;0&quot;&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-preview-pane&quot;&gt;&lt;div class=&quot;gemboss-editor-dock&quot;&gt;&lt;div style=&quot;padding:16px&quot;&gt;&lt;b&gt;Presets&lt;/b&gt;&lt;p style=&quot;color:var(--gemboss-text-muted);margin:8px 0 0&quot;&gt;The right column: docked over the preview, 320px.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-pv-frame gemboss-pv-fit desktop&quot; style=&quot;display:grid;place-items:center;color:var(--gemboss-text-muted)&quot;&gt;Canvas&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-mobile-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panes&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;true&quot; class=&quot;gemboss-editor-mobile-tab active&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;false&quot; class=&quot;gemboss-editor-mobile-tab&quot;&gt;Preview&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;script src=&quot;../src/editor-layers-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorLayers()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-editor&quot;&gt;
41
44
  &lt;header class=&quot;gemboss-editor-topbar gemboss-editor-topbar--theme&quot;&gt;
42
45
  &lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;
43
46
  &lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;
@@ -142,7 +145,7 @@ import { EditorFrame, EditorTopbar, EditorBack, EditorChatToggle, EditorPaneTabs
142
145
  &lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;false&quot; class=&quot;gemboss-editor-mobile-tab&quot;&gt;Preview&lt;/button&gt;
143
146
  &lt;/div&gt;
144
147
  &lt;/div&gt;</code></pre></details></figure>
145
- <figure class="cat-demo"><figcaption>390: hai hàng trên topbar, Layers | Preview ở đáy</figcaption><div class="cat-wide"><iframe title="390: hai hàng trên topbar, Layers | Preview ở đáy" style="width:390px;height:700px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-editor&quot;&gt;&lt;header class=&quot;gemboss-editor-topbar gemboss-editor-topbar--theme&quot;&gt;&lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;&lt;button class=&quot;gemboss-editor-chat-toggle&quot; aria-pressed=&quot;false&quot; title=&quot;Hide chat — full-width preview&quot; aria-label=&quot;Hide chat panel&quot;&gt;&lt;svg viewBox=&quot;0 0 16 16&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;12.5&quot; height=&quot;10.5&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;6.25&quot; y1=&quot;2.75&quot; x2=&quot;6.25&quot; y2=&quot;13.25&quot;&gt;&lt;/line&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;4.5&quot; height=&quot;10.5&quot; fill=&quot;currentColor&quot; stroke=&quot;none&quot;&gt;&lt;/rect&gt;&lt;/svg&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-editor-tb-name&quot;&gt;Builder&lt;/span&gt;&lt;span class=&quot;gemboss-editor-savestate is-saved&quot; role=&quot;status&quot; aria-live=&quot;polite&quot; title=&quot;Every change is saved to the draft automatically&quot;&gt;✓ Draft saved · 10:42&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-center&quot;&gt;&lt;div class=&quot;ui-seg gemboss-pv-devices&quot; role=&quot;group&quot; aria-label=&quot;Device&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device active&quot; aria-label=&quot;Desktop&quot; title=&quot;Desktop&quot; aria-pressed=&quot;true&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;2.5&quot; y=&quot;4&quot; width=&quot;19&quot; height=&quot;12&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;9&quot; y1=&quot;20.5&quot; x2=&quot;15&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;line x1=&quot;12&quot; y1=&quot;16&quot; x2=&quot;12&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Tablet&quot; title=&quot;Tablet&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;4&quot; y=&quot;3&quot; width=&quot;16&quot; height=&quot;18&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18&quot; x2=&quot;13.5&quot; y2=&quot;18&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Mobile&quot; title=&quot;Mobile&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;6.5&quot; y=&quot;2.5&quot; width=&quot;11&quot; height=&quot;19&quot; rx=&quot;2.5&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18.5&quot; x2=&quot;13.5&quot; y2=&quot;18.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-right&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot;&gt;+ Add section&lt;/button&gt;&lt;div class=&quot;gemboss-editor-overflow&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device gemboss-editor-overflow-trigger&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;More actions&quot; title=&quot;More actions&quot;&gt;⋯&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Duplicate&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Export HTML&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-editor-menu-sep&quot; role=&quot;separator&quot;&gt;&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Delete&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-publish&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-main&quot;&gt;Publish&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-caret&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;Choose deploy target&quot;&gt;▾&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;div class=&quot;gemboss-editor-menu-label&quot; aria-hidden=&quot;true&quot;&gt;Target&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Deploy preview&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Publish live&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-editor-body&quot; data-mobile-pane=&quot;chat&quot; style=&quot;--gemboss-chat-w:320px&quot;&gt;&lt;div class=&quot;gemboss-ec&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot;&gt;Hero · Logos · Benefits · Reviews · FAQ&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-resizer ui-resizer&quot; role=&quot;separator&quot; aria-orientation=&quot;vertical&quot; aria-label=&quot;Resize layers panel&quot; aria-valuenow=&quot;320&quot; aria-valuemin=&quot;300&quot; aria-valuemax=&quot;680&quot; tabindex=&quot;0&quot;&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-preview-pane&quot;&gt;&lt;div class=&quot;gemboss-editor-dock&quot;&gt;&lt;div style=&quot;padding:16px&quot;&gt;&lt;b&gt;Presets&lt;/b&gt;&lt;p style=&quot;color:var(--gemboss-text-muted);margin:8px 0 0&quot;&gt;The right column: docked over the preview, 320px.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-pv-frame gemboss-pv-fit desktop&quot; style=&quot;display:grid;place-items:center;color:var(--gemboss-text-muted)&quot;&gt;Canvas&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-mobile-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panes&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;true&quot; class=&quot;gemboss-editor-mobile-tab active&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;false&quot; class=&quot;gemboss-editor-mobile-tab&quot;&gt;Preview&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-editor&quot;&gt;
148
+ <figure class="cat-demo"><figcaption>390: hai hàng trên topbar, Layers | Preview ở đáy</figcaption><div class="cat-wide"><iframe title="390: hai hàng trên topbar, Layers | Preview ở đáy" style="width:390px;height:700px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-editor&quot;&gt;&lt;header class=&quot;gemboss-editor-topbar gemboss-editor-topbar--theme&quot;&gt;&lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;&lt;button class=&quot;gemboss-editor-chat-toggle&quot; aria-pressed=&quot;false&quot; title=&quot;Hide chat — full-width preview&quot; aria-label=&quot;Hide chat panel&quot;&gt;&lt;svg viewBox=&quot;0 0 16 16&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;12.5&quot; height=&quot;10.5&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;6.25&quot; y1=&quot;2.75&quot; x2=&quot;6.25&quot; y2=&quot;13.25&quot;&gt;&lt;/line&gt;&lt;rect x=&quot;1.75&quot; y=&quot;2.75&quot; width=&quot;4.5&quot; height=&quot;10.5&quot; fill=&quot;currentColor&quot; stroke=&quot;none&quot;&gt;&lt;/rect&gt;&lt;/svg&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-editor-tb-name&quot;&gt;Builder&lt;/span&gt;&lt;span class=&quot;gemboss-editor-savestate is-saved&quot; role=&quot;status&quot; aria-live=&quot;polite&quot; title=&quot;Every change is saved to the draft automatically&quot;&gt;✓ Draft saved · 10:42&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-center&quot;&gt;&lt;div class=&quot;ui-seg gemboss-pv-devices&quot; role=&quot;group&quot; aria-label=&quot;Device&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device active&quot; aria-label=&quot;Desktop&quot; title=&quot;Desktop&quot; aria-pressed=&quot;true&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;2.5&quot; y=&quot;4&quot; width=&quot;19&quot; height=&quot;12&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;9&quot; y1=&quot;20.5&quot; x2=&quot;15&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;line x1=&quot;12&quot; y1=&quot;16&quot; x2=&quot;12&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Tablet&quot; title=&quot;Tablet&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;4&quot; y=&quot;3&quot; width=&quot;16&quot; height=&quot;18&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18&quot; x2=&quot;13.5&quot; y2=&quot;18&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Mobile&quot; title=&quot;Mobile&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;6.5&quot; y=&quot;2.5&quot; width=&quot;11&quot; height=&quot;19&quot; rx=&quot;2.5&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18.5&quot; x2=&quot;13.5&quot; y2=&quot;18.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-right&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot;&gt;+ Add section&lt;/button&gt;&lt;div class=&quot;gemboss-editor-overflow&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device gemboss-editor-overflow-trigger&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;More actions&quot; title=&quot;More actions&quot;&gt;⋯&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Duplicate&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Export HTML&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-editor-menu-sep&quot; role=&quot;separator&quot;&gt;&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Delete&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-publish&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-main&quot;&gt;Publish&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish gemboss-editor-publish-caret&quot; aria-haspopup=&quot;menu&quot; aria-expanded=&quot;false&quot; aria-label=&quot;Choose deploy target&quot;&gt;▾&lt;/button&gt;&lt;div class=&quot;gemboss-popover-surface gemboss-editor-menu&quot; role=&quot;menu&quot; hidden&gt;&lt;div class=&quot;gemboss-editor-menu-label&quot; aria-hidden=&quot;true&quot;&gt;Target&lt;/div&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Deploy preview&lt;/span&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-menu-item&quot; role=&quot;menuitem&quot;&gt;&lt;span&gt;Publish live&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-editor-body&quot; data-mobile-pane=&quot;chat&quot; style=&quot;--gemboss-chat-w:320px&quot;&gt;&lt;div class=&quot;gemboss-ec&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot;&gt;Hero · Logos · Benefits · Reviews · FAQ&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-resizer ui-resizer&quot; role=&quot;separator&quot; aria-orientation=&quot;vertical&quot; aria-label=&quot;Resize layers panel&quot; aria-valuenow=&quot;320&quot; aria-valuemin=&quot;300&quot; aria-valuemax=&quot;680&quot; tabindex=&quot;0&quot;&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-preview-pane&quot;&gt;&lt;div class=&quot;gemboss-editor-dock&quot;&gt;&lt;div style=&quot;padding:16px&quot;&gt;&lt;b&gt;Presets&lt;/b&gt;&lt;p style=&quot;color:var(--gemboss-text-muted);margin:8px 0 0&quot;&gt;The right column: docked over the preview, 320px.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-pv-frame gemboss-pv-fit desktop&quot; style=&quot;display:grid;place-items:center;color:var(--gemboss-text-muted)&quot;&gt;Canvas&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-mobile-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panes&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;true&quot; class=&quot;gemboss-editor-mobile-tab active&quot;&gt;Layers&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; aria-selected=&quot;false&quot; class=&quot;gemboss-editor-mobile-tab&quot;&gt;Preview&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;script src=&quot;../src/editor-layers-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorLayers()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-editor&quot;&gt;
146
149
  &lt;header class=&quot;gemboss-editor-topbar gemboss-editor-topbar--theme&quot;&gt;
147
150
  &lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;
148
151
  &lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;
@@ -248,14 +251,14 @@ import { EditorFrame, EditorTopbar, EditorBack, EditorChatToggle, EditorPaneTabs
248
251
  &lt;/div&gt;
249
252
  &lt;/div&gt;</code></pre></details></figure>
250
253
  <h2>Thanh của page / section editor</h2>
251
- <figure class="cat-demo"><figcaption>variant=&quot;page&quot;, 1280</figcaption><div class="cat-wide"><iframe title="variant=&quot;page&quot;, 1280" style="width:1280px;height:420px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-editor&quot;&gt;&lt;header class=&quot;gemboss-editor-topbar gemboss-pageedit-top&quot;&gt;&lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;&lt;span class=&quot;gemboss-editor-tb-name&quot;&gt;Page editor&lt;/span&gt;&lt;span class=&quot;gemboss-pageedit-title&quot;&gt;Spring sale&lt;/span&gt;&lt;span class=&quot;gemboss-pageedit-kind&quot;&gt;Landing page&lt;/span&gt;&lt;span class=&quot;gemboss-pageedit-status&quot;&gt;Draft&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-center&quot;&gt;&lt;div class=&quot;ui-seg gemboss-pv-devices&quot; role=&quot;group&quot; aria-label=&quot;Device&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Desktop&quot; title=&quot;Desktop&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;2.5&quot; y=&quot;4&quot; width=&quot;19&quot; height=&quot;12&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;9&quot; y1=&quot;20.5&quot; x2=&quot;15&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;line x1=&quot;12&quot; y1=&quot;16&quot; x2=&quot;12&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Tablet&quot; title=&quot;Tablet&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;4&quot; y=&quot;3&quot; width=&quot;16&quot; height=&quot;18&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18&quot; x2=&quot;13.5&quot; y2=&quot;18&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device active&quot; aria-label=&quot;Mobile&quot; title=&quot;Mobile&quot; aria-pressed=&quot;true&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;6.5&quot; y=&quot;2.5&quot; width=&quot;11&quot; height=&quot;19&quot; rx=&quot;2.5&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18.5&quot; x2=&quot;13.5&quot; y2=&quot;18.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-right&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot;&gt;+ Add section&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish&quot;&gt;Publish&lt;/button&gt;&lt;/div&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-editor-body&quot; style=&quot;--gemboss-chat-w:384px&quot;&gt;&lt;div class=&quot;gemboss-ec&quot;&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot;&gt;Chat&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-resizer ui-resizer&quot; role=&quot;separator&quot; aria-orientation=&quot;vertical&quot; aria-label=&quot;Resize chat panel&quot; aria-valuenow=&quot;384&quot; aria-valuemin=&quot;300&quot; aria-valuemax=&quot;680&quot; tabindex=&quot;0&quot;&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-preview-pane&quot;&gt;&lt;div class=&quot;gemboss-pv-frame gemboss-pv-fit mobile&quot; style=&quot;display:grid;place-items:center;color:var(--gemboss-text-muted)&quot;&gt;Canvas&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-editor&quot;&gt;
254
+ <figure class="cat-demo"><figcaption>variant=&quot;page&quot;, 1280</figcaption><div class="cat-wide"><iframe title="variant=&quot;page&quot;, 1280" style="width:1280px;height:420px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-editor&quot;&gt;&lt;header class=&quot;gemboss-editor-topbar gemboss-pageedit-top&quot;&gt;&lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;&lt;span class=&quot;gemboss-editor-tb-name&quot;&gt;Page editor&lt;/span&gt;&lt;span class=&quot;gemboss-pageedit-title&quot;&gt;Spring sale&lt;/span&gt;&lt;span class=&quot;ui-badge&quot;&gt;Landing page&lt;/span&gt;&lt;span class=&quot;ui-badge&quot;&gt;Draft&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-center&quot;&gt;&lt;div class=&quot;ui-seg gemboss-pv-devices&quot; role=&quot;group&quot; aria-label=&quot;Device&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Desktop&quot; title=&quot;Desktop&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;2.5&quot; y=&quot;4&quot; width=&quot;19&quot; height=&quot;12&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;9&quot; y1=&quot;20.5&quot; x2=&quot;15&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;line x1=&quot;12&quot; y1=&quot;16&quot; x2=&quot;12&quot; y2=&quot;20.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device&quot; aria-label=&quot;Tablet&quot; title=&quot;Tablet&quot; aria-pressed=&quot;false&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;4&quot; y=&quot;3&quot; width=&quot;16&quot; height=&quot;18&quot; rx=&quot;2&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18&quot; x2=&quot;13.5&quot; y2=&quot;18&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-pv-device active&quot; aria-label=&quot;Mobile&quot; title=&quot;Mobile&quot; aria-pressed=&quot;true&quot;&gt;&lt;svg viewBox=&quot;0 0 24 24&quot; width=&quot;15&quot; height=&quot;15&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;rect x=&quot;6.5&quot; y=&quot;2.5&quot; width=&quot;11&quot; height=&quot;19&quot; rx=&quot;2.5&quot;&gt;&lt;/rect&gt;&lt;line x1=&quot;10.5&quot; y1=&quot;18.5&quot; x2=&quot;13.5&quot; y2=&quot;18.5&quot;&gt;&lt;/line&gt;&lt;/svg&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-tb-right&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot;&gt;+ Add section&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-publish&quot;&gt;Publish&lt;/button&gt;&lt;/div&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-editor-body&quot; style=&quot;--gemboss-chat-w:384px&quot;&gt;&lt;div class=&quot;gemboss-ec&quot;&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot;&gt;Chat&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-resizer ui-resizer&quot; role=&quot;separator&quot; aria-orientation=&quot;vertical&quot; aria-label=&quot;Resize chat panel&quot; aria-valuenow=&quot;384&quot; aria-valuemin=&quot;300&quot; aria-valuemax=&quot;680&quot; tabindex=&quot;0&quot;&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-editor-preview-pane&quot;&gt;&lt;div class=&quot;gemboss-pv-frame gemboss-pv-fit mobile&quot; style=&quot;display:grid;place-items:center;color:var(--gemboss-text-muted)&quot;&gt;Canvas&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;script src=&quot;../src/editor-layers-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorLayers()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-editor&quot;&gt;
252
255
  &lt;header class=&quot;gemboss-editor-topbar gemboss-pageedit-top&quot;&gt;
253
256
  &lt;div class=&quot;gemboss-editor-tb-left&quot;&gt;
254
257
  &lt;a href=&quot;#&quot; class=&quot;gemboss-editor-back&quot; aria-label=&quot;Back&quot;&gt;←&lt;/a&gt;
255
258
  &lt;span class=&quot;gemboss-editor-tb-name&quot;&gt;Page editor&lt;/span&gt;
256
259
  &lt;span class=&quot;gemboss-pageedit-title&quot;&gt;Spring sale&lt;/span&gt;
257
- &lt;span class=&quot;gemboss-pageedit-kind&quot;&gt;Landing page&lt;/span&gt;
258
- &lt;span class=&quot;gemboss-pageedit-status&quot;&gt;Draft&lt;/span&gt;
260
+ &lt;span class=&quot;ui-badge&quot;&gt;Landing page&lt;/span&gt;
261
+ &lt;span class=&quot;ui-badge&quot;&gt;Draft&lt;/span&gt;
259
262
  &lt;/div&gt;
260
263
  &lt;div class=&quot;gemboss-editor-tb-center&quot;&gt;
261
264
  &lt;div class=&quot;ui-seg gemboss-pv-devices&quot; role=&quot;group&quot; aria-label=&quot;Device&quot;&gt;
@@ -316,9 +319,9 @@ import { EditorFrame, EditorTopbar, EditorBack, EditorChatToggle, EditorPaneTabs
316
319
  &lt;Field label=&quot;Padding&quot;&gt;&lt;EdgeBox label=&quot;Padding&quot; values={pad} onChange={(side, raw) =&gt; …} onCommit={save} /&gt;&lt;/Field&gt;
317
320
  &lt;Field label=&quot;Image&quot; htmlFor=&quot;img&quot;&gt;&lt;ImageControl id=&quot;img&quot; value={url} onChange={setUrl} /&gt;&lt;/Field&gt;
318
321
  &lt;/InspectorGroup&gt;</code></pre>
319
- <figure class="cat-demo"><figcaption>1280 (chuột): cột Configure 360px, đủ control, nhóm Motion đang gập</figcaption><div class="cat-wide"><iframe title="1280 (chuột): cột Configure 360px, đủ control, nhóm Motion đang gập" style="width:1280px;height:1120px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Configure&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;chat&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot; style=&quot;padding:0&quot;&gt;&lt;aside class=&quot;gemboss-ei gemboss-ei--docked&quot; role=&quot;region&quot; aria-label=&quot;Settings — Hero&quot;&gt;&lt;header class=&quot;gemboss-ei-head&quot;&gt;&lt;span class=&quot;gemboss-ei-title&quot;&gt;Hero&lt;small&gt;hero-banner.default.v1&lt;/small&gt;&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Duplicate section&quot; aria-label=&quot;Duplicate section&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Restore this section to its previous version&quot; aria-label=&quot;Restore this section&quot;&gt;↺&lt;/button&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-ei-tabs&quot; role=&quot;tablist&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;content&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Content&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;design&quot; class=&quot;gemboss-ei-tab on&quot; aria-selected=&quot;true&quot; tabindex=&quot;0&quot;&gt;Design&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;advanced&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Advanced&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-body&quot;&gt;&lt;div class=&quot;gemboss-ei-pane&quot;&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Layout&lt;small class=&quot;gemboss-ei-gh-note&quot;&gt;· all screens&lt;/small&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Content width&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Content width&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;full&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Full&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;contained&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;Contained&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;narrow&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Narrow&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Columns&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Columns&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;2&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;2&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;3&quot; disabled=&quot;&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;3&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;4&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;4&lt;/button&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Disabled while a change is applied.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Spacing&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Padding&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding top&quot; value=&quot;24&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding bottom&quot; value=&quot;24&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Margin&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin top&quot; value=&quot;&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin bottom&quot; value=&quot;&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Empty edges follow desktop.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Color&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-bg&quot;&gt;Background&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Background swatch&quot; value=&quot;#f4efe6&quot;/&gt;&lt;input id=&quot;cat-bg&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;#f4efe6&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-ov&quot;&gt;Overlay&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Overlay swatch&quot; disabled=&quot;&quot; title=&quot;linear-gradient(90deg,#000,#0000) — not a plain 6-digit hex; edit it in the box below&quot; value=&quot;#000000&quot;/&gt;&lt;input id=&quot;cat-ov&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;linear-gradient(90deg,#000,#0000)&quot;/&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;A gradient: the swatch cannot show it, so it is off.&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-op&quot;&gt;Opacity&lt;span class=&quot;gemboss-ei-rangeval&quot; data-suffix=&quot;%&quot;&gt;80%&lt;/span&gt;&lt;/label&gt;&lt;input id=&quot;cat-op&quot; type=&quot;range&quot; class=&quot;gemboss-ei-range&quot; min=&quot;0&quot; max=&quot;100&quot; step=&quot;1&quot; value=&quot;80&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Media&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-img&quot;&gt;Image&lt;/label&gt;&lt;div class=&quot;gemboss-ei-img&quot;&gt;&lt;div class=&quot;gemboss-ei-img-thumb&quot; aria-hidden=&quot;true&quot;&gt;—&lt;/div&gt;&lt;div class=&quot;gemboss-ei-img-ctl&quot;&gt;&lt;input id=&quot;cat-img&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;Paste image URL…&quot; value=&quot;&quot;/&gt;&lt;div class=&quot;gemboss-ei-img-actions&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; aria-expanded=&quot;false&quot;&gt;Library&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; data-gb-image-clear&gt;Clear&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;closed&quot; aria-expanded=&quot;false&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▸&lt;/span&gt;Motion&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Reveal&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Reveal&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;none&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;None&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;fade&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Fade&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;
322
+ <figure class="cat-demo"><figcaption>1280 (chuột): cột Configure 360px, đủ control, nhóm Motion đang gập</figcaption><div class="cat-wide"><iframe title="1280 (chuột): cột Configure 360px, đủ control, nhóm Motion đang gập" style="width:1280px;height:1120px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Settings&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;chat&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot; style=&quot;padding:0&quot;&gt;&lt;aside class=&quot;gemboss-ei gemboss-ei--docked&quot; role=&quot;region&quot; aria-label=&quot;Settings — Hero&quot;&gt;&lt;header class=&quot;gemboss-ei-head&quot;&gt;&lt;span class=&quot;gemboss-ei-title&quot;&gt;Hero&lt;small&gt;hero-banner.default.v1&lt;/small&gt;&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Duplicate section&quot; aria-label=&quot;Duplicate section&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Restore this section to its previous version&quot; aria-label=&quot;Restore this section&quot;&gt;↺&lt;/button&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-ei-tabs&quot; role=&quot;tablist&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;content&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Content&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;design&quot; class=&quot;gemboss-ei-tab on&quot; aria-selected=&quot;true&quot; tabindex=&quot;0&quot;&gt;Design&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;advanced&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Advanced&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-body&quot;&gt;&lt;div class=&quot;gemboss-ei-pane&quot;&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Layout&lt;small class=&quot;gemboss-ei-gh-note&quot;&gt;· all screens&lt;/small&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Content width&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Content width&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;full&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Full&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;contained&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;Contained&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;narrow&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Narrow&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Columns&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Columns&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;2&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;2&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;3&quot; disabled=&quot;&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;3&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;4&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;4&lt;/button&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Disabled while a change is applied.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Spacing&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Padding&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding top&quot; value=&quot;24&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding bottom&quot; value=&quot;24&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Margin&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin top&quot; value=&quot;&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin bottom&quot; value=&quot;&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Empty edges follow desktop.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Color&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-bg&quot;&gt;Background&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Background swatch&quot; value=&quot;#f4efe6&quot;/&gt;&lt;input id=&quot;cat-bg&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;#f4efe6&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-ov&quot;&gt;Overlay&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Overlay swatch&quot; disabled=&quot;&quot; title=&quot;linear-gradient(90deg,#000,#0000) — not a plain 6-digit hex; edit it in the box below&quot; value=&quot;#000000&quot;/&gt;&lt;input id=&quot;cat-ov&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;linear-gradient(90deg,#000,#0000)&quot;/&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;A gradient: the swatch cannot show it, so it is off.&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-op&quot;&gt;Opacity&lt;span class=&quot;gemboss-ei-rangeval&quot; data-suffix=&quot;%&quot;&gt;80%&lt;/span&gt;&lt;/label&gt;&lt;input id=&quot;cat-op&quot; type=&quot;range&quot; class=&quot;gemboss-ei-range&quot; min=&quot;0&quot; max=&quot;100&quot; step=&quot;1&quot; value=&quot;80&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Media&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-img&quot;&gt;Image&lt;/label&gt;&lt;div class=&quot;gemboss-ei-img&quot;&gt;&lt;div class=&quot;gemboss-ei-img-thumb&quot; aria-hidden=&quot;true&quot;&gt;—&lt;/div&gt;&lt;div class=&quot;gemboss-ei-img-ctl&quot;&gt;&lt;input id=&quot;cat-img&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;Paste image URL…&quot; value=&quot;&quot;/&gt;&lt;div class=&quot;gemboss-ei-img-actions&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; aria-expanded=&quot;false&quot;&gt;Library&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; data-gb-image-clear&gt;Clear&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;closed&quot; aria-expanded=&quot;false&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▸&lt;/span&gt;Motion&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Reveal&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Reveal&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;none&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;None&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;fade&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Fade&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;script src=&quot;../src/editor-layers-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorLayers()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;
320
323
  &lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;
321
- &lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Configure&lt;/button&gt;
324
+ &lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Settings&lt;/button&gt;
322
325
  &lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;chat&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;
323
326
  &lt;/div&gt;
324
327
  &lt;div class=&quot;gemboss-ec-dock-body&quot; style=&quot;padding:0&quot;&gt;
@@ -462,9 +465,9 @@ import { EditorFrame, EditorTopbar, EditorBack, EditorChatToggle, EditorPaneTabs
462
465
  &lt;/aside&gt;
463
466
  &lt;/div&gt;
464
467
  &lt;/div&gt;</code></pre></details></figure>
465
- <figure class="cat-demo"><figcaption>390 (điện thoại): ô nhập 16px, control 44px</figcaption><div class="cat-wide"><iframe title="390 (điện thoại): ô nhập 16px, control 44px" style="width:390px;height:1240px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Configure&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;chat&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot; style=&quot;padding:0&quot;&gt;&lt;aside class=&quot;gemboss-ei gemboss-ei--docked&quot; role=&quot;region&quot; aria-label=&quot;Settings — Hero&quot;&gt;&lt;header class=&quot;gemboss-ei-head&quot;&gt;&lt;span class=&quot;gemboss-ei-title&quot;&gt;Hero&lt;small&gt;hero-banner.default.v1&lt;/small&gt;&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Duplicate section&quot; aria-label=&quot;Duplicate section&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Restore this section to its previous version&quot; aria-label=&quot;Restore this section&quot;&gt;↺&lt;/button&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-ei-tabs&quot; role=&quot;tablist&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;content&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Content&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;design&quot; class=&quot;gemboss-ei-tab on&quot; aria-selected=&quot;true&quot; tabindex=&quot;0&quot;&gt;Design&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;advanced&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Advanced&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-body&quot;&gt;&lt;div class=&quot;gemboss-ei-pane&quot;&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Layout&lt;small class=&quot;gemboss-ei-gh-note&quot;&gt;· all screens&lt;/small&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Content width&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Content width&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;full&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Full&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;contained&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;Contained&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;narrow&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Narrow&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Columns&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Columns&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;2&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;2&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;3&quot; disabled=&quot;&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;3&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;4&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;4&lt;/button&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Disabled while a change is applied.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Spacing&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Padding&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding top&quot; value=&quot;24&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding bottom&quot; value=&quot;24&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Margin&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin top&quot; value=&quot;&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin bottom&quot; value=&quot;&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Empty edges follow desktop.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Color&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-bg&quot;&gt;Background&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Background swatch&quot; value=&quot;#f4efe6&quot;/&gt;&lt;input id=&quot;cat-bg&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;#f4efe6&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-ov&quot;&gt;Overlay&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Overlay swatch&quot; disabled=&quot;&quot; title=&quot;linear-gradient(90deg,#000,#0000) — not a plain 6-digit hex; edit it in the box below&quot; value=&quot;#000000&quot;/&gt;&lt;input id=&quot;cat-ov&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;linear-gradient(90deg,#000,#0000)&quot;/&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;A gradient: the swatch cannot show it, so it is off.&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-op&quot;&gt;Opacity&lt;span class=&quot;gemboss-ei-rangeval&quot; data-suffix=&quot;%&quot;&gt;80%&lt;/span&gt;&lt;/label&gt;&lt;input id=&quot;cat-op&quot; type=&quot;range&quot; class=&quot;gemboss-ei-range&quot; min=&quot;0&quot; max=&quot;100&quot; step=&quot;1&quot; value=&quot;80&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Media&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-img&quot;&gt;Image&lt;/label&gt;&lt;div class=&quot;gemboss-ei-img&quot;&gt;&lt;div class=&quot;gemboss-ei-img-thumb&quot; aria-hidden=&quot;true&quot;&gt;—&lt;/div&gt;&lt;div class=&quot;gemboss-ei-img-ctl&quot;&gt;&lt;input id=&quot;cat-img&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;Paste image URL…&quot; value=&quot;&quot;/&gt;&lt;div class=&quot;gemboss-ei-img-actions&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; aria-expanded=&quot;false&quot;&gt;Library&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; data-gb-image-clear&gt;Clear&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;closed&quot; aria-expanded=&quot;false&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▸&lt;/span&gt;Motion&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Reveal&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Reveal&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;none&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;None&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;fade&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Fade&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;
468
+ <figure class="cat-demo"><figcaption>390 (điện thoại): ô nhập 16px, control 44px</figcaption><div class="cat-wide"><iframe title="390 (điện thoại): ô nhập 16px, control 44px" style="width:390px;height:1240px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;&lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Settings&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;chat&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ec-dock-body&quot; style=&quot;padding:0&quot;&gt;&lt;aside class=&quot;gemboss-ei gemboss-ei--docked&quot; role=&quot;region&quot; aria-label=&quot;Settings — Hero&quot;&gt;&lt;header class=&quot;gemboss-ei-head&quot;&gt;&lt;span class=&quot;gemboss-ei-title&quot;&gt;Hero&lt;small&gt;hero-banner.default.v1&lt;/small&gt;&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Duplicate section&quot; aria-label=&quot;Duplicate section&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-act&quot; title=&quot;Restore this section to its previous version&quot; aria-label=&quot;Restore this section&quot;&gt;↺&lt;/button&gt;&lt;/header&gt;&lt;div class=&quot;gemboss-ei-tabs&quot; role=&quot;tablist&quot;&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;content&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Content&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;design&quot; class=&quot;gemboss-ei-tab on&quot; aria-selected=&quot;true&quot; tabindex=&quot;0&quot;&gt;Design&lt;/button&gt;&lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;advanced&quot; class=&quot;gemboss-ei-tab&quot; aria-selected=&quot;false&quot; tabindex=&quot;-1&quot;&gt;Advanced&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-body&quot;&gt;&lt;div class=&quot;gemboss-ei-pane&quot;&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Layout&lt;small class=&quot;gemboss-ei-gh-note&quot;&gt;· all screens&lt;/small&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Content width&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Content width&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;full&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Full&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;contained&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;Contained&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;narrow&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Narrow&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Columns&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Columns&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;2&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;2&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;3&quot; disabled=&quot;&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;3&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;4&quot; disabled=&quot;&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;4&lt;/button&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Disabled while a change is applied.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Spacing&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Padding&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding top&quot; value=&quot;24&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding bottom&quot; value=&quot;24&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Padding left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Margin&lt;/label&gt;&lt;div class=&quot;gemboss-ei-edgebox&quot;&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin top&quot; value=&quot;&quot;/&gt;&lt;span&gt;T&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin right&quot; value=&quot;&quot;/&gt;&lt;span&gt;R&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;16&quot; aria-label=&quot;Margin bottom&quot; value=&quot;&quot;/&gt;&lt;span&gt;B&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-edge&quot;&gt;&lt;input class=&quot;gemboss-field gemboss-field--narrow gemboss-ei-inp&quot; inputMode=&quot;numeric&quot; placeholder=&quot;0&quot; aria-label=&quot;Margin left&quot; value=&quot;&quot;/&gt;&lt;span&gt;L&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;Empty edges follow desktop.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Color&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-bg&quot;&gt;Background&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Background swatch&quot; value=&quot;#f4efe6&quot;/&gt;&lt;input id=&quot;cat-bg&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;#f4efe6&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-ov&quot;&gt;Overlay&lt;/label&gt;&lt;div class=&quot;gemboss-ei-color&quot;&gt;&lt;input type=&quot;color&quot; class=&quot;gemboss-ei-swatch&quot; aria-label=&quot;Overlay swatch&quot; disabled=&quot;&quot; title=&quot;linear-gradient(90deg,#000,#0000) — not a plain 6-digit hex; edit it in the box below&quot; value=&quot;#000000&quot;/&gt;&lt;input id=&quot;cat-ov&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;#000000 / var(--…)&quot; value=&quot;linear-gradient(90deg,#000,#0000)&quot;/&gt;&lt;/div&gt;&lt;p class=&quot;gemboss-ei-hint&quot;&gt;A gradient: the swatch cannot show it, so it is off.&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-op&quot;&gt;Opacity&lt;span class=&quot;gemboss-ei-rangeval&quot; data-suffix=&quot;%&quot;&gt;80%&lt;/span&gt;&lt;/label&gt;&lt;input id=&quot;cat-op&quot; type=&quot;range&quot; class=&quot;gemboss-ei-range&quot; min=&quot;0&quot; max=&quot;100&quot; step=&quot;1&quot; value=&quot;80&quot;/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;open&quot; aria-expanded=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▾&lt;/span&gt;Media&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label for=&quot;cat-img&quot;&gt;Image&lt;/label&gt;&lt;div class=&quot;gemboss-ei-img&quot;&gt;&lt;div class=&quot;gemboss-ei-img-thumb&quot; aria-hidden=&quot;true&quot;&gt;—&lt;/div&gt;&lt;div class=&quot;gemboss-ei-img-ctl&quot;&gt;&lt;input id=&quot;cat-img&quot; class=&quot;gemboss-field gemboss-ei-inp&quot; placeholder=&quot;Paste image URL…&quot; value=&quot;&quot;/&gt;&lt;div class=&quot;gemboss-ei-img-actions&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; aria-expanded=&quot;false&quot;&gt;Library&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-addchip&quot; data-gb-image-clear&gt;Clear&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-ei-grp&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-gh&quot; data-open=&quot;closed&quot; aria-expanded=&quot;false&quot;&gt;&lt;span class=&quot;gemboss-ei-chev&quot; aria-hidden=&quot;true&quot;&gt;▸&lt;/span&gt;Motion&lt;/button&gt;&lt;div class=&quot;gemboss-ei-fld&quot;&gt;&lt;label&gt;Reveal&lt;/label&gt;&lt;div class=&quot;ui-seg ui-seg--fill gemboss-ei-seg&quot; role=&quot;group&quot; aria-label=&quot;Reveal&quot;&gt;&lt;button type=&quot;button&quot; data-value=&quot;none&quot; aria-pressed=&quot;true&quot; class=&quot;is-text active&quot;&gt;None&lt;/button&gt;&lt;button type=&quot;button&quot; data-value=&quot;fade&quot; aria-pressed=&quot;false&quot; class=&quot;is-text&quot;&gt;Fade&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;&lt;/div&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;script src=&quot;../src/editor-layers-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorLayers()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div class=&quot;gemboss-ec&quot; style=&quot;width:360px;height:1040px&quot;&gt;
466
469
  &lt;div class=&quot;gemboss-ec-tabs&quot; role=&quot;tablist&quot; aria-label=&quot;Editor panels&quot;&gt;
467
- &lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Configure&lt;/button&gt;
470
+ &lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;configure&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;true&quot;&gt;Settings&lt;/button&gt;
468
471
  &lt;button type=&quot;button&quot; role=&quot;tab&quot; data-value=&quot;chat&quot; class=&quot;gemboss-ec-tab&quot; aria-selected=&quot;false&quot;&gt;Chat&lt;/button&gt;
469
472
  &lt;/div&gt;
470
473
  &lt;div class=&quot;gemboss-ec-dock-body&quot; style=&quot;padding:0&quot;&gt;
@@ -608,4 +611,417 @@ import { EditorFrame, EditorTopbar, EditorBack, EditorChatToggle, EditorPaneTabs
608
611
  &lt;/aside&gt;
609
612
  &lt;/div&gt;
610
613
  &lt;/div&gt;</code></pre></details></figure>
614
+ <h2>Lớp và ngăn kéo (0.22.0): LayerList, LayerTree, EditorDrawer</h2>
615
+ <p>Đúng Layers, Page settings của page editor và cây Elements của inspector trong admin. Ở đây bật thêm phần admin chưa dùng: kéo hàng để đổi thứ tự (hoặc Alt+↑ / Alt+↓ trên hàng đang focus), con mắt ẩn / hiện, hàng con thụt vào. Bấm "Layers" hoặc "Page settings" để mở ngăn kéo; ✕ hoặc nền mờ để đóng. Mỗi việc bắn một event <code>gemboss:editor-*</code>.</p>
616
+ <h3>React</h3><pre class="cat-api"><code>import { EditorDrawer, LayerList, LayerTree, SortableLayerList } from &quot;@gemboss/ui/editor&quot;;
617
+
618
+ {layersOpen ? (
619
+ &lt;EditorDrawer side=&quot;left&quot; label=&quot;Page layers&quot; title=&quot;Layers&quot; onClose={() =&gt; setLayersOpen(false)}&gt;
620
+ &lt;SortableLayerList items={sections.map((s) =&gt; ({ id: s.id, title: s.type, subtitle: s.heading, hidden: s.hidden }))}
621
+ selectedId={picked} onSelect={(it) =&gt; setPicked(it.id)}
622
+ onMove={(it, to) =&gt; moveSection(it.id, to)} // drag, or Alt+↑ / Alt+↓; LayerList for a fixed list
623
+ onToggleHidden={(it, hidden) =&gt; setHidden(it.id, hidden)} // the eye; omit to draw none
624
+ actions={(it) =&gt; &lt;button aria-label=&quot;Delete&quot; onClick={() =&gt; remove(it.id)}&gt;✕&lt;/button&gt;} empty=&quot;No sections yet&quot; /&gt;
625
+ &lt;/EditorDrawer&gt;
626
+ ) : null}
627
+ &lt;EditorDrawer title=&quot;Page settings&quot; onClose={close} footer={&lt;button className=&quot;gemboss-settings-save&quot;&gt;Save&lt;/button&gt;}&gt;
628
+ &lt;div className=&quot;gemboss-settings-body&quot;&gt;…&lt;label className=&quot;gemboss-settings-field&quot;&gt;&lt;span&gt;Name&lt;/span&gt;&lt;input className=&quot;gemboss-field&quot; /&gt;&lt;/label&gt;&lt;/div&gt;
629
+ &lt;/EditorDrawer&gt;
630
+ &lt;LayerTree label=&quot;Section elements&quot; rows={flattened} selectedId={node} onSelect={(r) =&gt; setNode(r.id === node ? null : r.id)} actions={(r) =&gt; …} /&gt;</code></pre>
631
+ <figure class="cat-demo"><figcaption>1280: Layers (kéo, ẩn, chọn, thụt cấp), Page settings, cây Elements</figcaption><div class="cat-wide"><iframe title="1280: Layers (kéo, ẩn, chọn, thụt cấp), Page settings, cây Elements" style="width:1280px;height:640px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div style=&quot;padding:16px;display:flex;gap:8px&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-layers&quot;&gt;☰ Layers&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-settings&quot;&gt;Page settings&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;&lt;/div&gt;&lt;aside class=&quot;gemboss-layers&quot; id=&quot;cat-layers&quot; aria-label=&quot;Page layers&quot; hidden&gt;&lt;div class=&quot;gemboss-picker-head&quot;&gt;&lt;span&gt;Layers (6)&lt;/span&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layers-list&quot;&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;hero&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Hero banner&lt;/span&gt;&lt;span class=&quot;gemboss-layer-head&quot;&gt;Spring sale, up to 40% off&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Hero banner&quot; title=&quot;Hide Hero banner&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer is-sel&quot; data-id=&quot;logos&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-current=&quot;true&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Logo cloud&lt;/span&gt;&lt;span class=&quot;gemboss-layer-head&quot;&gt;Trusted by&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Logo cloud&quot; title=&quot;Hide Logo cloud&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefits&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefits&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefits&quot; title=&quot;Hide Benefits&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefit-card&quot; style=&quot;padding-left:20px&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefit card&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefit card&quot; title=&quot;Hide Benefit card&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer is-hidden&quot; data-id=&quot;reviews&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Reviews&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;true&quot; aria-label=&quot;Hide Reviews&quot; title=&quot;Hide Reviews&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;path d=&quot;M2.5 13.5 13.5 2.5&quot; data-gb-slash=&quot;&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;faq&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Faq&lt;/span&gt;&lt;span class=&quot;gemboss-layer-head&quot;&gt;Questions shoppers ask&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Faq&quot; title=&quot;Hide Faq&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;&lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;&lt;/div&gt;&lt;aside class=&quot;gemboss-settings&quot; id=&quot;cat-settings&quot; aria-label=&quot;Page settings&quot; hidden&gt;&lt;div class=&quot;gemboss-picker-head&quot;&gt;&lt;span&gt;Page settings&lt;/span&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-settings-body&quot;&gt;&lt;label class=&quot;gemboss-settings-field&quot;&gt;&lt;span&gt;Page name&lt;/span&gt;&lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale&quot;/&gt;&lt;small&gt;What this page is called in your Pages list.&lt;/small&gt;&lt;/label&gt;&lt;label class=&quot;gemboss-settings-field&quot;&gt;&lt;span&gt;SEO title&lt;/span&gt;&lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale · up to 40% off&quot;/&gt;&lt;small&gt;27/70&lt;/small&gt;&lt;/label&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-settings-foot&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-settings-cancel&quot; data-gb-drawer-close=&quot;&quot;&gt;Cancel&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-settings-save&quot;&gt;Save&lt;/button&gt;&lt;/div&gt;&lt;/aside&gt;&lt;div class=&quot;gemboss-ei gemboss-ei--docked&quot; style=&quot;width:320px;padding:12px&quot;&gt;&lt;ul class=&quot;gemboss-ei-tree&quot; role=&quot;tree&quot; aria-label=&quot;Section elements&quot;&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;1&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;1&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:6px&quot; data-id=&quot;root&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Section&lt;small&gt;root&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Add inside&quot; title=&quot;Add inside&quot;&gt;+&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;product&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product&lt;small&gt;product&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;true&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode on&quot; style=&quot;padding-left:34px&quot; data-id=&quot;title&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot; aria-current=&quot;true&quot;&gt;Product title&lt;small&gt;title&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:34px&quot; data-id=&quot;price&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product price&lt;small&gt;price&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;cta&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Button&lt;small&gt;cta&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;script src=&quot;../src/editor-layers-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorLayers()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div style=&quot;padding:16px;display:flex;gap:8px&quot;&gt;
632
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-layers&quot;&gt;☰ Layers&lt;/button&gt;
633
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-settings&quot;&gt;Page settings&lt;/button&gt;
634
+ &lt;/div&gt;
635
+ &lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;
636
+ &lt;/div&gt;
637
+ &lt;aside class=&quot;gemboss-layers&quot; id=&quot;cat-layers&quot; aria-label=&quot;Page layers&quot; hidden&gt;
638
+ &lt;div class=&quot;gemboss-picker-head&quot;&gt;
639
+ &lt;span&gt;Layers (6)&lt;/span&gt;
640
+ &lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;
641
+ &lt;/div&gt;
642
+ &lt;div class=&quot;gemboss-layers-list&quot;&gt;
643
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;hero&quot; draggable=&quot;true&quot;&gt;
644
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
645
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
646
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Hero banner&lt;/span&gt;
647
+ &lt;span class=&quot;gemboss-layer-head&quot;&gt;Spring sale, up to 40% off&lt;/span&gt;
648
+ &lt;/button&gt;
649
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
650
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Hero banner&quot; title=&quot;Hide Hero banner&quot;&gt;
651
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
652
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
653
+ &lt;/path&gt;
654
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
655
+ &lt;/circle&gt;
656
+ &lt;/svg&gt;
657
+ &lt;/button&gt;
658
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
659
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
660
+ &lt;/div&gt;
661
+ &lt;/div&gt;
662
+ &lt;div class=&quot;gemboss-layer is-sel&quot; data-id=&quot;logos&quot; draggable=&quot;true&quot;&gt;
663
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
664
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-current=&quot;true&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
665
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Logo cloud&lt;/span&gt;
666
+ &lt;span class=&quot;gemboss-layer-head&quot;&gt;Trusted by&lt;/span&gt;
667
+ &lt;/button&gt;
668
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
669
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Logo cloud&quot; title=&quot;Hide Logo cloud&quot;&gt;
670
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
671
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
672
+ &lt;/path&gt;
673
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
674
+ &lt;/circle&gt;
675
+ &lt;/svg&gt;
676
+ &lt;/button&gt;
677
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
678
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
679
+ &lt;/div&gt;
680
+ &lt;/div&gt;
681
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefits&quot; draggable=&quot;true&quot;&gt;
682
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
683
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
684
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefits&lt;/span&gt;
685
+ &lt;/button&gt;
686
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
687
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefits&quot; title=&quot;Hide Benefits&quot;&gt;
688
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
689
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
690
+ &lt;/path&gt;
691
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
692
+ &lt;/circle&gt;
693
+ &lt;/svg&gt;
694
+ &lt;/button&gt;
695
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
696
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
697
+ &lt;/div&gt;
698
+ &lt;/div&gt;
699
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefit-card&quot; style=&quot;padding-left:20px&quot; draggable=&quot;true&quot;&gt;
700
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
701
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
702
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefit card&lt;/span&gt;
703
+ &lt;/button&gt;
704
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
705
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefit card&quot; title=&quot;Hide Benefit card&quot;&gt;
706
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
707
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
708
+ &lt;/path&gt;
709
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
710
+ &lt;/circle&gt;
711
+ &lt;/svg&gt;
712
+ &lt;/button&gt;
713
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
714
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
715
+ &lt;/div&gt;
716
+ &lt;/div&gt;
717
+ &lt;div class=&quot;gemboss-layer is-hidden&quot; data-id=&quot;reviews&quot; draggable=&quot;true&quot;&gt;
718
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
719
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
720
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Reviews&lt;/span&gt;
721
+ &lt;/button&gt;
722
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
723
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;true&quot; aria-label=&quot;Hide Reviews&quot; title=&quot;Hide Reviews&quot;&gt;
724
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
725
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
726
+ &lt;/path&gt;
727
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
728
+ &lt;/circle&gt;
729
+ &lt;path d=&quot;M2.5 13.5 13.5 2.5&quot; data-gb-slash=&quot;&quot;&gt;
730
+ &lt;/path&gt;
731
+ &lt;/svg&gt;
732
+ &lt;/button&gt;
733
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
734
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
735
+ &lt;/div&gt;
736
+ &lt;/div&gt;
737
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;faq&quot; draggable=&quot;true&quot;&gt;
738
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
739
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
740
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Faq&lt;/span&gt;
741
+ &lt;span class=&quot;gemboss-layer-head&quot;&gt;Questions shoppers ask&lt;/span&gt;
742
+ &lt;/button&gt;
743
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
744
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Faq&quot; title=&quot;Hide Faq&quot;&gt;
745
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
746
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
747
+ &lt;/path&gt;
748
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
749
+ &lt;/circle&gt;
750
+ &lt;/svg&gt;
751
+ &lt;/button&gt;
752
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
753
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
754
+ &lt;/div&gt;
755
+ &lt;/div&gt;
756
+ &lt;/div&gt;
757
+ &lt;/aside&gt;
758
+ &lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;
759
+ &lt;/div&gt;
760
+ &lt;aside class=&quot;gemboss-settings&quot; id=&quot;cat-settings&quot; aria-label=&quot;Page settings&quot; hidden&gt;
761
+ &lt;div class=&quot;gemboss-picker-head&quot;&gt;
762
+ &lt;span&gt;Page settings&lt;/span&gt;
763
+ &lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;
764
+ &lt;/div&gt;
765
+ &lt;div class=&quot;gemboss-settings-body&quot;&gt;
766
+ &lt;label class=&quot;gemboss-settings-field&quot;&gt;
767
+ &lt;span&gt;Page name&lt;/span&gt;
768
+ &lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale&quot;/&gt;
769
+ &lt;small&gt;What this page is called in your Pages list.&lt;/small&gt;
770
+ &lt;/label&gt;
771
+ &lt;label class=&quot;gemboss-settings-field&quot;&gt;
772
+ &lt;span&gt;SEO title&lt;/span&gt;
773
+ &lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale · up to 40% off&quot;/&gt;
774
+ &lt;small&gt;27/70&lt;/small&gt;
775
+ &lt;/label&gt;
776
+ &lt;/div&gt;
777
+ &lt;div class=&quot;gemboss-settings-foot&quot;&gt;
778
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-settings-cancel&quot; data-gb-drawer-close=&quot;&quot;&gt;Cancel&lt;/button&gt;
779
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-settings-save&quot;&gt;Save&lt;/button&gt;
780
+ &lt;/div&gt;
781
+ &lt;/aside&gt;
782
+ &lt;div class=&quot;gemboss-ei gemboss-ei--docked&quot; style=&quot;width:320px;padding:12px&quot;&gt;
783
+ &lt;ul class=&quot;gemboss-ei-tree&quot; role=&quot;tree&quot; aria-label=&quot;Section elements&quot;&gt;
784
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;1&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;1&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:6px&quot; data-id=&quot;root&quot;&gt;
785
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Section&lt;small&gt;root&lt;/small&gt;
786
+ &lt;/button&gt;
787
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
788
+ &lt;button type=&quot;button&quot; aria-label=&quot;Add inside&quot; title=&quot;Add inside&quot;&gt;+&lt;/button&gt;
789
+ &lt;/span&gt;
790
+ &lt;/li&gt;
791
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;product&quot;&gt;
792
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product&lt;small&gt;product&lt;/small&gt;
793
+ &lt;/button&gt;
794
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
795
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
796
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
797
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
798
+ &lt;/span&gt;
799
+ &lt;/li&gt;
800
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;true&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode on&quot; style=&quot;padding-left:34px&quot; data-id=&quot;title&quot;&gt;
801
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot; aria-current=&quot;true&quot;&gt;Product title&lt;small&gt;title&lt;/small&gt;
802
+ &lt;/button&gt;
803
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
804
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
805
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
806
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
807
+ &lt;/span&gt;
808
+ &lt;/li&gt;
809
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:34px&quot; data-id=&quot;price&quot;&gt;
810
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product price&lt;small&gt;price&lt;/small&gt;
811
+ &lt;/button&gt;
812
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
813
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
814
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
815
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
816
+ &lt;/span&gt;
817
+ &lt;/li&gt;
818
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;cta&quot;&gt;
819
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Button&lt;small&gt;cta&lt;/small&gt;
820
+ &lt;/button&gt;
821
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
822
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
823
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
824
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
825
+ &lt;/span&gt;
826
+ &lt;/li&gt;
827
+ &lt;/ul&gt;
828
+ &lt;/div&gt;</code></pre></details></figure>
829
+ <figure class="cat-demo"><figcaption>390 (điện thoại)</figcaption><div class="cat-wide"><iframe title="390 (điện thoại)" style="width:390px;height:900px" srcdoc="&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charset=&quot;utf-8&quot;&gt;&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../gemboss-ui.css&quot;&gt;&lt;link rel=&quot;stylesheet&quot; href=&quot;../src/editor.css&quot;&gt;&lt;/head&gt;&lt;body&gt;&lt;div style=&quot;padding:16px;display:flex;gap:8px&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-layers&quot;&gt;☰ Layers&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-settings&quot;&gt;Page settings&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;&lt;/div&gt;&lt;aside class=&quot;gemboss-layers&quot; id=&quot;cat-layers&quot; aria-label=&quot;Page layers&quot; hidden&gt;&lt;div class=&quot;gemboss-picker-head&quot;&gt;&lt;span&gt;Layers (6)&lt;/span&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layers-list&quot;&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;hero&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Hero banner&lt;/span&gt;&lt;span class=&quot;gemboss-layer-head&quot;&gt;Spring sale, up to 40% off&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Hero banner&quot; title=&quot;Hide Hero banner&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer is-sel&quot; data-id=&quot;logos&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-current=&quot;true&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Logo cloud&lt;/span&gt;&lt;span class=&quot;gemboss-layer-head&quot;&gt;Trusted by&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Logo cloud&quot; title=&quot;Hide Logo cloud&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefits&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefits&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefits&quot; title=&quot;Hide Benefits&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefit-card&quot; style=&quot;padding-left:20px&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefit card&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefit card&quot; title=&quot;Hide Benefit card&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer is-hidden&quot; data-id=&quot;reviews&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Reviews&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;true&quot; aria-label=&quot;Hide Reviews&quot; title=&quot;Hide Reviews&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;path d=&quot;M2.5 13.5 13.5 2.5&quot; data-gb-slash=&quot;&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-layer&quot; data-id=&quot;faq&quot; draggable=&quot;true&quot;&gt;&lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;&lt;span class=&quot;gemboss-layer-type&quot;&gt;Faq&lt;/span&gt;&lt;span class=&quot;gemboss-layer-head&quot;&gt;Questions shoppers ask&lt;/span&gt;&lt;/button&gt;&lt;div class=&quot;gemboss-layer-acts&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Faq&quot; title=&quot;Hide Faq&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;&lt;/path&gt;&lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;&lt;/circle&gt;&lt;/svg&gt;&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;&lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;&lt;/div&gt;&lt;aside class=&quot;gemboss-settings&quot; id=&quot;cat-settings&quot; aria-label=&quot;Page settings&quot; hidden&gt;&lt;div class=&quot;gemboss-picker-head&quot;&gt;&lt;span&gt;Page settings&lt;/span&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-settings-body&quot;&gt;&lt;label class=&quot;gemboss-settings-field&quot;&gt;&lt;span&gt;Page name&lt;/span&gt;&lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale&quot;/&gt;&lt;small&gt;What this page is called in your Pages list.&lt;/small&gt;&lt;/label&gt;&lt;label class=&quot;gemboss-settings-field&quot;&gt;&lt;span&gt;SEO title&lt;/span&gt;&lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale · up to 40% off&quot;/&gt;&lt;small&gt;27/70&lt;/small&gt;&lt;/label&gt;&lt;/div&gt;&lt;div class=&quot;gemboss-settings-foot&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-settings-cancel&quot; data-gb-drawer-close=&quot;&quot;&gt;Cancel&lt;/button&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-settings-save&quot;&gt;Save&lt;/button&gt;&lt;/div&gt;&lt;/aside&gt;&lt;div class=&quot;gemboss-ei gemboss-ei--docked&quot; style=&quot;width:320px;padding:12px&quot;&gt;&lt;ul class=&quot;gemboss-ei-tree&quot; role=&quot;tree&quot; aria-label=&quot;Section elements&quot;&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;1&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;1&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:6px&quot; data-id=&quot;root&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Section&lt;small&gt;root&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Add inside&quot; title=&quot;Add inside&quot;&gt;+&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;product&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product&lt;small&gt;product&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;true&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode on&quot; style=&quot;padding-left:34px&quot; data-id=&quot;title&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot; aria-current=&quot;true&quot;&gt;Product title&lt;small&gt;title&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:34px&quot; data-id=&quot;price&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product price&lt;small&gt;price&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;cta&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Button&lt;small&gt;cta&lt;/small&gt;&lt;/button&gt;&lt;span class=&quot;gemboss-ei-tacts&quot;&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;&lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;script src=&quot;../src/kit-plain.js&quot;&gt;&lt;/script&gt;&lt;script src=&quot;../src/editor-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorFrame()&lt;/script&gt;&lt;script&gt;gembossUI.initEditorPanel()&lt;/script&gt;&lt;script src=&quot;../src/editor-layers-plain.js&quot;&gt;&lt;/script&gt;&lt;script&gt;gembossUI.initEditorLayers()&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;"></iframe></div><details class="cat-code"><summary>Markup</summary><pre><code>&lt;div style=&quot;padding:16px;display:flex;gap:8px&quot;&gt;
830
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-layers&quot;&gt;☰ Layers&lt;/button&gt;
831
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-editor-tb-ghost&quot; data-gb-drawer=&quot;cat-settings&quot;&gt;Page settings&lt;/button&gt;
832
+ &lt;/div&gt;
833
+ &lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;
834
+ &lt;/div&gt;
835
+ &lt;aside class=&quot;gemboss-layers&quot; id=&quot;cat-layers&quot; aria-label=&quot;Page layers&quot; hidden&gt;
836
+ &lt;div class=&quot;gemboss-picker-head&quot;&gt;
837
+ &lt;span&gt;Layers (6)&lt;/span&gt;
838
+ &lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;
839
+ &lt;/div&gt;
840
+ &lt;div class=&quot;gemboss-layers-list&quot;&gt;
841
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;hero&quot; draggable=&quot;true&quot;&gt;
842
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
843
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
844
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Hero banner&lt;/span&gt;
845
+ &lt;span class=&quot;gemboss-layer-head&quot;&gt;Spring sale, up to 40% off&lt;/span&gt;
846
+ &lt;/button&gt;
847
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
848
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Hero banner&quot; title=&quot;Hide Hero banner&quot;&gt;
849
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
850
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
851
+ &lt;/path&gt;
852
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
853
+ &lt;/circle&gt;
854
+ &lt;/svg&gt;
855
+ &lt;/button&gt;
856
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
857
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
858
+ &lt;/div&gt;
859
+ &lt;/div&gt;
860
+ &lt;div class=&quot;gemboss-layer is-sel&quot; data-id=&quot;logos&quot; draggable=&quot;true&quot;&gt;
861
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
862
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-current=&quot;true&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
863
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Logo cloud&lt;/span&gt;
864
+ &lt;span class=&quot;gemboss-layer-head&quot;&gt;Trusted by&lt;/span&gt;
865
+ &lt;/button&gt;
866
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
867
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Logo cloud&quot; title=&quot;Hide Logo cloud&quot;&gt;
868
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
869
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
870
+ &lt;/path&gt;
871
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
872
+ &lt;/circle&gt;
873
+ &lt;/svg&gt;
874
+ &lt;/button&gt;
875
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
876
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
877
+ &lt;/div&gt;
878
+ &lt;/div&gt;
879
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefits&quot; draggable=&quot;true&quot;&gt;
880
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
881
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
882
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefits&lt;/span&gt;
883
+ &lt;/button&gt;
884
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
885
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefits&quot; title=&quot;Hide Benefits&quot;&gt;
886
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
887
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
888
+ &lt;/path&gt;
889
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
890
+ &lt;/circle&gt;
891
+ &lt;/svg&gt;
892
+ &lt;/button&gt;
893
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
894
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
895
+ &lt;/div&gt;
896
+ &lt;/div&gt;
897
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;benefit-card&quot; style=&quot;padding-left:20px&quot; draggable=&quot;true&quot;&gt;
898
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
899
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
900
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Benefit card&lt;/span&gt;
901
+ &lt;/button&gt;
902
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
903
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Benefit card&quot; title=&quot;Hide Benefit card&quot;&gt;
904
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
905
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
906
+ &lt;/path&gt;
907
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
908
+ &lt;/circle&gt;
909
+ &lt;/svg&gt;
910
+ &lt;/button&gt;
911
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
912
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
913
+ &lt;/div&gt;
914
+ &lt;/div&gt;
915
+ &lt;div class=&quot;gemboss-layer is-hidden&quot; data-id=&quot;reviews&quot; draggable=&quot;true&quot;&gt;
916
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
917
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
918
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Reviews&lt;/span&gt;
919
+ &lt;/button&gt;
920
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
921
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;true&quot; aria-label=&quot;Hide Reviews&quot; title=&quot;Hide Reviews&quot;&gt;
922
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
923
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
924
+ &lt;/path&gt;
925
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
926
+ &lt;/circle&gt;
927
+ &lt;path d=&quot;M2.5 13.5 13.5 2.5&quot; data-gb-slash=&quot;&quot;&gt;
928
+ &lt;/path&gt;
929
+ &lt;/svg&gt;
930
+ &lt;/button&gt;
931
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
932
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
933
+ &lt;/div&gt;
934
+ &lt;/div&gt;
935
+ &lt;div class=&quot;gemboss-layer&quot; data-id=&quot;faq&quot; draggable=&quot;true&quot;&gt;
936
+ &lt;span class=&quot;gemboss-layer-grip&quot; aria-hidden=&quot;true&quot;&gt;⋮⋮&lt;/span&gt;
937
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-main&quot; aria-keyshortcuts=&quot;Alt+ArrowUp Alt+ArrowDown&quot;&gt;
938
+ &lt;span class=&quot;gemboss-layer-type&quot;&gt;Faq&lt;/span&gt;
939
+ &lt;span class=&quot;gemboss-layer-head&quot;&gt;Questions shoppers ask&lt;/span&gt;
940
+ &lt;/button&gt;
941
+ &lt;div class=&quot;gemboss-layer-acts&quot;&gt;
942
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-eye&quot; aria-pressed=&quot;false&quot; aria-label=&quot;Hide Faq&quot; title=&quot;Hide Faq&quot;&gt;
943
+ &lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 16 16&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;1.4&quot; aria-hidden=&quot;true&quot;&gt;
944
+ &lt;path d=&quot;M1.5 8s2.4-4.5 6.5-4.5S14.5 8 14.5 8s-2.4 4.5-6.5 4.5S1.5 8 1.5 8Z&quot;&gt;
945
+ &lt;/path&gt;
946
+ &lt;circle cx=&quot;8&quot; cy=&quot;8&quot; r=&quot;2&quot;&gt;
947
+ &lt;/circle&gt;
948
+ &lt;/svg&gt;
949
+ &lt;/button&gt;
950
+ &lt;button type=&quot;button&quot; aria-label=&quot;Duplicate&quot; title=&quot;Duplicate&quot;&gt;⧉&lt;/button&gt;
951
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-layer-del&quot; aria-label=&quot;Delete&quot; title=&quot;Delete&quot;&gt;✕&lt;/button&gt;
952
+ &lt;/div&gt;
953
+ &lt;/div&gt;
954
+ &lt;/div&gt;
955
+ &lt;/aside&gt;
956
+ &lt;div class=&quot;gemboss-picker-backdrop&quot; hidden&gt;
957
+ &lt;/div&gt;
958
+ &lt;aside class=&quot;gemboss-settings&quot; id=&quot;cat-settings&quot; aria-label=&quot;Page settings&quot; hidden&gt;
959
+ &lt;div class=&quot;gemboss-picker-head&quot;&gt;
960
+ &lt;span&gt;Page settings&lt;/span&gt;
961
+ &lt;button type=&quot;button&quot; aria-label=&quot;Close&quot;&gt;✕&lt;/button&gt;
962
+ &lt;/div&gt;
963
+ &lt;div class=&quot;gemboss-settings-body&quot;&gt;
964
+ &lt;label class=&quot;gemboss-settings-field&quot;&gt;
965
+ &lt;span&gt;Page name&lt;/span&gt;
966
+ &lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale&quot;/&gt;
967
+ &lt;small&gt;What this page is called in your Pages list.&lt;/small&gt;
968
+ &lt;/label&gt;
969
+ &lt;label class=&quot;gemboss-settings-field&quot;&gt;
970
+ &lt;span&gt;SEO title&lt;/span&gt;
971
+ &lt;input class=&quot;gemboss-field&quot; value=&quot;Spring sale · up to 40% off&quot;/&gt;
972
+ &lt;small&gt;27/70&lt;/small&gt;
973
+ &lt;/label&gt;
974
+ &lt;/div&gt;
975
+ &lt;div class=&quot;gemboss-settings-foot&quot;&gt;
976
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-settings-cancel&quot; data-gb-drawer-close=&quot;&quot;&gt;Cancel&lt;/button&gt;
977
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-settings-save&quot;&gt;Save&lt;/button&gt;
978
+ &lt;/div&gt;
979
+ &lt;/aside&gt;
980
+ &lt;div class=&quot;gemboss-ei gemboss-ei--docked&quot; style=&quot;width:320px;padding:12px&quot;&gt;
981
+ &lt;ul class=&quot;gemboss-ei-tree&quot; role=&quot;tree&quot; aria-label=&quot;Section elements&quot;&gt;
982
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;1&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;1&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:6px&quot; data-id=&quot;root&quot;&gt;
983
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Section&lt;small&gt;root&lt;/small&gt;
984
+ &lt;/button&gt;
985
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
986
+ &lt;button type=&quot;button&quot; aria-label=&quot;Add inside&quot; title=&quot;Add inside&quot;&gt;+&lt;/button&gt;
987
+ &lt;/span&gt;
988
+ &lt;/li&gt;
989
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;product&quot;&gt;
990
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product&lt;small&gt;product&lt;/small&gt;
991
+ &lt;/button&gt;
992
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
993
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
994
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
995
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
996
+ &lt;/span&gt;
997
+ &lt;/li&gt;
998
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;true&quot; aria-posinset=&quot;1&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode on&quot; style=&quot;padding-left:34px&quot; data-id=&quot;title&quot;&gt;
999
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot; aria-current=&quot;true&quot;&gt;Product title&lt;small&gt;title&lt;/small&gt;
1000
+ &lt;/button&gt;
1001
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
1002
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
1003
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
1004
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
1005
+ &lt;/span&gt;
1006
+ &lt;/li&gt;
1007
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;3&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:34px&quot; data-id=&quot;price&quot;&gt;
1008
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Product price&lt;small&gt;price&lt;/small&gt;
1009
+ &lt;/button&gt;
1010
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
1011
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
1012
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
1013
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
1014
+ &lt;/span&gt;
1015
+ &lt;/li&gt;
1016
+ &lt;li role=&quot;treeitem&quot; aria-level=&quot;2&quot; aria-selected=&quot;false&quot; aria-posinset=&quot;2&quot; aria-setsize=&quot;2&quot; class=&quot;gemboss-ei-tnode&quot; style=&quot;padding-left:20px&quot; data-id=&quot;cta&quot;&gt;
1017
+ &lt;button type=&quot;button&quot; class=&quot;gemboss-ei-tname&quot;&gt;Button&lt;small&gt;cta&lt;/small&gt;
1018
+ &lt;/button&gt;
1019
+ &lt;span class=&quot;gemboss-ei-tacts&quot;&gt;
1020
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move up&quot; title=&quot;Move up&quot;&gt;↑&lt;/button&gt;
1021
+ &lt;button type=&quot;button&quot; aria-label=&quot;Move down&quot; title=&quot;Move down&quot;&gt;↓&lt;/button&gt;
1022
+ &lt;button type=&quot;button&quot; aria-label=&quot;Remove&quot; title=&quot;Remove&quot;&gt;✕&lt;/button&gt;
1023
+ &lt;/span&gt;
1024
+ &lt;/li&gt;
1025
+ &lt;/ul&gt;
1026
+ &lt;/div&gt;</code></pre></details></figure>
611
1027
  </div></body></html>