efficient-web-builder 0.8.1 → 0.9.0

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 (43) hide show
  1. package/CHANGELOG.md +80 -1
  2. package/README.md +24 -5
  3. package/dist/chunks/{EditorPreviewCheckout-RALICX2M.js → EditorPreviewCheckout-YVSO4HE3.js} +3 -3
  4. package/dist/chunks/PreviewFooter-34YJU76X.js +1 -0
  5. package/dist/chunks/SectionEditorShell-CVWJ6DSU.js +1 -0
  6. package/dist/chunks/{SiteEditorProvider-4NZYBEVE.js → SiteEditorProvider-ECGZVKLG.js} +1 -1
  7. package/dist/chunks/StorefrontEditorChrome-YKEMJT3Z.js +1 -0
  8. package/dist/chunks/chunk-2XX3N727.js +153 -0
  9. package/dist/chunks/chunk-6CP4D6VJ.js +1 -0
  10. package/dist/chunks/chunk-7QXLVNFD.js +1 -0
  11. package/dist/chunks/chunk-EKKAVQJX.js +1 -0
  12. package/dist/chunks/chunk-FU5UZ4UY.js +1 -0
  13. package/dist/chunks/chunk-J5WPJJCW.js +2 -0
  14. package/dist/chunks/{chunk-6VNEBJKI.js → chunk-MEIUD5LJ.js} +1 -1
  15. package/dist/chunks/chunk-N3IM4XBG.js +1 -0
  16. package/dist/chunks/chunk-RRHBLOH4.js +1 -0
  17. package/dist/chunks/chunk-TUB4O4RZ.js +15 -0
  18. package/dist/chunks/chunk-UM3P3PXW.js +230 -0
  19. package/dist/chunks/chunk-XQGZKQII.js +1 -0
  20. package/dist/chunks/fitment-data-6NXSKODX.js +1 -0
  21. package/dist/chunks/render-client-VMLB4BTY.js +1 -0
  22. package/dist/editor.css +1 -1
  23. package/dist/index.d.ts +184 -4
  24. package/dist/index.js +908 -644
  25. package/dist/links.js +1 -1
  26. package/package.json +2 -2
  27. package/dist/chunks/PreviewFooter-SNJQZ6JZ.js +0 -1
  28. package/dist/chunks/SectionEditorShell-U5FUJW2M.js +0 -1
  29. package/dist/chunks/StorefrontEditorChrome-6OQOFCL6.js +0 -1
  30. package/dist/chunks/chunk-4MT74TMP.js +0 -1
  31. package/dist/chunks/chunk-764WH3TY.js +0 -11
  32. package/dist/chunks/chunk-CZ46NWN5.js +0 -230
  33. package/dist/chunks/chunk-DN65SLZM.js +0 -1
  34. package/dist/chunks/chunk-KZIT3J33.js +0 -1
  35. package/dist/chunks/chunk-RTCXXI5U.js +0 -143
  36. package/dist/chunks/chunk-TX7ND7AF.js +0 -1
  37. package/dist/chunks/chunk-WQ7W4AXL.js +0 -15
  38. package/dist/chunks/chunk-XMRSKZIR.js +0 -2
  39. package/dist/chunks/fitment-data-6EHBA26C.js +0 -1
  40. package/dist/chunks/render-client-ISZ5CGAI.js +0 -1
  41. /package/dist/chunks/{chunk-RTCXXI5U.js.LEGAL.txt → chunk-2XX3N727.js.LEGAL.txt} +0 -0
  42. /package/dist/chunks/{chunk-UBYBQ3KR.js → chunk-HVOO2GNE.js} +0 -0
  43. /package/dist/chunks/{chunk-WQ7W4AXL.js.LEGAL.txt → chunk-TUB4O4RZ.js.LEGAL.txt} +0 -0
package/dist/editor.css CHANGED
@@ -1 +1 @@
1
- .sf-embedded{height:100%;min-height:0}.sf-embedded .sf-editor{height:100%}.sf-editor{--sf-accent: var(--es-accent);--sf-accent-tint: var(--es-accent-tint);--sf-accent-tint-strong: var(--es-accent-tint-strong);--sf-accent-text: var(--es-accent-text);--sf-accent-ring: var(--es-accent-ring);--sf-accent-shadow: var(--es-accent-shadow);--sf-on-accent: var(--es-on-accent);--sf-app-bg: var(--es-app-bg);--sf-preview-bg: var(--es-preview-bg);--sf-panel: var(--es-panel);--sf-raised: var(--es-raised);--sf-frame-bg: var(--es-frame-bg);--sf-hover: var(--es-hover);--sf-hatch: var(--es-hatch);--sf-addcard-veil: var(--es-addcard-veil);--sf-field-bg: var(--es-field-bg);--sf-track-bg: var(--es-track-bg);--sf-input-border: var(--es-input-border);--sf-field-text: var(--es-field-text);--sf-field-placeholder: var(--es-field-placeholder);--sf-knob: var(--es-knob);--sf-text: var(--es-text);--sf-text-strong: var(--es-text-strong);--sf-text-secondary: var(--es-text-secondary);--sf-muted: var(--es-muted);--sf-icon: var(--es-icon);--sf-disabled: var(--es-disabled);--sf-divider: var(--es-divider);--sf-line: var(--es-line);--sf-btn-border: var(--es-btn-border);--sf-btn-text: var(--es-btn-text);--sf-chip-bg: var(--es-chip-bg);--sf-chip-fg: var(--es-chip-fg);--sf-device-border: var(--es-device-border);--sf-toast-bg: var(--es-toast-bg);--sf-scrollbar: var(--es-scrollbar);--sf-scrollbar-hover: var(--es-scrollbar-hover);--sf-danger: var(--es-danger);--sf-danger-strong: var(--es-danger-strong);--sf-danger-tint: var(--es-danger-tint);--sf-warning: var(--es-warning);--sf-preview-tint: var(--es-preview-tint);--sf-panel-radius: 0;--sf-row-radius: var(--es-row-radius);--sf-field-radius: var(--es-field-radius);--sf-panel-gap: 0px;--sf-topbar-h: 52px;--sf-content-x: var(--sf-panel-gap);--sf-panel-shadow: none;--sf-font: var(--es-font);width:100%;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;position:relative;background:var(--sf-app-bg);color:var(--sf-text);font-family:var(--sf-font);font-size:14px;-webkit-font-smoothing:antialiased}.sf-editor *,.sf-editor *:before,.sf-editor *:after{box-sizing:border-box}.sf-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.sf-scroll::-webkit-scrollbar{width:11px;height:11px}.sf-scroll::-webkit-scrollbar-thumb{background:var(--sf-scrollbar);border-radius:8px;border:3px solid transparent;background-clip:content-box}.sf-scroll::-webkit-scrollbar-thumb:hover{background:var(--sf-scrollbar-hover);background-clip:content-box}.sf-scroll::-webkit-scrollbar-track{background:transparent}.sf-actions-slot>button{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--sf-btn-border);background:var(--sf-panel);border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;color:var(--sf-btn-text)}.sf-actions-slot>button:hover{background:var(--sf-hover)}.sf-section-bar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 10px}.sf-body{flex:1;display:flex;gap:var(--sf-panel-gap);padding:var(--sf-panel-gap);min-height:0;position:relative}.sf-panel-head{display:flex;align-items:center;justify-content:space-between;padding:13px 14px 11px;flex:none}.sf-panel-title{font-size:13px;font-weight:600;color:var(--sf-text);margin:0}.sf-panel-heading{display:flex;align-items:baseline;gap:6px;min-width:0}.sf-panel-site{margin:0;min-width:0;overflow:hidden;font-size:11px;font-weight:500;color:var(--sf-muted);white-space:nowrap;text-overflow:ellipsis}.sf-panel-site:before{content:"\b7";margin-right:6px}.sf-panel-title--btn{appearance:none;border:0;background:transparent;font-family:inherit;cursor:pointer;text-align:left;padding:5px 8px;margin:-5px -8px;border-radius:var(--sf-row-radius);transition:background .12s}.sf-panel-title--btn:hover{background:var(--sf-hover)}.sf-panel-title--btn.is-selected{color:var(--sf-accent-text);background:var(--sf-accent-tint);box-shadow:inset 2px 0 0 var(--sf-accent)}.sf-x{width:24px;height:24px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--sf-muted);display:flex;align-items:center;justify-content:center;font-size:14px}.sf-x:hover{background:var(--sf-hover)}.sf-tree{flex:1;overflow-y:auto;padding:0 11px 10px 8px;--es-rhythm-group: 10px;--es-rhythm-between: 6px}.sf-tree>.sf-row+.sf-row,.sf-tree>.sf-subtree+.sf-row{margin-top:var(--es-rhythm-between)}.sf-row{display:flex;align-items:center;gap:8px;padding:7px 11px;border-radius:var(--sf-row-radius);cursor:pointer;transition:background .12s;position:relative;--sf-row-scrim: var(--sf-panel)}.sf-row:hover{--sf-row-scrim: var(--sf-hover);background:var(--sf-row-scrim)}.sf-row.is-selected{--sf-row-scrim: var(--sf-accent-tint);background:var(--sf-row-scrim);box-shadow:inset 2px 0 0 var(--sf-accent)}.sf-row.is-selected .sf-chip{background:var(--sf-raised);color:var(--sf-accent)}.sf-row.is-selected .sf-row-name{color:var(--sf-accent-text);font-weight:600}.sf-chip{width:18px;height:18px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:12px;flex:none;background:transparent;color:var(--sf-icon)}.sf-row-name{flex:1;font-size:12px;font-weight:500;color:var(--sf-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-gap{position:relative;display:block;width:100%;height:9px;margin:-2px 0;padding:0;border:0;background:transparent;cursor:pointer;z-index:1}.sf-gap-line{position:absolute;left:12px;right:12px;top:50%;height:2px;transform:translateY(-50%);border-radius:2px;background:var(--sf-accent);opacity:0;transition:opacity .12s}.sf-gap-plus{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.7);width:18px;height:18px;border-radius:50%;background:var(--sf-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;box-shadow:0 0 0 2px var(--sf-panel);opacity:0;transition:opacity .12s,transform .12s}.sf-gap:hover .sf-gap-line,.sf-gap:focus-visible .sf-gap-line{opacity:1}.sf-gap:hover .sf-gap-plus,.sf-gap:focus-visible .sf-gap-plus{opacity:1;transform:translate(-50%,-50%) scale(1)}.sf-subtree{margin:var(--es-rhythm-between) 0 var(--es-rhythm-between) 16px;padding-left:9px;border-left:1px solid var(--sf-line);display:flex;flex-direction:column;gap:var(--es-rhythm-between)}.sf-add-card{display:flex;align-items:center;gap:8px;width:100%;padding:6px 9px;border:none;background:transparent;border-radius:8px;cursor:pointer;color:var(--sf-accent);font-size:12px;font-weight:500}.sf-add-card:hover{background:var(--sf-accent-tint)}.sf-add-card .sf-plus{width:18px;height:18px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:13px;flex:none;background:var(--sf-accent-tint)}.sf-blockmenu{display:flex;flex-direction:column;gap:1px;margin:2px 0 4px;padding:4px;border:1px solid var(--sf-line);border-radius:8px;background:var(--sf-panel);box-shadow:0 6px 18px #00000014}.sf-blockmenu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--sf-text, var(--sf-text));font-size:12.5px;text-align:left}.sf-blockmenu-item:hover{background:var(--sf-accent-tint);color:var(--sf-accent)}.sf-menugroup-head{display:flex;align-items:baseline;gap:8px;padding:9px 9px 5px}.sf-menugroup-head:first-child{padding-top:4px}.sf-menugroup-title{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--sf-muted)}.sf-menugroup-count{font-size:11px;color:var(--sf-field-placeholder)}.sf-addside{flex:1;min-height:0;overflow-y:auto;padding:0 14px 16px}.sf-addside .es-add-tile-cover{border:1px solid #edeff4}.sf-media-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sf-addside-sitewide{display:flex;align-items:center;gap:10px;margin-top:16px;padding:10px;border:1px solid var(--sf-divider);border-radius:10px}.sf-addside-sitewide-glyph{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--sf-hover);color:var(--sf-muted)}.sf-addside-sitewide-name{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:0;border:0;background:none;font:600 12.5px/1.3 var(--sf-font);color:var(--sf-text);text-align:left;cursor:pointer}.sf-addside-sitewide-name:hover{color:var(--sf-accent)}.sf-addside-sitewide-desc{font-weight:400;font-size:11.5px;color:var(--sf-muted)}.sf-box-footer-switch{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:18px 0 6px;padding:12px;border:1px solid var(--sf-divider);border-radius:10px}.sf-box-footer-switch-text{margin:0;font-size:12px;line-height:1.45;color:var(--sf-muted)}.sf-box-footer-switch-row{display:flex;gap:8px}.sf-thumb{--sf-thumb-card: #ffffff;--sf-thumb-thumb-bg: #fcfdff;--sf-thumb-thumb-border: #edeff4;--sf-thumb-block: #e9ebf0;--sf-thumb-bar-light: #dde1e8;--sf-thumb-bar-dark: #c3c9d3;--sf-thumb-hatch1: #e2e5ec;--sf-thumb-hatch2: #edeff4;--sf-thumb-accent: #2f6bed;--sf-thumb-accent-tint: #e6edfd;--sf-thumb-border: #e7eaf1;--sf-thumb-ink: #1b2027;--sf-thumb-ink-2: #39434f;--sf-thumb-ink-soft: #2c3540;--sf-thumb-ink-soft-2: #4a5763;--sf-thumb-paper: #f4f1ed;--sf-thumb-paper-2: #cfc8bf;--sf-thumb-warm: #e7c26a;--sf-thumb-rust: #b4652a;--sf-thumb-on-ink: #ffffff;--sf-thumb-scene-text: #171412;--sf-thumb-scene-muted: #6b7280;--sf-thumb-scene-rule: #eceef1;--sf-thumb-mark-1: #c8ccd1;--sf-thumb-mark-2: #8e9aa6;--sf-thumb-scrim: rgba(0, 0, 0, .55)}@keyframes sf-thumb-marquee{0%{transform:translate(0)}to{transform:translate(-33.34%)}}.sf-cleardlg-veil{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--sf-addcard-veil)}.sf-cleardlg{width:100%;max-width:360px;box-sizing:border-box;padding:20px;border:1px solid var(--sf-line);border-radius:9px;background:var(--sf-panel);color:var(--sf-text);box-shadow:0 20px 50px var(--sf-accent-shadow)}.sf-cleardlg-title{margin:0;font-size:15px;font-weight:600;color:var(--sf-text)}.sf-cleardlg-body{margin:8px 0 0;font-size:13px;line-height:1.6;color:var(--sf-muted)}.sf-cleardlg-final{margin:8px 0 0;font-size:13px;line-height:1.6;font-weight:500;color:var(--sf-text)}.sf-cleardlg-btns{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.sf-cleardlg-btn{font-family:var(--sf-font);font-size:13px;padding:7px 14px;border-radius:var(--sf-field-radius);border:1px solid var(--sf-btn-border);background:var(--sf-panel);color:var(--sf-btn-text);cursor:pointer}.sf-cleardlg-btn:hover{background:var(--sf-hover)}.sf-cleardlg-btn--danger{font-weight:600;border-color:var(--sf-danger-strong);background:var(--sf-danger-strong);color:var(--sf-on-accent)}.sf-cleardlg-btn--danger:hover{filter:brightness(.94)}.sf-addcard-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--sf-addcard-veil);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);opacity:0;transition:opacity .15s;pointer-events:none}.sf-addcard:hover .sf-addcard-overlay,.sf-addcard:focus-visible .sf-addcard-overlay{opacity:1}.sf-addcard-addbtn{display:inline-flex;align-items:center;gap:6px;background:var(--sf-accent);color:#fff;border-radius:9px;padding:8px 14px;font-size:12.5px;font-weight:600;box-shadow:0 4px 12px var(--sf-accent-shadow)}.sf-addcard-plus{font-size:15px;line-height:1;margin-top:-1px}.sf-addcard-meta{display:flex;flex-direction:column;gap:2px;padding:0 2px 2px}.sf-addcard-name{font-size:12.5px;font-weight:600;color:var(--sf-text)}.sf-addcard-desc{font-size:10.5px;line-height:1.35;color:var(--sf-muted)}.sf-addempty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:64px 20px;text-align:center;color:var(--sf-muted)}.sf-addempty-icon{display:flex;color:var(--sf-field-placeholder)}.sf-addempty-icon svg{width:30px;height:30px}.sf-addempty-title{font-size:14px;font-weight:600;color:var(--sf-text)}.sf-addempty-sub{font-size:12.5px}.sf-toast{position:absolute;left:50%;bottom:34px;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:10px;padding:11px 17px;border-radius:11px;background:var(--sf-toast-bg);color:#fff;font-size:13px;box-shadow:0 12px 30px #0f172a4d}.sf-toast-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--sf-accent);color:#fff;font-size:11px;flex:none}.sf-toast--error .sf-toast-check{background:var(--sf-danger)}.sf-center{flex:1;min-width:0;min-height:0;background:var(--sf-preview-bg);border-radius:var(--sf-panel-radius);box-shadow:var(--sf-panel-shadow);overflow:hidden;display:flex;justify-content:safe center;align-items:safe center;padding:0}.sf-frame{width:100%;height:100%;max-height:100%;background:var(--sf-frame-bg);border-radius:10px;overflow:hidden;box-shadow:0 1px 2px #0000000f,0 12px 36px #0000001a;transition:width .25s ease;display:flex;flex-direction:column;min-height:0}.sf-frame-scaler{flex:none;position:relative}.sf-frame--tablet,.sf-frame--mobile{align-self:stretch}.sf-frame--tablet{width:800px;border-radius:18px;outline:1px solid var(--sf-device-border);outline-offset:-1px}.sf-frame--mobile{width:390px;border-radius:18px;outline:1px solid var(--sf-device-border);outline-offset:-1px}.sf-preview-host{flex:1;min-height:0;position:relative}.sf-preview-host>div,.sf-preview-host iframe{width:100%!important;height:100%!important;border:0}.sf-center>.sf-preview-host{align-self:stretch}[data-puck-entry] .es-zone:empty:not(.is-area-selected):not(.is-hovering-area:not(.is-root)){outline:none}[data-puck-entry] .es-zone.is-area-selected:not(.is-root),[data-puck-entry] .es-zone.is-hovering-area:not(.is-root){outline:none}[data-puck-entry] .es-zone:empty:is(.is-area-selected,.is-hovering-area:not(.is-root)){outline:1px solid var(--es-accent-line, #bfdbfe)}[data-puck-overlay-portal]:hover{outline:1px solid var(--es-accent-tint-strong, #dbeafe);outline-offset:2px}[data-puck-overlay-portal],[data-puck-overlay-portal] *{pointer-events:auto!important}[data-puck-overlay-portal]:focus-within{outline:2px solid var(--es-accent-line, #bfdbfe);outline-offset:2px}[data-puck-overlay-portal]:hover:has([data-puck-overlay-portal]:hover){outline:none}.sf-preview-gaps{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:6}.sf-preview-gap{position:absolute;left:0;right:0;height:24px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;pointer-events:none}.sf-preview-gap-line{position:absolute;left:0;right:0;top:50%;height:2px;transform:translateY(-50%);background:var(--sf-accent);opacity:0;pointer-events:none;transition:opacity .12s}.sf-preview-gap-pill{position:relative;display:inline-flex;align-items:center;padding:4px;border-radius:999px;background:var(--sf-toast-bg);color:#fff;font-family:var(--sf-font);font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 2px 10px #00000047;opacity:0;cursor:pointer;pointer-events:auto;transition:opacity .12s,padding .12s}.sf-preview-gap-pill:hover{opacity:1;padding:4px 12px 4px 4px}.sf-preview-gap-plus{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--sf-accent);color:#fff;font-size:13px;line-height:1;flex:none}.sf-preview-gap-label{max-width:0;margin-left:0;overflow:hidden;opacity:0;transition:max-width .14s,margin-left .14s,opacity .12s}.sf-preview-gap-pill:hover .sf-preview-gap-label{max-width:140px;margin-left:6px;opacity:1}.sf-preview-gap:has(.sf-preview-gap-pill:hover) .sf-preview-gap-line{opacity:1}.sf-insp-body{flex:1;overflow-y:auto;scrollbar-gutter:stable;--sf-insp-pad-x: 14px;padding:4px var(--sf-insp-pad-x) 18px;--sf-select-arrow: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='%23c3c3c3'><polygon points='0,0 100,0 50,50'/></svg>")}@container (width < 280px){.sf-insp-body{--sf-insp-pad-x: 8px}}.sf-dupmenu-backdrop{position:fixed;inset:0;z-index:1000}.sf-dupmenu{position:fixed;z-index:1001;display:flex;flex-direction:column;gap:1px;min-width:200px;max-width:280px;max-height:60vh;overflow:auto;padding:4px;border:1px solid var(--sf-line);border-radius:8px;background:var(--sf-panel);box-shadow:0 8px 24px #0000001f}.sf-dupmenu-head{padding:6px 9px 4px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--sf-muted)}.sf-dupmenu-empty{padding:8px 9px;font-size:13px;color:var(--sf-muted)}.sf-dupmenu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:13px;text-align:left;color:var(--sf-text)}.sf-dupmenu-item:hover:not(:disabled){background:var(--sf-accent-tint);color:var(--sf-accent)}.sf-dupmenu-item:disabled{cursor:default;opacity:.6}.sf-dupmenu-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-dupmenu-item>.sf-note{padding:0;flex:none;line-height:inherit}.sf-insp-body input[type=text],.sf-insp-body input[type=number],.sf-insp-body input:not([type]),.sf-insp-body textarea{width:100%;border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;color:var(--sf-field-text);font-family:var(--sf-font)}.sf-insp-body input::placeholder,.sf-insp-body textarea::placeholder{color:var(--sf-field-placeholder);opacity:1}.sf-insp-body textarea{min-height:74px;line-height:1.45;resize:vertical}.sf-insp-body input[type=text]:focus,.sf-insp-body input:not([type]):focus,.sf-insp-body textarea:focus{outline:none;border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-insp-body input[aria-invalid=true]{border-color:var(--sf-danger)}.sf-insp-body select{width:100%;border:1px solid var(--sf-input-border);background-color:var(--sf-field-bg);appearance:none;-webkit-appearance:none;background-image:var(--sf-select-arrow);background-size:12px;background-repeat:no-repeat;background-position:calc(100% - 12px) calc(50% + 3px);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;color:var(--sf-field-text);cursor:pointer}.sf-editor .sf-body .sf-panel .sf-insp-body select:hover{background-color:var(--sf-hover);background-image:var(--sf-select-arrow);border-color:var(--sf-input-border)}.sf-insp-body input[type=range]{accent-color:var(--sf-accent)}.sf-combo-control{position:relative}.sf-insp-body input.sf-combo-input{padding-right:26px;cursor:text}.sf-combo-caret{position:absolute;right:11px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--sf-text-secondary);pointer-events:none}.sf-combo-menu{list-style:none;margin:6px 0 0;padding:4px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);max-height:240px;overflow-y:auto}.sf-combo-option{display:flex;align-items:center;gap:8px;padding:7px 9px;font-size:13px;color:var(--sf-field-text);border-radius:max(calc(var(--sf-field-radius) - 2px),2px);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-combo-group{display:flex;align-items:center;gap:6px;padding:8px 9px 4px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--sf-text-secondary);cursor:default}.sf-combo-group:not(:first-child){margin-top:4px}.sf-combo-group-count{font-weight:400;color:var(--sf-muted)}.sf-combo-thumb{flex:0 0 26px;width:26px;height:26px;border-radius:4px;background:var(--sf-input-border);overflow:hidden}.sf-combo-thumb img{width:100%;height:100%;object-fit:contain;display:block}.sf-combo-option-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.sf-combo-meta{flex:0 0 auto;font-size:12px;color:var(--sf-text-secondary)}.sf-combo-option.is-active{background:var(--sf-accent-ring)}.sf-combo-option.is-selected{font-weight:600}.sf-combo-empty{padding:7px 9px;font-size:12px;color:var(--sf-muted)}.sf-multi-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;font-family:var(--sf-font);color:var(--sf-field-text);text-align:left;cursor:pointer}.sf-multi-btn:focus-visible{outline:none;border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-multi-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-multi-value.is-empty{color:var(--sf-muted)}.sf-multi-caret{font-size:10px;color:var(--sf-text-secondary);flex:none}.sf-multi-menu{margin:6px 0 0;padding:4px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);display:flex;flex-direction:column}.sf-multi-option{display:flex;align-items:center;gap:8px;padding:7px 9px;font-size:13px;color:var(--sf-field-text);border-radius:max(calc(var(--sf-field-radius) - 2px),2px);cursor:pointer}.sf-multi-option:hover{background:var(--sf-accent-ring)}.sf-multi-option:has(input:focus-visible){outline:2px solid var(--sf-accent);outline-offset:-2px}.sf-multi-option input{accent-color:var(--sf-accent);flex:none;margin:0}.sf-multi-option>.sf-note{margin-left:auto;flex:none;padding:0;font-variant-numeric:tabular-nums}.sf-secttheme-btn{display:block;width:100%}.sf-secttheme-btn:focus-within{outline:none;border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-secttheme-btn .sf-theme-pick:focus-visible,.sf-secttheme-btn .sf-theme-edit:focus-visible{outline:none}.sf-secttheme-caret{flex:none;border:0;background:none;padding:3px 2px 3px 6px;font:inherit;line-height:1;color:var(--sf-text-secondary);cursor:pointer}.sf-secttheme-oncard{margin:0;padding:5px 4px 7px;font-size:11px;line-height:1.4;color:var(--sf-text-secondary)}.sf-secttheme-nopreview{display:block;height:74px;background:var(--sf-field-bg);border-bottom:1px dashed var(--sf-input-border)}.sf-secttheme-chip{width:30px;height:20px;flex:none;display:flex;overflow:hidden;border-radius:4px;border:1px solid rgba(0,0,0,.14)}.sf-secttheme-chip i{display:block;height:100%;flex:1 1 auto}.sf-secttheme-chip i.sf-secttheme-chip-accent{flex:0 0 40%}.sf-secttheme-chip--none{background:var(--sf-field-bg);border-style:dashed}.sf-secttheme-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1 1 auto;min-width:0}.sf-secttheme-menu{display:flex;flex-direction:column;padding:4px;gap:8px;background:var(--sf-accent-tint)}.sf-secttheme-menu>.sf-secttheme-item{flex:none}.sf-secttheme-item{display:flex;align-items:center;gap:9px;width:100%;padding:6px 7px;border:0;background:transparent;border-radius:max(calc(var(--sf-field-radius) - 2px),2px);font-size:13px;font-family:var(--sf-font);color:var(--sf-field-text);text-align:left;cursor:pointer}.sf-secttheme-item:hover{background:var(--sf-accent-ring)}.sf-secttheme-item.is-active{background:var(--sf-accent-ring);font-weight:600}.sf-secttheme-item:focus-visible,.sf-secttheme-done:focus-visible{outline:2px solid var(--sf-accent);outline-offset:-2px;border-radius:4px}.sf-secttheme-sep{height:1px;margin:3px 0;background:var(--sf-input-border)}.sf-secttheme-sheet{margin-top:6px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);overflow:hidden}.sf-secttheme-sheet-head{display:flex;align-items:center;padding:6px 9px;background:var(--sf-field-bg);border-bottom:1px solid var(--sf-input-border);font-size:12px;font-weight:600;color:var(--sf-field-text)}.sf-secttheme-done{margin-left:auto;padding:2px 4px;border:0;background:transparent;color:var(--sf-text-secondary);font-size:11px;font-family:var(--sf-font);cursor:pointer}.sf-secttheme-rows{padding:0 12px 12px}.sf-secttheme-rows>.es-field:first-child{margin-top:var(--es-rhythm-group-first)}.sf-secttheme-warn{margin:0;padding:7px 9px;border-top:1px solid var(--sf-input-border);background:var(--sf-accent-ring);font-size:11px;line-height:1.4;color:var(--sf-text-secondary)}.sf-msg{padding:24px;font-size:13px;color:var(--sf-icon)}.sf-msg--error{color:var(--sf-danger)}.sf-panel--hidden{display:none}.sf-editor .es-rail{--es-rail-fg: var(--sf-muted);--es-rail-hover-bg: var(--sf-hover);--es-rail-hover-fg: var(--sf-text);--es-rail-accent: var(--sf-accent);--es-rail-accent-tint: var(--sf-accent-tint)}.sf-rail-plus{font-size:20px;line-height:1}.sf-pages,.sf-styles{display:flex;flex-direction:column;min-height:0;height:100%}.sf-sitemap{position:absolute;top:calc(var(--sf-topbar-h) + var(--sf-panel-gap));left:var(--sf-content-x);right:var(--sf-panel-gap);bottom:var(--sf-panel-gap);z-index:40;display:flex;flex-direction:column;min-height:0;overflow:hidden;border-radius:var(--sf-panel-radius);box-shadow:var(--sf-panel-shadow);background:var(--sf-track-bg, #f4f4f5);font-family:var(--sf-font)}.sf-sm-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--sf-panel, #fff)}.sf-sm-title{font-size:14px;font-weight:600;color:var(--sf-text)}.sf-sm-head-actions{display:flex;align-items:center;gap:8px}.sf-sm-newpage{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--sf-input-border, #d4d4d8);background:var(--sf-panel, #fff);color:var(--sf-text);border-radius:var(--sf-field-radius, 7px);padding:6px 11px;font:inherit;font-size:13px;cursor:pointer}.sf-sm-newpage:hover{background:var(--sf-hover)}.sf-sm-body{flex:1;min-height:0;overflow-y:auto;padding:16px}.sf-sm-group{margin-bottom:20px}.sf-sm-group-title{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--sf-muted);margin:0 2px 10px}.sf-sm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:12px}.sf-sm-card{background:var(--sf-panel, #fff);border:1px solid var(--sf-input-border, #e4e4e7);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.sf-sm-card.is-open{border-color:var(--sf-accent);box-shadow:0 0 0 1px var(--sf-accent)}.sf-sm-card-head{display:flex;align-items:center;gap:6px;padding:8px 10px}.sf-sm-card-title{flex:1;min-width:0;text-align:left;border:0;background:transparent;font:inherit;cursor:pointer;padding:0;color:var(--sf-text)}.sf-sm-card-name{display:block;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-sm-card-title:hover .sf-sm-card-name{color:var(--sf-accent-text, var(--sf-accent))}.sf-sm-draft{flex:none;font-size:10px;padding:1px 6px;border-radius:999px;background:var(--sf-hover);color:var(--sf-muted)}.sf-sm-edit{flex:none;border:0;background:transparent;cursor:pointer;color:var(--sf-muted);padding:3px;border-radius:5px;line-height:0}.sf-sm-edit:hover{background:var(--sf-hover);color:var(--sf-text)}.sf-sm-secs{padding:6px;display:flex;flex-direction:column;gap:2px}.sf-sm-sec{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;font-size:12px;color:var(--sf-text)}.sf-sm-sec[draggable=true]{cursor:grab}.sf-sm-sec[draggable=true]:active{cursor:grabbing}.sf-sm-sec:has(.sf-sm-grip):hover{background:var(--sf-hover)}.sf-sm-sec.is-pinned{color:var(--sf-muted)}.sf-sm-sec.is-hidden .sf-sm-sec-name{text-decoration:line-through;color:var(--sf-muted)}.sf-sm-sec.is-dragging{opacity:.45}.sf-sm-sec.is-over-before{box-shadow:inset 0 2px 0 var(--sf-accent)}.sf-sm-sec.is-over-after{box-shadow:inset 0 -2px 0 var(--sf-accent)}.sf-sm-grip{color:var(--sf-muted);font-size:10px;line-height:1;font-family:inherit;letter-spacing:-2px;width:9px;flex:none;cursor:grab;box-sizing:content-box;padding:7px 8px;margin:-7px -8px;border:none;background:transparent;touch-action:none}.sf-sm-sec:hover .sf-sm-grip{color:var(--sf-text)}.sf-sm-grip:active{cursor:grabbing}.sf-sm-grip:focus-visible{outline:2px solid var(--sf-accent);outline-offset:1px;border-radius:3px;color:var(--sf-text)}.sf-sm-sec-chip{color:var(--sf-muted);line-height:0}.sf-sm-sec-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-sm-sec-eye{color:var(--sf-muted);line-height:0}.sf-sm-empty{padding:6px;font-size:12px;color:var(--sf-muted)}.sf-sm-editing{flex:none;padding:4px 10px;font-size:10px;color:var(--sf-accent-text, var(--sf-accent));background:var(--sf-accent-tint)}.sf-sm-body>.sf-note{padding:24px;text-align:center}.sf-sm-addcard{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:96px;border:1px dashed var(--sf-input-border, #d4d4d8);border-radius:12px;background:transparent;color:var(--sf-muted);cursor:pointer;font:inherit;font-size:12px}.sf-sm-addcard:hover{background:var(--sf-hover);color:var(--sf-text)}.sf-sm-addcard-plus{font-size:20px;line-height:1}.sf-pages-search{flex:none;display:flex;align-items:center;gap:7px;margin:0 12px 8px;padding:7px 10px;background:var(--sf-track-bg);border-radius:8px;color:var(--sf-muted)}.sf-pages-search-input{flex:1;min-width:0;border:none;background:transparent;font-family:var(--sf-font);font-size:13px;color:var(--sf-text);outline:none}.sf-pages-search-input::placeholder{color:var(--sf-muted)}.sf-pages-list{flex:1;min-height:0;overflow-y:auto;padding:0 8px 8px}.sf-pages-list>.sf-note{padding:10px 12px}.sf-pages-list>.sf-note--error{margin:4px 4px 0}.sf-pgroup{margin-top:2px}.sf-pgroup-head{width:100%;display:flex;align-items:center;gap:7px;padding:8px 8px 6px;border:none;background:transparent;cursor:pointer;color:var(--sf-muted)}.sf-pgroup-head:hover{color:var(--sf-text)}.sf-pgroup-label{flex:1;text-align:left;font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.sf-pgroup-count{flex:none;font-size:11px;font-weight:600;color:var(--sf-muted);background:var(--sf-track-bg);border-radius:999px;padding:1px 7px}.sf-pgroup-body{display:flex;flex-direction:column}.sf-prow{text-decoration:none;color:inherit}.sf-page-draft{flex:none;font-size:10px;font-weight:600;color:var(--sf-muted);text-transform:uppercase;letter-spacing:.3px}.sf-badge-dynamic,.sf-badge-lightbox{flex:none;font-size:9px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:2px 7px;border-radius:999px}.sf-badge-dynamic{color:var(--sf-accent-text);background:var(--sf-accent-tint)}.sf-badge-lightbox{color:#047857;background:#ecfdf5}.sf-page-edit{flex:none;width:24px;height:24px;border:none;background:transparent;border-radius:6px;color:var(--sf-muted);display:none;align-items:center;justify-content:center;cursor:pointer}.sf-row:hover .sf-page-edit,.sf-row:focus-within .sf-page-edit{display:flex}.sf-page-edit:hover{background:var(--sf-hover);color:var(--sf-text)}.sf-page-edit--danger:hover{background:var(--sf-danger-tint);color:var(--sf-danger)}.sf-page-edit--danger:disabled{opacity:.5;cursor:default}.sf-badge-preview{flex:none;font-size:9px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:2px 7px;border-radius:999px;color:var(--sf-warning);background:var(--sf-preview-tint)}.sf-pages-new{flex:none;margin:6px 10px 10px;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px;border:1px dashed var(--sf-line);border-radius:var(--sf-row-radius);background:transparent;color:var(--sf-accent-text);font-family:var(--sf-font);font-size:13px;font-weight:600;cursor:pointer}.sf-pages-new:hover{background:var(--sf-hover)}.sf-row-del{width:22px;height:22px;border:none;background:transparent;border-radius:5px;cursor:pointer;color:var(--sf-danger);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;flex:none;transition:opacity .12s,background .12s,color .12s}.sf-row:hover .sf-row-del,.sf-row:focus-within .sf-row-del{opacity:.7;pointer-events:auto}.sf-row-del:hover{opacity:1;background:var(--sf-danger-tint);color:var(--sf-danger-strong)}.sf-panel-head-actions{display:flex;align-items:center;gap:2px}.sf-tree-tool{margin-top:14px;padding:10px 0 0 11px}.sf-insp-body .es-insp-tabs{padding:0;position:sticky;top:0;z-index:2;background:var(--sf-panel);box-shadow:0 -16px 0 0 var(--sf-panel)}.sf-field{margin-top:var(--es-rhythm-between)}.sf-insp-body .es-insp-row:has(.es-group-sub),.sf-theme-colours .es-group-sub,.sf-secttheme-rows .es-group-sub{border-top:1px solid var(--sf-line);margin-top:30px;padding-top:30px;margin-left:calc(var(--sf-insp-pad-x) * -1);margin-right:calc(var(--sf-insp-pad-x) * -1);padding-left:var(--sf-insp-pad-x);padding-right:var(--sf-insp-pad-x)}.sf-insp-body .es-insp-row:has(.es-group-sub) .es-group-sub{margin-top:0}.sf-insp-body .es-insp-row:nth-child(1 of:not([hidden],:empty,:has(>[data-sf-device-hidden],>[data-sf-no-control]))):has(.es-group-sub){border-top:0;margin-top:0;padding-top:var(--es-rhythm-group-first)}.sf-field--row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:var(--es-rhythm-between-tight)}.sf-insp-body .es-insp-row:has(.es-group-sub)+.es-insp-row .sf-field,.sf-insp-body .es-insp-row:has(.es-group-head)+.es-insp-row .sf-field{margin-top:var(--es-rhythm-group-first)}.sf-field-label{display:block;font-size:12px;font-weight:500;color:var(--sf-text-secondary);margin-bottom:var(--es-rhythm-within)}.sf-field-label--inline{margin-bottom:0}.sf-field-hint{margin-top:6px;margin-bottom:0;font-size:11px;color:var(--sf-muted)}.sf-panel--right.sf-hints-folded .es-field-hint,.sf-field-hint--while-typing{display:none}.sf-field:focus-within>.sf-field-hint--while-typing{display:block}.es-insp-row:has(>[data-sf-device-hidden]){display:none!important}.es-insp-row:has(>[data-sf-no-control]){display:none!important}.sf-device-scope{margin:8px 0 2px;padding:7px 10px;border-radius:7px;background:var(--sf-chip-bg);font-size:11.5px;line-height:1.35;color:var(--sf-muted)}.sf-inherit{flex:none;display:inline-flex;align-items:center;gap:4px;max-width:55%;padding:2px 6px;border:1px solid transparent;border-radius:999px;font-family:var(--sf-font);font-size:10px;font-weight:500;line-height:1.5;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--sf-chip-bg);color:var(--sf-chip-fg)}.sf-inherit--following{cursor:pointer;transition:background .12s,color .12s}.sf-inherit--following:hover{background:var(--sf-hover);color:var(--sf-text-secondary)}.sf-inherit--over{background:var(--sf-accent-tint);border-color:var(--sf-accent-tint-strong);color:var(--sf-accent-text);cursor:pointer;transition:background .12s,border-color .12s}.sf-inherit--over:hover{background:var(--sf-accent-tint-strong)}.sf-inherit-revert{font-size:11px;line-height:1}.sf-field-readonly{border:1px solid var(--sf-input-border);background:var(--sf-chip-bg);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;color:var(--sf-text-secondary);font-family:var(--sf-font);cursor:default;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-field-head{display:flex;align-items:center;gap:8px;margin-bottom:var(--es-rhythm-within)}.sf-field-type{flex:none;color:var(--sf-muted)}.sf-field-head .sf-field-label{flex:1;min-width:0;margin-bottom:0}.sf-field-eye{flex:none;width:22px;height:22px;border:none;background:transparent;border-radius:5px;cursor:pointer;color:var(--sf-muted);display:flex;align-items:center;justify-content:center;opacity:.6;transition:background .12s,color .12s,opacity .12s}.sf-field-eye:hover{background:var(--sf-hover);opacity:1;color:var(--sf-text-secondary)}.sf-field.is-hidden .sf-field-label{color:var(--sf-muted);text-decoration:line-through}.sf-field.is-hidden .sf-field-eye{opacity:1;color:var(--sf-text-secondary)}.sf-field.is-hidden input,.sf-field.is-hidden textarea{opacity:.5}.sf-copybox>.es-copy-bar,.sf-textlist>.es-copy-bar{display:flex;align-items:center;gap:2px;margin-bottom:0}.sf-copybox>.es-copy-bar,.sf-textlist>.es-copy-bar{flex-wrap:wrap;row-gap:2px}.sf-markup-btn,.sf-copybox .es-copy-mark.has-glyph,.sf-textlist .es-copy-mark.has-glyph{width:24px}.sf-copybox .es-copy-mark:not(.has-glyph),.sf-textlist .es-copy-mark:not(.has-glyph){padding:0 6px;font-size:11px;line-height:1;white-space:nowrap}.sf-markup-btn,.sf-copybox .es-copy-mark,.sf-textlist .es-copy-mark{height:22px;border:none;background:transparent;border-radius:5px;cursor:pointer;color:var(--sf-icon);display:flex;align-items:center;justify-content:center;opacity:.75;transition:background .12s,color .12s,opacity .12s}.sf-markup-btn:hover:not(:disabled),.sf-copybox .es-copy-mark:hover:not(:disabled),.sf-textlist .es-copy-mark:hover:not(:disabled){background:var(--sf-hover);color:var(--sf-text-secondary);opacity:1}.sf-markup-btn:active:not(:disabled),.sf-copybox .es-copy-mark:active:not(:disabled),.sf-textlist .es-copy-mark:active:not(:disabled){background:var(--sf-accent-tint);color:var(--sf-accent-text)}.sf-markup-btn:disabled,.sf-copybox .es-copy-mark:disabled,.sf-textlist .es-copy-mark:disabled{color:var(--sf-disabled);cursor:default}.sf-copybox>.es-copy-bar>.es-copy-bar-split,.sf-textlist>.es-copy-bar>.es-copy-bar-split{margin-left:auto;height:14px}.sf-copybox>.es-copy-bar>.sf-markup-clear,.sf-textlist>.es-copy-bar>.sf-markup-clear{margin-left:auto}.sf-copybox>.es-copy-bar>.es-copy-bar-split,.sf-textlist>.es-copy-bar>.es-copy-bar-split{align-self:center;margin-right:2px}.sf-field.is-hidden .es-copy-bar{opacity:.5}.sf-copybox{border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);overflow:hidden}.sf-copybox:focus-within{border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-copybox>.es-copy-bar{margin-bottom:0;padding:3px 6px;border-bottom:1px solid var(--sf-input-border);background:var(--sf-hover)}.sf-copybox:not(:focus-within)>.es-copy-bar{display:none}.sf-copybox .es-copy-mark.is-active,.sf-copybox .es-copy-mark.is-active:hover:not(:disabled),.sf-textlist .es-copy-mark.is-active,.sf-textlist .es-copy-mark.is-active:hover:not(:disabled){background:var(--sf-accent-tint);color:var(--sf-accent-text)}.sf-copybox>input,.sf-copybox>textarea,.sf-insp-body .sf-copybox>input[type=text],.sf-insp-body .sf-copybox>input:not([type]),.sf-insp-body .sf-copybox>textarea{border:none;border-radius:0;background:transparent;display:block;width:100%}.sf-copybox>input:focus,.sf-copybox>textarea:focus,.sf-insp-body .sf-copybox>input[type=text]:focus,.sf-insp-body .sf-copybox>input:not([type]):focus,.sf-insp-body .sf-copybox>textarea:focus{box-shadow:none}.sf-swatches{display:flex;align-items:center;gap:10px}.sf-swatch{width:26px;height:26px;border-radius:7px;border:none;cursor:pointer;padding:0;box-shadow:inset 0 0 0 1px #0000002e}.sf-swatch.is-active{box-shadow:0 0 0 2px var(--sf-panel),0 0 0 4px var(--sf-accent)}.sf-swatch-hex{font-size:11px;color:var(--sf-muted);font-variant-numeric:tabular-nums;margin-left:2px}.es-field-head:has(>.es-pick-colour),.sf-field--row:has(>.es-pick-colour){flex-wrap:wrap}.es-field-head>.es-pick-colour,.sf-field--row>.es-pick-colour{display:contents}.es-field-head>.es-pick-colour>.es-pick-colour-row,.sf-field--row>.es-pick-colour>.es-pick-colour-row{margin-left:auto}.es-field-head>.es-pick-colour>.es-pick-window,.sf-field--row>.es-pick-colour>.es-pick-window{flex:1 0 100%;min-width:0}.sf-insp-body input[type=text].es-pick-hex{width:var(--es-pick-readout-w);border:1px solid transparent;background:transparent;border-radius:6px;padding:4px 6px;font-size:12px;color:var(--es-text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;flex:none}.sf-insp-body input[type=text].es-pick-hex:hover{border-color:var(--es-input-border)}.sf-insp-body input[type=text].es-pick-hex:focus{outline:none;border-color:var(--es-accent);box-shadow:none;background:var(--es-panel)}.sf-chooser{display:flex;width:100%;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-field-text);font-size:13px;text-align:left;cursor:pointer}.sf-chooser:hover{background:var(--sf-hover)}.sf-chooser-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-chooser-meta{flex:none;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--sf-disabled)}.sf-chooser-caret{flex:none;color:var(--sf-disabled)}.sf-chooser-menu{position:absolute;left:0;z-index:50;margin-top:4px;width:100%;overflow:hidden;padding:4px 0;border:1px solid var(--sf-divider);border-radius:var(--sf-field-radius);background:var(--sf-panel);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.sf-chooser-menu--tall{max-height:256px;overflow:hidden auto}.sf-chooser-item{display:flex;width:100%;align-items:center;gap:8px;padding:6px 10px;border:0;background:none;text-align:left;font-size:13px;color:var(--sf-text-secondary);cursor:pointer}.sf-chooser-item:hover{background:var(--sf-hover)}.sf-chooser-item.is-active{font-weight:600;color:var(--sf-text)}.sf-chooser-add{color:var(--sf-accent-text);font-weight:500}.sf-chooser-add:hover{background:var(--sf-hover)}.sf-rungs{display:flex;width:100%;gap:4px}.sf-rung{flex:1;padding:4px 8px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-text-secondary);font-size:12px;cursor:pointer}.sf-rung:hover:not(.is-active){background:var(--sf-hover)}.sf-rung.is-active{border-color:var(--sf-disabled);background:var(--sf-chip-bg);color:var(--sf-text);font-weight:600}.sf-shadow-chip{display:block;flex:none;box-sizing:border-box;width:16px;height:11px;border:1px solid var(--sf-disabled);background:var(--sf-field-bg)}.sf-hints{display:flex;margin-top:28px}.sf-hints-toggle{display:inline-flex;flex:none;align-items:center;gap:5px;color:var(--sf-muted)}.sf-hints-toggle svg{flex:none}.sf-scale-a{flex:none;font-size:11px;line-height:1;color:var(--sf-disabled)}.sf-scale-a--lg{font-size:15px;color:var(--sf-muted)}.sf-auto-reset{padding:2px 6px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);font-size:11px;color:var(--sf-text-secondary);cursor:pointer}.sf-auto-reset:hover{background:var(--sf-hover)}#sf-site-styles-tabpanel>:first-child{margin-top:var(--es-rhythm-group-first)}.sf-style-list{display:flex;flex-direction:column}.sf-style-head{display:flex;width:100%;align-items:center;gap:8px;padding:10px 0;background:none;border:0;text-align:left;cursor:pointer}.sf-style-head:hover .sf-style-sample{color:var(--sf-text)}.sf-style-caret{display:inline-flex;flex:none;align-items:center;color:var(--sf-disabled);transition:transform .12s ease}.sf-style-row.is-open .sf-style-caret{transform:rotate(90deg)}.sf-style-name{flex:none;font-size:11px;font-weight:600;color:var(--sf-muted)}.sf-style-sample{min-width:0;margin-left:auto;overflow:hidden;color:var(--sf-text);text-overflow:ellipsis;white-space:nowrap}.sf-style-slot{display:inline-flex;flex:none;width:14px;height:14px;align-items:center;justify-content:center;color:var(--sf-muted);opacity:0;transform:scale(.6);transition:opacity .16s ease,transform .16s ease}.sf-style-slot.is-saved{opacity:1;transform:scale(1)}@media(prefers-reduced-motion:reduce){.sf-style-slot{transition:none}}.sf-style-body{padding:2px 0 12px}.sf-select{padding:5px 8px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-text);font-size:12px;cursor:pointer}.sf-rung--glyph{flex:0 0 34px;font-size:13px;line-height:18px;text-align:center}.sf-rung--glyph:disabled{color:var(--sf-disabled);cursor:not-allowed}.sf-rung--glyph:disabled:hover{background:var(--sf-field-bg)}.sf-theme-list{display:flex;flex-direction:column;gap:8px;margin-top:max(var(--es-row-gap),var(--es-rhythm-group-first))}.sf-theme-card,.sf-secttheme-btn{border:1px solid var(--sf-input-border);border-radius:9px;overflow:hidden;background:var(--sf-panel)}.sf-theme-card:hover,.sf-secttheme-btn:hover{border-color:var(--sf-muted)}.sf-theme-card.is-selected{border-color:var(--sf-accent);box-shadow:0 0 0 2px var(--sf-accent-ring)}.sf-theme-pick{display:block;width:100%;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.sf-theme-page{display:flex;flex-direction:column;gap:4px;padding:10px 12px}.sf-theme-eyebrow{font-size:7.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1}.sf-theme-headline{font-size:14px;font-weight:750;letter-spacing:-.01em;line-height:1.1}.sf-theme-body{font-size:9.5px;line-height:1.4;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-theme-row{display:flex;align-items:center;gap:7px;margin-top:1px}.sf-theme-btn{font-size:8.5px;font-weight:700;letter-spacing:.02em;padding:5px 11px;border-radius:4px;white-space:nowrap;flex:none}.sf-theme-mini{flex:1;min-width:0;height:22px;border-radius:3px;border:1px solid;display:flex;align-items:center;justify-content:center;font-size:7.5px;font-weight:600;opacity:.75}.sf-theme-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px 6px 12px;background:var(--sf-hover)}.sf-theme-card.is-selected .sf-theme-foot{color:var(--sf-accent-text)}.sf-theme-name{font-size:11px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-theme-warn{flex:none;margin-left:auto;font-size:10px;font-weight:700;color:#b45309;white-space:nowrap}.sf-theme-warn+.sf-theme-edit{margin-left:8px}.sf-theme-name{margin-right:auto}.sf-theme-edit{flex:none;border:1px solid var(--sf-input-border);background:var(--sf-panel);border-radius:4px;font:inherit;font-size:10px;font-weight:700;letter-spacing:.03em;color:var(--sf-text-secondary);padding:3px 8px;line-height:1.3;cursor:pointer}.sf-theme-edit:hover{border-color:var(--sf-muted);color:var(--sf-text)}.sf-theme-edit.is-open{background:var(--sf-accent);border-color:var(--sf-accent);color:#fff}.sf-theme-colours{padding:0 12px 12px}.sf-theme-colours[hidden]{display:none}.sf-theme-colours>.es-field:first-child{margin-top:var(--es-rhythm-group-first)}.sf-theme-reset{width:100%;margin-top:var(--es-rhythm-between-tight);border:0;background:none;font:inherit;font-size:10.5px;font-weight:600;color:var(--sf-accent-text);padding:0;cursor:pointer;text-align:left}.sf-theme-reset:disabled{color:var(--sf-muted);cursor:default}.sf-theme-add{display:flex;align-items:center;gap:6px;margin-top:8px;border:0;background:none;font:inherit;font-size:12px;font-weight:600;color:var(--sf-accent-text);padding:4px 0;cursor:pointer}.sf-theme-add:hover{text-decoration:underline}.sf-colour-lede{margin-top:-3px;margin-bottom:10px}.sf-colour-pair{border:1px solid var(--sf-divider);border-radius:var(--sf-row-radius);padding:2px 11px 11px;background:var(--sf-app-bg)}.sf-colour-row{margin-top:9px;display:flex;align-items:center;justify-content:space-between;gap:12px}.sf-colour-mode{font-size:12px;font-weight:500;color:var(--sf-text-secondary)}.sf-colour-mode small{display:block;margin-top:1px;font-size:11px;font-weight:400;color:var(--sf-muted)}.sf-readability{margin-top:10px;padding:11px 12px 12px;border:1px solid var(--sf-divider);border-radius:var(--sf-row-radius)}.sf-readability-head{margin-bottom:7px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sf-muted)}.sf-readability-row{display:flex;align-items:center;gap:9px;padding:4px 0;font-size:12px}.sf-readability-who{flex:1;color:var(--sf-text-secondary)}.sf-readability-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--sf-disabled)}.sf-readability-val{color:var(--sf-muted)}.sf-readability-dot.is-good{background:var(--sf-muted)}.sf-readability-dot.is-large-only{background:var(--sf-warning)}.sf-readability-dot.is-hard{background:var(--sf-danger)}.sf-readability-val.is-good{color:var(--sf-text-secondary)}.sf-readability-val.is-large-only{color:var(--sf-warning)}.sf-readability-val.is-hard{color:var(--sf-danger)}.sf-readability-advice{margin-top:7px;font-size:11px;line-height:1.6;color:var(--sf-muted)}.sf-readability-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.sf-readability-suggestion{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-btn-text);font-size:11px;font-variant-numeric:tabular-nums;cursor:pointer}.sf-readability-suggestion:hover{background:var(--sf-hover)}.sf-readability-chip{width:9px;height:9px;flex:none;border-radius:2px;box-shadow:inset 0 0 0 1px #0000002e}.sf-slider{display:flex;align-items:center;gap:12px}.es-field-ctl>.sf-slider{flex:1;min-width:0}.sf-slider input[type=range]{flex:1;min-width:0;height:18px;margin:0;padding:0;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none}.sf-slider input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:var(--sf-track-bg);box-shadow:inset 0 0 0 1px var(--sf-input-border)}.sf-slider input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:var(--sf-track-bg);box-shadow:inset 0 0 0 1px var(--sf-input-border)}.sf-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--sf-knob);border:2px solid var(--sf-accent);box-shadow:0 1px 2px #0000002e;transition:transform .12s}.sf-slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--sf-knob);border:2px solid var(--sf-accent);box-shadow:0 1px 2px #0000002e;transition:transform .12s}.sf-slider input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.12)}.sf-slider input[type=range]:hover::-moz-range-thumb{transform:scale(1.12)}.sf-slider.has-notch{position:relative}.sf-slider.has-notch:before{content:"";position:absolute;top:50%;left:calc(7px + (100% - 14px) * var(--sf-notch));width:2px;height:10px;margin-top:-5px;border-radius:1px;background:var(--sf-input-border);pointer-events:none}.sf-slider-val{font-size:12px;color:var(--sf-icon);font-variant-numeric:tabular-nums;min-width:42px;text-align:right;padding:0;border:none;background:none;font-family:inherit;line-height:inherit}button.sf-slider-val{cursor:text;border-radius:4px}button.sf-slider-val:hover{color:var(--sf-text);box-shadow:inset 0 0 0 1px var(--sf-input-border)}input.sf-slider-typed{width:42px;color:var(--sf-text);box-shadow:inset 0 0 0 1px var(--sf-accent);border-radius:4px;padding:1px 3px;touch-action:manipulation}input.sf-slider-typed:focus{outline:none}.sf-preview-pin{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:9px 14px;background:var(--sf-panel)}.sf-preview-pin-text{display:flex;flex-direction:column;gap:1px;min-width:0}.sf-preview-pin-label{font-size:13px;font-weight:500;color:var(--sf-text)}.sf-preview-pin-hint{font-size:11px;color:var(--sf-muted)}.sf-colstep{display:flex;align-items:center;gap:6px}.sf-colstep-btn{width:22px;height:22px;padding:0;border:1px solid var(--sf-line);border-radius:6px;background:transparent;color:var(--sf-text);font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.sf-colstep-btn:hover:not(:disabled){border-color:var(--sf-accent)}.sf-colstep-btn:disabled{opacity:.4;cursor:default}.sf-colstep-value{min-width:14px;text-align:center;font-size:13px;font-weight:500;color:var(--sf-text)}.sf-checkbox{cursor:pointer}.sf-checkbox input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--sf-accent);cursor:pointer}.sf-locked{opacity:.5;pointer-events:none}.sf-seg2 button:focus-visible,.sf-readability-suggestion:focus-visible,.sf-swatch:focus-visible,.sf-field-eye:focus-visible,.sf-inherit--over:focus-visible,.sf-inherit--following:focus-visible,.sf-slider input[type=range]:focus-visible,.sf-insp-body select:focus-visible,.sf-checkbox input[type=checkbox]:focus-visible,.sf-textlist-x:focus-visible,.sf-textlist-add:focus-visible{outline:2px solid var(--sf-accent);outline-offset:2px}.sf-seg2 button:focus-visible{outline-offset:-1px}.sf-seg2{display:flex;gap:3px;background:var(--sf-track-bg);border:1px solid var(--sf-input-border);border-radius:9px;padding:3px}.sf-seg2 button{flex:1;border:none;background:transparent;border-radius:6px;padding:6px 8px;font-size:12px;font-weight:500;color:var(--sf-icon);cursor:pointer;transition:background .12s,color .12s,box-shadow .12s}@container (width < 280px){.sf-seg2 button{padding-inline:6px}}.sf-panel .flex-shrink-0:has(.es-segs-fit){flex-basis:100%;min-width:0}.sf-seg2 button:hover:not(.is-active){color:var(--sf-text-secondary);background:var(--sf-hover)}.sf-seg2 button.is-active{background:var(--sf-raised);color:var(--sf-text-strong);box-shadow:0 1px 2px #0000001a,0 0 0 1px #0000000a}.sf-seg2[data-disabled]{opacity:.5;cursor:not-allowed}.sf-seg2[data-disabled] button{cursor:not-allowed;color:var(--sf-disabled)}.sf-seg2[data-disabled] button.is-active{color:var(--sf-text-secondary)}.sf-seg2[data-disabled] button:hover:not(.is-active){background:transparent;color:var(--sf-disabled)}.sf-seg2 button>svg{display:block;margin:0 auto}.sf-textlist{display:flex;flex-direction:column;gap:6px}.es-field-ctl>.sf-textlist{flex:1 1 auto;min-width:0}.sf-textlist-row{display:flex;align-items:center;gap:6px}.sf-textlist-row input{flex:1;min-width:0}.sf-textlist>.es-copy-bar{margin-bottom:0}.sf-textlist-row.is-marking input{border-color:var(--sf-accent);box-shadow:0 0 0 1px var(--sf-accent-tint)}.sf-textlist-x{flex:none;width:28px;height:32px;border:none;background:transparent;color:var(--sf-muted);border-radius:7px;cursor:pointer;font-size:17px;line-height:1}.sf-textlist-x:hover{background:var(--sf-danger-tint);color:var(--sf-danger)}.sf-textlist-add{align-self:flex-start;margin-top:2px;padding:4px 2px;border:none;background:transparent;color:var(--sf-accent);font-size:12px;font-weight:500;cursor:pointer}.sf-textlist-add:hover{text-decoration:underline}.sf-blogsource{display:flex;flex-direction:column;gap:9px}.sf-blogsource-status{margin:0;font-size:12px;color:var(--sf-text-secondary)}.sf-blogsource-status[data-state=error]{color:var(--sf-danger)}.sf-source-open{display:inline;padding:0;border:0;background:none;font:inherit;color:var(--sf-accent-text);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.sf-source-open:hover{color:var(--sf-accent)}.sf-source-open:focus-visible{outline:2px solid var(--sf-accent);outline-offset:2px;border-radius:2px}.sf-blogsource-btn{align-self:flex-start;padding:7px 14px;border:1px solid var(--sf-input-border);border-radius:8px;background:transparent;color:var(--sf-text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.sf-blogsource-btn:hover:not(:disabled){border-color:var(--sf-accent);color:var(--sf-accent)}.sf-blogsource-btn:disabled{opacity:.55;cursor:default}.sf-blogsource-hint{margin:0;font-size:11px;line-height:1.4;color:var(--sf-muted)}.sf-formpicker{display:flex;flex-direction:column;gap:9px}.sf-formsummary-caption{margin-bottom:4px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--sf-text-secondary)}.sf-formsummary-fields{margin:0;padding-left:18px;font-size:12px;line-height:1.55;color:var(--sf-text-secondary)}.sf-formsummary-warn{margin:0;font-size:11.5px;line-height:1.45;color:var(--sf-danger)}.sf-formsummary-actions{display:flex;flex-wrap:wrap;gap:8px}.sf-image-btn{border:1px solid var(--sf-btn-border);background:var(--sf-panel);color:var(--sf-btn-text);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;cursor:pointer;transition:background .12s}.sf-image-btn:hover:not(:disabled){background:var(--sf-hover)}.sf-image-btn:disabled{cursor:default;opacity:.55}.sf-image-status{margin-top:6px;font-size:11px;color:var(--sf-muted)}.sf-image-status--error{color:var(--sf-danger)}ul.sf-image-status{list-style:none;padding:0}.sf-image-status--error li{color:inherit;font-size:inherit}.sf-image-slot-inert{border:1.5px dashed var(--sf-input-border);border-radius:9px;padding:12px 14px;font-size:12px;line-height:1.5;color:var(--sf-muted);background-image:repeating-linear-gradient(45deg,var(--sf-hatch) 0 1px,transparent 1px 12px)}.sf-focus{display:flex;flex-direction:column;gap:6px}.sf-focus-canvas{display:flex;align-items:center;justify-content:center;min-height:150px;padding:0;border:1px solid var(--sf-line);border-radius:6px;background:var(--sf-preview-bg);cursor:crosshair;touch-action:none}.sf-focus-canvas:focus-visible{outline:2px solid var(--sf-accent);outline-offset:1px}.sf-focus-pane{position:relative;display:inline-block;max-width:100%;line-height:0}.sf-focus-img{display:block;width:auto;height:auto;max-width:100%;max-height:150px;object-fit:contain}.sf-focus-cross{position:absolute;background:#ffffff73;pointer-events:none}.sf-focus-cross--h{right:0;left:0;height:1px}.sf-focus-cross--v{top:0;bottom:0;width:1px}.sf-focus-marker{position:absolute;width:18px;height:18px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1.5px #0000008c,0 1px 5px #0000007f;transform:translate(-50%,-50%);pointer-events:none}.sf-focus-bar{display:flex;align-items:center;gap:8px}.sf-focus-hint{min-width:0;flex:1;font-size:11px;color:var(--sf-muted)}.es-insp-rows:has([data-sf-focusing]) .es-pick-image-frame{display:none}.sf-note{padding:14px 16px;font-size:13px;line-height:1.5;color:var(--sf-muted)}.sf-note p+p{margin-top:8px}.sf-note strong{color:var(--sf-text);font-weight:600}.sf-note-detail{margin-top:10px;font-size:11px;color:var(--sf-muted);opacity:.75;word-break:break-all}.sf-note--error{color:var(--sf-danger);background:var(--sf-danger-tint);border-radius:6px}.sf-part-back{display:flex;align-items:center;gap:6px;width:calc(100% + 28px);margin:0 -14px 10px;padding:9px 14px;background:none;border:0;font:inherit;font-size:12px;color:var(--sf-muted);text-align:left;cursor:pointer}.sf-part-back:hover{color:var(--sf-text);background:var(--sf-chip-bg)}.sf-part-back span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sf-part-style{position:relative;margin:0 0 4px;padding:11px 13px;border:1px solid var(--sf-divider);border-radius:12px;background:var(--sf-track-bg)}.sf-part-style.has-overrides{border-color:var(--sf-accent-ring)}.sf-part-style.has-overrides:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--sf-accent);border-radius:12px 0 0 12px}.sf-part-style-caption{margin-bottom:2px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sf-muted)}.sf-part-style-count{margin-bottom:3px;font-size:11px;font-weight:600;color:var(--sf-muted)}.sf-part-style-name{min-width:0;font-size:20px;line-height:1.15;letter-spacing:-.01em;color:var(--sf-text-strong);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sf-part-style-pick{position:relative}.sf-part-style-trigger{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer;min-width:0}.sf-part-style-trigger .sf-part-style-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-part-style-sign{margin-left:auto;width:16px;flex:none;text-align:center;color:var(--sf-muted);font-size:14px;line-height:1}.sf-part-style-trigger[aria-expanded=false] .sf-part-style-sign:before{content:"+"}.sf-part-style-trigger[aria-expanded=true] .sf-part-style-sign:before{content:"\2212"}.sf-part-style-trigger:focus-visible{outline:2px solid var(--sf-accent);outline-offset:2px;border-radius:3px}.sf-part-style-menu{position:absolute;z-index:30;left:0;right:0;box-shadow:0 8px 24px #0000002e}.sf-part-style-option{display:flex;align-items:baseline;gap:8px;width:100%;padding:7px 9px;border:0;background:none;text-align:left;font-size:13px;color:var(--sf-field-text);border-radius:max(calc(var(--sf-field-radius) - 2px),2px);cursor:pointer}.sf-part-style-option:hover{background:var(--sf-accent-ring)}.sf-part-style-option:focus-visible{outline:2px solid var(--sf-accent);outline-offset:-2px}.sf-part-style-option.is-on{background:var(--sf-accent-ring);font-weight:600}.sf-part-style-option-name{flex:0 0 auto;white-space:nowrap}.sf-part-style-option .sf-note{min-width:0;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-part-style-meta{margin-top:1px;font-size:11px;color:var(--sf-muted);font-variant-numeric:tabular-nums}.sf-part-style-top{display:flex;align-items:center;gap:9px;margin-top:8px}.sf-part-style-gap{flex:1}.sf-part-style-state{font-size:11.5px;color:var(--sf-text-secondary)}.sf-part-chip{display:inline-flex;align-items:center;border-radius:999px;padding:2px 9px;background:var(--sf-accent-tint);color:var(--sf-accent-text);font-size:10.5px;font-weight:700;font-variant-numeric:tabular-nums}.sf-part-link{border:0;background:none;padding:0;font:inherit;font-size:12px;font-weight:500;color:var(--sf-accent-text);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--sf-accent-ring)}.sf-part-link:hover{text-decoration-color:currentColor}.es-group-body>.sf-note{margin:12px 0 -4px;padding:0 0 0 2px}.sf-slot-rows>.sf-note{padding:10px 11px 12px}.sf-part-field.is-style-value>.es-field-head>.es-field-value,.sf-part-field.is-style-value>.es-field-head>.es-field-value>.sf-slider-val{color:var(--sf-muted)}.sf-part-select{width:100%;min-width:0}.sf-part-ink{display:flex;flex-direction:column;gap:8px;min-width:0}.sf-part-ink>.es-pick-colour>.es-pick-colour-row{align-self:flex-end}.sf-part-mark{width:18px;height:18px;flex:none;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:none;color:var(--sf-accent);cursor:pointer}.sf-part-mark-dot{transform-origin:center;transition:transform .15s ease,opacity .15s ease}.sf-part-mark-arrow{opacity:0;transition:opacity .15s ease}.sf-part-mark:hover .sf-part-mark-dot,.sf-part-mark:focus-visible .sf-part-mark-dot{transform:scale(0);opacity:0}.sf-part-mark:hover .sf-part-mark-arrow,.sf-part-mark:focus-visible .sf-part-mark-arrow{opacity:1}@media(prefers-reduced-motion:reduce){.sf-part-mark-dot,.sf-part-mark-arrow{transition:none}}.sf-part-text{margin-top:4px;margin-bottom:4px}.sf-part-text .sf-copybox textarea{min-height:84px;line-height:1.5;resize:vertical}.sf-entries{margin-top:32px}.sf-entries-head{margin:14px 0 4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sf-muted)}.sf-entry-eye{display:inline-flex;align-items:center;color:var(--sf-muted)}.sf-slot-rows .sf-add-card{padding:8px 11px;border-radius:0}.sf-image-drop{flex:1;min-width:0}.sf-image-drop.is-dragover .es-pick-image-slot{border-color:var(--sf-accent);background-color:var(--sf-accent-tint)}.sf-image-drop.is-dragover .es-pick-image-frame{outline:2px solid var(--sf-accent);outline-offset:-2px}.sf-gallery-filter{display:flex;gap:5px;flex-wrap:wrap}.sf-gallery-filter button{border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:999px;padding:4px 11px;font-size:11.5px;font-weight:600;color:var(--sf-icon);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.sf-gallery-filter button:hover{background:var(--sf-hover)}.sf-gallery-filter button[aria-pressed=true]{background:var(--sf-accent);border-color:var(--sf-accent);color:var(--sf-on-accent)}.sf-gallery-layouts{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:6px;margin-top:7px}.sf-linkstack{display:flex;flex-direction:column;gap:7px}.es-field-ctl>.sf-gallery-layouts,.es-field-ctl>.sf-gallery-filter,.es-field-ctl>.sf-linkstack{flex:1 1 auto;min-width:0}.sf-gallery-layouts button{border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:7px;padding:5px;cursor:pointer;transition:border-color .12s,box-shadow .12s,background .12s}.sf-gallery-layouts button:hover{background:var(--sf-hover)}.sf-gallery-layouts button[aria-pressed=true]{border-color:var(--sf-accent);box-shadow:0 0 0 2px var(--sf-accent-ring);background:var(--sf-panel)}.sf-gallery-pic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:6px;grid-auto-flow:row dense;gap:2px}.sf-gallery-pic i{display:block;background:var(--sf-track-bg);border-radius:1.5px}.sf-gallery-layouts button[aria-pressed=true] .sf-gallery-pic i{background:var(--sf-accent)}.sf-gallery-count{font-size:10.5px;color:var(--sf-disabled);margin-top:7px}.sf-head-divider{width:1px;height:16px;margin:0 4px;background:var(--sf-line);flex:none}.es-btn-ghost.sf-head-textbtn{height:28px;padding:0 10px;font-size:12.5px;border-radius:7px;white-space:nowrap}.es-sidepanel.sf-panel-strip{width:40px;align-items:center;padding-top:12px}
1
+ .sf-embedded{height:100%;min-height:0}.sf-embedded .sf-editor{height:100%}.sf-editor{--sf-accent: var(--es-accent);--sf-accent-tint: var(--es-accent-tint);--sf-accent-tint-strong: var(--es-accent-tint-strong);--sf-accent-text: var(--es-accent-text);--sf-accent-ring: var(--es-accent-ring);--sf-accent-shadow: var(--es-accent-shadow);--sf-on-accent: var(--es-on-accent);--sf-app-bg: var(--es-app-bg);--sf-preview-bg: var(--es-preview-bg);--sf-panel: var(--es-panel);--sf-raised: var(--es-raised);--sf-frame-bg: var(--es-frame-bg);--sf-hover: var(--es-hover);--sf-hatch: var(--es-hatch);--sf-addcard-veil: var(--es-addcard-veil);--sf-field-bg: var(--es-field-bg);--sf-track-bg: var(--es-track-bg);--sf-input-border: var(--es-input-border);--sf-field-text: var(--es-field-text);--sf-field-placeholder: var(--es-field-placeholder);--sf-knob: var(--es-knob);--sf-text: var(--es-text);--sf-text-strong: var(--es-text-strong);--sf-text-secondary: var(--es-text-secondary);--sf-muted: var(--es-muted);--sf-icon: var(--es-icon);--sf-disabled: var(--es-disabled);--sf-divider: var(--es-divider);--sf-line: var(--es-line);--sf-btn-border: var(--es-btn-border);--sf-btn-text: var(--es-btn-text);--sf-chip-bg: var(--es-chip-bg);--sf-chip-fg: var(--es-chip-fg);--sf-device-border: var(--es-device-border);--sf-toast-bg: var(--es-toast-bg);--sf-scrollbar: var(--es-scrollbar);--sf-scrollbar-hover: var(--es-scrollbar-hover);--sf-danger: var(--es-danger);--sf-danger-strong: var(--es-danger-strong);--sf-danger-tint: var(--es-danger-tint);--sf-warning: var(--es-warning);--sf-preview-tint: var(--es-preview-tint);--sf-panel-radius: 0;--sf-row-radius: var(--es-row-radius);--sf-field-radius: var(--es-field-radius);--sf-panel-gap: 0px;--sf-topbar-h: 52px;--sf-content-x: var(--sf-panel-gap);--sf-panel-shadow: none;--sf-font: var(--es-font);width:100%;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;position:relative;background:var(--sf-app-bg);color:var(--sf-text);font-family:var(--sf-font);font-size:14px;-webkit-font-smoothing:antialiased}.sf-editor *,.sf-editor *:before,.sf-editor *:after{box-sizing:border-box}.sf-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.sf-scroll::-webkit-scrollbar{width:11px;height:11px}.sf-scroll::-webkit-scrollbar-thumb{background:var(--sf-scrollbar);border-radius:8px;border:3px solid transparent;background-clip:content-box}.sf-scroll::-webkit-scrollbar-thumb:hover{background:var(--sf-scrollbar-hover);background-clip:content-box}.sf-scroll::-webkit-scrollbar-track{background:transparent}.sf-actions-slot>button{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--sf-btn-border);background:var(--sf-panel);border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;color:var(--sf-btn-text)}.sf-actions-slot>button:hover{background:var(--sf-hover)}.sf-section-bar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 10px}.sf-body{flex:1;display:flex;gap:var(--sf-panel-gap);padding:var(--sf-panel-gap);min-height:0;position:relative}.sf-panel-head{display:flex;align-items:center;justify-content:space-between;padding:13px 14px 11px;flex:none}.sf-panel-title{font-size:13px;font-weight:600;color:var(--sf-text);margin:0}.sf-panel-heading{display:flex;align-items:baseline;gap:6px;min-width:0}.sf-panel-site{margin:0;min-width:0;overflow:hidden;font-size:11px;font-weight:500;color:var(--sf-muted);white-space:nowrap;text-overflow:ellipsis}.sf-panel-site:before{content:"\b7";margin-right:6px}.sf-panel-title--btn{appearance:none;border:0;background:transparent;font-family:inherit;cursor:pointer;text-align:left;padding:5px 8px;margin:-5px -8px;border-radius:var(--sf-row-radius);transition:background .12s}.sf-panel-title--btn:hover{background:var(--sf-hover)}.sf-panel-title--btn.is-selected{color:var(--sf-accent-text);background:var(--sf-accent-tint);box-shadow:inset 2px 0 0 var(--sf-accent)}.sf-x{width:24px;height:24px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--sf-muted);display:flex;align-items:center;justify-content:center;font-size:14px}.sf-x:hover{background:var(--sf-hover)}.sf-tree{flex:1;overflow-y:auto;padding:0 11px 10px 8px;--es-rhythm-group: 10px;--es-rhythm-between: 6px}.sf-tree>.sf-row+.sf-row,.sf-tree>.sf-subtree+.sf-row{margin-top:var(--es-rhythm-between)}.sf-row{display:flex;align-items:center;gap:8px;padding:7px 11px;border-radius:var(--sf-row-radius);cursor:pointer;transition:background .12s;position:relative;--sf-row-scrim: var(--sf-panel)}.sf-row:hover{--sf-row-scrim: var(--sf-hover);background:var(--sf-row-scrim)}.sf-row.is-selected{--sf-row-scrim: var(--sf-accent-tint);background:var(--sf-row-scrim);box-shadow:inset 2px 0 0 var(--sf-accent)}.sf-row.is-selected .sf-chip{background:var(--sf-raised);color:var(--sf-accent)}.sf-row.is-selected .sf-row-name{color:var(--sf-accent-text);font-weight:600}.sf-chip{width:18px;height:18px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:12px;flex:none;background:transparent;color:var(--sf-icon)}.sf-row-name{flex:1;font-size:12px;font-weight:500;color:var(--sf-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-gap{position:relative;display:block;width:100%;height:9px;margin:-2px 0;padding:0;border:0;background:transparent;cursor:pointer;z-index:1}.sf-gap-line{position:absolute;left:12px;right:12px;top:50%;height:2px;transform:translateY(-50%);border-radius:2px;background:var(--sf-accent);opacity:0;transition:opacity .12s}.sf-gap-plus{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.7);width:18px;height:18px;border-radius:50%;background:var(--sf-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;box-shadow:0 0 0 2px var(--sf-panel);opacity:0;transition:opacity .12s,transform .12s}.sf-gap:hover .sf-gap-line,.sf-gap:focus-visible .sf-gap-line{opacity:1}.sf-gap:hover .sf-gap-plus,.sf-gap:focus-visible .sf-gap-plus{opacity:1;transform:translate(-50%,-50%) scale(1)}.sf-subtree{margin:var(--es-rhythm-between) 0 var(--es-rhythm-between) 16px;padding-left:9px;border-left:1px solid var(--sf-line);display:flex;flex-direction:column;gap:var(--es-rhythm-between)}.sf-add-card{display:flex;align-items:center;gap:8px;width:100%;padding:6px 9px;border:none;background:transparent;border-radius:8px;cursor:pointer;color:var(--sf-accent);font-size:12px;font-weight:500}.sf-add-card:hover{background:var(--sf-accent-tint)}.sf-add-card .sf-plus{width:18px;height:18px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:13px;flex:none;background:var(--sf-accent-tint)}.sf-blockmenu{display:flex;flex-direction:column;gap:1px;margin:2px 0 4px;padding:4px;border:1px solid var(--sf-line);border-radius:8px;background:var(--sf-panel);box-shadow:0 6px 18px #00000014}.sf-blockmenu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--sf-text, var(--sf-text));font-size:12.5px;text-align:left}.sf-blockmenu-item:hover{background:var(--sf-accent-tint);color:var(--sf-accent)}.sf-menugroup-head{display:flex;align-items:baseline;gap:8px;padding:9px 9px 5px}.sf-menugroup-head:first-child{padding-top:4px}.sf-menugroup-title{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--sf-muted)}.sf-menugroup-count{font-size:11px;color:var(--sf-field-placeholder)}.sf-addside{flex:1;min-height:0;overflow-y:auto;padding:0 14px 16px}.sf-addside .es-add-tile-cover{border:1px solid #edeff4}.sf-media-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sf-addside-sitewide{display:flex;align-items:center;gap:10px;margin-top:16px;padding:10px;border:1px solid var(--sf-divider);border-radius:10px}.sf-addside-sitewide-glyph{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--sf-hover);color:var(--sf-muted)}.sf-addside-sitewide-name{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:0;border:0;background:none;font:600 12.5px/1.3 var(--sf-font);color:var(--sf-text);text-align:left;cursor:pointer}.sf-addside-sitewide-name:hover{color:var(--sf-accent)}.sf-addside-sitewide-desc{font-weight:400;font-size:11.5px;color:var(--sf-muted)}.sf-box-footer-switch{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:18px 0 6px;padding:12px;border:1px solid var(--sf-divider);border-radius:10px}.sf-box-footer-switch-text{margin:0;font-size:12px;line-height:1.45;color:var(--sf-muted)}.sf-box-footer-switch-row{display:flex;gap:8px}.sf-thumb{--sf-thumb-card: #ffffff;--sf-thumb-thumb-bg: #fcfdff;--sf-thumb-thumb-border: #edeff4;--sf-thumb-block: #e9ebf0;--sf-thumb-bar-light: #dde1e8;--sf-thumb-bar-dark: #c3c9d3;--sf-thumb-hatch1: #e2e5ec;--sf-thumb-hatch2: #edeff4;--sf-thumb-accent: #2f6bed;--sf-thumb-accent-tint: #e6edfd;--sf-thumb-border: #e7eaf1;--sf-thumb-ink: #1b2027;--sf-thumb-ink-2: #39434f;--sf-thumb-ink-soft: #2c3540;--sf-thumb-ink-soft-2: #4a5763;--sf-thumb-paper: #f4f1ed;--sf-thumb-paper-2: #cfc8bf;--sf-thumb-warm: #e7c26a;--sf-thumb-rust: #b4652a;--sf-thumb-on-ink: #ffffff;--sf-thumb-scene-text: #171412;--sf-thumb-scene-muted: #6b7280;--sf-thumb-scene-rule: #eceef1;--sf-thumb-mark-1: #c8ccd1;--sf-thumb-mark-2: #8e9aa6;--sf-thumb-scrim: rgba(0, 0, 0, .55)}@keyframes sf-thumb-marquee{0%{transform:translate(0)}to{transform:translate(-33.34%)}}.sf-cleardlg-veil{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--sf-addcard-veil)}.sf-cleardlg{width:100%;max-width:360px;box-sizing:border-box;padding:20px;border:1px solid var(--sf-line);border-radius:9px;background:var(--sf-panel);color:var(--sf-text);box-shadow:0 20px 50px var(--sf-accent-shadow)}.sf-cleardlg-title{margin:0;font-size:15px;font-weight:600;color:var(--sf-text)}.sf-cleardlg-body{margin:8px 0 0;font-size:13px;line-height:1.6;color:var(--sf-muted)}.sf-cleardlg-final{margin:8px 0 0;font-size:13px;line-height:1.6;font-weight:500;color:var(--sf-text)}.sf-cleardlg-btns{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.sf-cleardlg-btn{font-family:var(--sf-font);font-size:13px;padding:7px 14px;border-radius:var(--sf-field-radius);border:1px solid var(--sf-btn-border);background:var(--sf-panel);color:var(--sf-btn-text);cursor:pointer}.sf-cleardlg-btn:hover{background:var(--sf-hover)}.sf-cleardlg-btn--danger{font-weight:600;border-color:var(--sf-danger-strong);background:var(--sf-danger-strong);color:var(--sf-on-accent)}.sf-cleardlg-btn--danger:hover{filter:brightness(.94)}.sf-addcard-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--sf-addcard-veil);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);opacity:0;transition:opacity .15s;pointer-events:none}.sf-addcard:hover .sf-addcard-overlay,.sf-addcard:focus-visible .sf-addcard-overlay{opacity:1}.sf-addcard-addbtn{display:inline-flex;align-items:center;gap:6px;background:var(--sf-accent);color:#fff;border-radius:9px;padding:8px 14px;font-size:12.5px;font-weight:600;box-shadow:0 4px 12px var(--sf-accent-shadow)}.sf-addcard-plus{font-size:15px;line-height:1;margin-top:-1px}.sf-addcard-meta{display:flex;flex-direction:column;gap:2px;padding:0 2px 2px}.sf-addcard-name{font-size:12.5px;font-weight:600;color:var(--sf-text)}.sf-addcard-desc{font-size:10.5px;line-height:1.35;color:var(--sf-muted)}.sf-addempty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:64px 20px;text-align:center;color:var(--sf-muted)}.sf-addempty-icon{display:flex;color:var(--sf-field-placeholder)}.sf-addempty-icon svg{width:30px;height:30px}.sf-addempty-title{font-size:14px;font-weight:600;color:var(--sf-text)}.sf-addempty-sub{font-size:12.5px}.sf-toast{position:absolute;left:50%;bottom:34px;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:10px;padding:11px 17px;border-radius:11px;background:var(--sf-toast-bg);color:#fff;font-size:13px;box-shadow:0 12px 30px #0f172a4d}.sf-toast-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--sf-accent);color:#fff;font-size:11px;flex:none}.sf-toast--error .sf-toast-check{background:var(--sf-danger)}.sf-center{flex:1;min-width:0;min-height:0;background:var(--sf-preview-bg);border-radius:var(--sf-panel-radius);box-shadow:var(--sf-panel-shadow);overflow:hidden;display:flex;justify-content:safe center;align-items:safe center;padding:0}.sf-frame{width:100%;height:100%;max-height:100%;background:var(--sf-frame-bg);border-radius:10px;overflow:hidden;box-shadow:0 1px 2px #0000000f,0 12px 36px #0000001a;transition:width .25s ease;display:flex;flex-direction:column;min-height:0}.sf-frame-scaler{flex:none;position:relative}.sf-frame--tablet,.sf-frame--mobile{align-self:stretch}.sf-frame--tablet{width:800px;border-radius:18px;outline:1px solid var(--sf-device-border);outline-offset:-1px}.sf-frame--mobile{width:390px;border-radius:18px;outline:1px solid var(--sf-device-border);outline-offset:-1px}.sf-preview-host{flex:1;min-height:0;position:relative}.sf-preview-host>div,.sf-preview-host iframe{width:100%!important;height:100%!important;border:0}.sf-center>.sf-preview-host{align-self:stretch}[data-puck-entry] .es-zone:empty:not(.is-area-selected):not(.is-hovering-area:not(.is-root)){outline:none}[data-puck-entry] .es-zone.is-area-selected:not(.is-root),[data-puck-entry] .es-zone.is-hovering-area:not(.is-root){outline:none}[data-puck-entry] .es-zone:empty:is(.is-area-selected,.is-hovering-area:not(.is-root)){outline:1px solid var(--es-accent-line, #bfdbfe)}[data-puck-overlay-portal]:hover{outline:1px solid var(--es-accent-tint-strong, #dbeafe);outline-offset:2px}[data-puck-overlay-portal],[data-puck-overlay-portal] *{pointer-events:auto!important}[data-puck-overlay-portal]:focus-within{outline:2px solid var(--es-accent-line, #bfdbfe);outline-offset:2px}[data-puck-overlay-portal]:hover:has([data-puck-overlay-portal]:hover){outline:none}.sf-preview-gaps{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:6}.sf-preview-gap{position:absolute;left:0;right:0;height:24px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;pointer-events:none}.sf-preview-gap-line{position:absolute;left:0;right:0;top:50%;height:2px;transform:translateY(-50%);background:var(--sf-accent);opacity:0;pointer-events:none;transition:opacity .12s}.sf-preview-gap-pill{position:relative;display:inline-flex;align-items:center;padding:4px;border-radius:999px;background:var(--sf-toast-bg);color:#fff;font-family:var(--sf-font);font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 2px 10px #00000047;opacity:0;cursor:pointer;pointer-events:auto;transition:opacity .12s,padding .12s}.sf-preview-gap-pill:hover{opacity:1;padding:4px 12px 4px 4px}.sf-preview-gap-plus{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--sf-accent);color:#fff;font-size:13px;line-height:1;flex:none}.sf-preview-gap-label{max-width:0;margin-left:0;overflow:hidden;opacity:0;transition:max-width .14s,margin-left .14s,opacity .12s}.sf-preview-gap-pill:hover .sf-preview-gap-label{max-width:140px;margin-left:6px;opacity:1}.sf-preview-gap:has(.sf-preview-gap-pill:hover) .sf-preview-gap-line{opacity:1}.sf-insp-body{flex:1;overflow-y:auto;scrollbar-gutter:stable;--sf-insp-pad-x: 14px;padding:4px var(--sf-insp-pad-x) 18px;--sf-select-arrow: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='%23c3c3c3'><polygon points='0,0 100,0 50,50'/></svg>")}@container (width < 280px){.sf-insp-body{--sf-insp-pad-x: 8px}}.sf-dupmenu-backdrop{position:fixed;inset:0;z-index:1000}.sf-dupmenu{position:fixed;z-index:1001;display:flex;flex-direction:column;gap:1px;min-width:200px;max-width:280px;max-height:60vh;overflow:auto;padding:4px;border:1px solid var(--sf-line);border-radius:8px;background:var(--sf-panel);box-shadow:0 8px 24px #0000001f}.sf-dupmenu-head{padding:6px 9px 4px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--sf-muted)}.sf-dupmenu-empty{padding:8px 9px;font-size:13px;color:var(--sf-muted)}.sf-dupmenu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:13px;text-align:left;color:var(--sf-text)}.sf-dupmenu-item:hover:not(:disabled){background:var(--sf-accent-tint);color:var(--sf-accent)}.sf-dupmenu-item:disabled{cursor:default;opacity:.6}.sf-dupmenu-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-dupmenu-item>.sf-note{padding:0;flex:none;line-height:inherit}.sf-insp-body input[type=text],.sf-insp-body input[type=number],.sf-insp-body input:not([type]),.sf-insp-body textarea{width:100%;border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;color:var(--sf-field-text);font-family:var(--sf-font)}.sf-insp-body input::placeholder,.sf-insp-body textarea::placeholder{color:var(--sf-field-placeholder);opacity:1}.sf-insp-body textarea{min-height:74px;line-height:1.45;resize:vertical}.sf-insp-body input[type=text]:focus,.sf-insp-body input:not([type]):focus,.sf-insp-body textarea:focus{outline:none;border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-insp-body input[aria-invalid=true]{border-color:var(--sf-danger)}.sf-insp-body select{width:100%;border:1px solid var(--sf-input-border);background-color:var(--sf-field-bg);appearance:none;-webkit-appearance:none;background-image:var(--sf-select-arrow);background-size:12px;background-repeat:no-repeat;background-position:calc(100% - 12px) calc(50% + 3px);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;color:var(--sf-field-text);cursor:pointer}.sf-editor .sf-body .sf-panel .sf-insp-body select:hover{background-color:var(--sf-hover);background-image:var(--sf-select-arrow);border-color:var(--sf-input-border)}.sf-insp-body input[type=range]{accent-color:var(--sf-accent)}.sf-multi-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;font-family:var(--sf-font);color:var(--sf-field-text);text-align:left;cursor:pointer}.sf-multi-btn:focus-visible{outline:none;border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-multi-caret{font-size:10px;color:var(--sf-text-secondary);flex:none}.sf-multi-menu{margin:6px 0 0;padding:4px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);display:flex;flex-direction:column}.sf-secttheme-btn{display:block;width:100%}.sf-secttheme-btn:focus-within{outline:none;border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-secttheme-btn .sf-theme-pick:focus-visible,.sf-secttheme-btn .sf-theme-edit:focus-visible{outline:none}.sf-secttheme-caret{flex:none;border:0;background:none;padding:3px 2px 3px 6px;font:inherit;line-height:1;color:var(--sf-text-secondary);cursor:pointer}.sf-secttheme-oncard{margin:0;padding:5px 4px 7px;font-size:11px;line-height:1.4;color:var(--sf-text-secondary)}.sf-secttheme-nopreview{display:block;height:74px;background:var(--sf-field-bg);border-bottom:1px dashed var(--sf-input-border)}.sf-secttheme-chip{width:30px;height:20px;flex:none;display:flex;overflow:hidden;border-radius:4px;border:1px solid rgba(0,0,0,.14)}.sf-secttheme-chip i{display:block;height:100%;flex:1 1 auto}.sf-secttheme-chip i.sf-secttheme-chip-accent{flex:0 0 40%}.sf-secttheme-chip--none{background:var(--sf-field-bg);border-style:dashed}.sf-secttheme-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1 1 auto;min-width:0}.sf-secttheme-menu{display:flex;flex-direction:column;padding:4px;gap:8px;background:var(--sf-accent-tint)}.sf-secttheme-menu>.sf-secttheme-item{flex:none}.sf-secttheme-item{display:flex;align-items:center;gap:9px;width:100%;padding:6px 7px;border:0;background:transparent;border-radius:max(calc(var(--sf-field-radius) - 2px),2px);font-size:13px;font-family:var(--sf-font);color:var(--sf-field-text);text-align:left;cursor:pointer}.sf-secttheme-item:hover{background:var(--sf-accent-ring)}.sf-secttheme-item.is-active{background:var(--sf-accent-ring);font-weight:600}.sf-secttheme-item:focus-visible,.sf-secttheme-done:focus-visible{outline:2px solid var(--sf-accent);outline-offset:-2px;border-radius:4px}.sf-secttheme-sep{height:1px;margin:3px 0;background:var(--sf-input-border)}.sf-secttheme-sheet{margin-top:6px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);overflow:hidden}.sf-secttheme-sheet-head{display:flex;align-items:center;padding:6px 9px;background:var(--sf-field-bg);border-bottom:1px solid var(--sf-input-border);font-size:12px;font-weight:600;color:var(--sf-field-text)}.sf-secttheme-done{margin-left:auto;padding:2px 4px;border:0;background:transparent;color:var(--sf-text-secondary);font-size:11px;font-family:var(--sf-font);cursor:pointer}.sf-secttheme-rows{padding:0 12px 12px}.sf-secttheme-rows>.es-field:first-child{margin-top:var(--es-rhythm-group-first)}.sf-secttheme-warn{margin:0;padding:7px 9px;border-top:1px solid var(--sf-input-border);background:var(--sf-accent-ring);font-size:11px;line-height:1.4;color:var(--sf-text-secondary)}.sf-msg{padding:24px;font-size:13px;color:var(--sf-icon)}.sf-msg--error{color:var(--sf-danger)}.sf-panel--hidden{display:none}.sf-editor .es-rail{--es-rail-fg: var(--sf-muted);--es-rail-hover-bg: var(--sf-hover);--es-rail-hover-fg: var(--sf-text);--es-rail-accent: var(--sf-accent);--es-rail-accent-tint: var(--sf-accent-tint)}.sf-rail-plus{font-size:20px;line-height:1}.sf-pages,.sf-styles{display:flex;flex-direction:column;min-height:0;height:100%}.sf-pages-search{flex:none;display:flex;align-items:center;gap:7px;margin:0 12px 8px;padding:7px 10px;background:var(--sf-track-bg);border-radius:8px;color:var(--sf-muted)}.sf-pages-search-input{flex:1;min-width:0;border:none;background:transparent;font-family:var(--sf-font);font-size:13px;color:var(--sf-text);outline:none}.sf-pages-search-input::placeholder{color:var(--sf-muted)}.sf-pages-list{flex:1;min-height:0;overflow-y:auto;padding:0 8px 8px}.sf-pages-list>.sf-note{padding:10px 12px}.sf-pages-list>.sf-note--error{margin:4px 4px 0}.sf-pgroup{margin-top:2px}.sf-pgroup-head{width:100%;display:flex;align-items:center;gap:7px;padding:8px 8px 6px;border:none;background:transparent;cursor:pointer;color:var(--sf-muted)}.sf-pgroup-head:hover{color:var(--sf-text)}.sf-pgroup-label{flex:1;text-align:left;font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.sf-pgroup-count{flex:none;font-size:11px;font-weight:600;color:var(--sf-muted);background:var(--sf-track-bg);border-radius:999px;padding:1px 7px}.sf-pgroup-body{display:flex;flex-direction:column}.sf-prow{text-decoration:none;color:inherit}.sf-page-draft{flex:none;font-size:10px;font-weight:600;color:var(--sf-muted);text-transform:uppercase;letter-spacing:.3px}.sf-badge-dynamic,.sf-badge-lightbox{flex:none;font-size:9px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:2px 7px;border-radius:999px}.sf-badge-dynamic{color:var(--sf-accent-text);background:var(--sf-accent-tint)}.sf-badge-lightbox{color:#047857;background:#ecfdf5}.sf-page-edit{flex:none;width:24px;height:24px;border:none;background:transparent;border-radius:6px;color:var(--sf-muted);display:none;align-items:center;justify-content:center;cursor:pointer}.sf-row:hover .sf-page-edit,.sf-row:focus-within .sf-page-edit{display:flex}.sf-page-edit:hover{background:var(--sf-hover);color:var(--sf-text)}.sf-page-edit--danger:hover{background:var(--sf-danger-tint);color:var(--sf-danger)}.sf-page-edit--danger:disabled{opacity:.5;cursor:default}.sf-badge-preview{flex:none;font-size:9px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:2px 7px;border-radius:999px;color:var(--sf-warning);background:var(--sf-preview-tint)}.sf-pages-new{flex:none;margin:6px 10px 10px;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px;border:1px dashed var(--sf-line);border-radius:var(--sf-row-radius);background:transparent;color:var(--sf-accent-text);font-family:var(--sf-font);font-size:13px;font-weight:600;cursor:pointer}.sf-pages-new:hover{background:var(--sf-hover)}.sf-row-del{width:22px;height:22px;border:none;background:transparent;border-radius:5px;cursor:pointer;color:var(--sf-danger);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;flex:none;transition:opacity .12s,background .12s,color .12s}.sf-row:hover .sf-row-del,.sf-row:focus-within .sf-row-del{opacity:.7;pointer-events:auto}.sf-row-del:hover{opacity:1;background:var(--sf-danger-tint);color:var(--sf-danger-strong)}.sf-panel-head-actions{display:flex;align-items:center;gap:2px}.sf-tree-tool{margin-top:14px;padding:10px 0 0 11px}.sf-insp-body .es-insp-tabs{padding:0;position:sticky;top:0;z-index:2;background:var(--sf-panel);box-shadow:0 -16px 0 0 var(--sf-panel)}.sf-field{margin-top:var(--es-rhythm-between)}.sf-insp-body .es-insp-row:has(.es-group-sub),.sf-theme-colours .es-group-sub,.sf-secttheme-rows .es-group-sub{border-top:1px solid var(--sf-line);margin-top:30px;padding-top:30px;margin-left:calc(var(--sf-insp-pad-x) * -1);margin-right:calc(var(--sf-insp-pad-x) * -1);padding-left:var(--sf-insp-pad-x);padding-right:var(--sf-insp-pad-x)}.sf-insp-body .es-insp-row:has(.es-group-sub) .es-group-sub{margin-top:0}.sf-insp-body .es-insp-row:nth-child(1 of:not([hidden],:empty,:has(>[data-sf-device-hidden],>[data-sf-no-control]))):has(.es-group-sub){border-top:0;margin-top:0;padding-top:var(--es-rhythm-group-first)}.sf-field--row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:var(--es-rhythm-between-tight)}.sf-insp-body .es-insp-row:has(.es-group-sub)+.es-insp-row .sf-field,.sf-insp-body .es-insp-row:has(.es-group-head)+.es-insp-row .sf-field{margin-top:var(--es-rhythm-group-first)}.sf-field-label{display:block;font-size:12px;font-weight:500;color:var(--sf-text-secondary);margin-bottom:var(--es-rhythm-within)}.sf-field-label--inline{margin-bottom:0}.sf-field-hint{margin-top:6px;margin-bottom:0;font-size:11px;color:var(--sf-muted)}.sf-panel--right.sf-hints-folded .es-field-hint,.sf-field-hint--while-typing{display:none}.sf-field:focus-within>.sf-field-hint--while-typing{display:block}.es-insp-row:has(>[data-sf-device-hidden]){display:none!important}.es-insp-row:has(>[data-sf-no-control]){display:none!important}.sf-device-scope{margin:8px 0 2px;padding:7px 10px;border-radius:7px;background:var(--sf-chip-bg);font-size:11.5px;line-height:1.35;color:var(--sf-muted)}.sf-inherit{flex:none;display:inline-flex;align-items:center;gap:4px;max-width:55%;padding:2px 6px;border:1px solid transparent;border-radius:999px;font-family:var(--sf-font);font-size:10px;font-weight:500;line-height:1.5;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--sf-chip-bg);color:var(--sf-chip-fg)}.sf-inherit--following{cursor:pointer;transition:background .12s,color .12s}.sf-inherit--following:hover{background:var(--sf-hover);color:var(--sf-text-secondary)}.sf-inherit--over{background:var(--sf-accent-tint);border-color:var(--sf-accent-tint-strong);color:var(--sf-accent-text);cursor:pointer;transition:background .12s,border-color .12s}.sf-inherit--over:hover{background:var(--sf-accent-tint-strong)}.sf-inherit-revert{font-size:11px;line-height:1}.sf-field-readonly{border:1px solid var(--sf-input-border);background:var(--sf-chip-bg);border-radius:var(--sf-field-radius);padding:8px 11px;font-size:13px;color:var(--sf-text-secondary);font-family:var(--sf-font);cursor:default;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-field-head{display:flex;align-items:center;gap:8px;margin-bottom:var(--es-rhythm-within)}.sf-field-type{flex:none;color:var(--sf-muted)}.sf-field-head .sf-field-label{flex:1;min-width:0;margin-bottom:0}.sf-field-eye{flex:none;width:22px;height:22px;border:none;background:transparent;border-radius:5px;cursor:pointer;color:var(--sf-muted);display:flex;align-items:center;justify-content:center;opacity:.6;transition:background .12s,color .12s,opacity .12s}.sf-field-eye:hover{background:var(--sf-hover);opacity:1;color:var(--sf-text-secondary)}.sf-field.is-hidden .sf-field-label{color:var(--sf-muted);text-decoration:line-through}.sf-field.is-hidden .sf-field-eye{opacity:1;color:var(--sf-text-secondary)}.sf-field.is-hidden input,.sf-field.is-hidden textarea{opacity:.5}.sf-copybox>.es-copy-bar,.sf-textlist>.es-copy-bar{display:flex;align-items:center;gap:2px;margin-bottom:0}.sf-copybox>.es-copy-bar,.sf-textlist>.es-copy-bar{flex-wrap:wrap;row-gap:2px}.sf-markup-btn,.sf-copybox .es-copy-mark.has-glyph,.sf-textlist .es-copy-mark.has-glyph{width:24px}.sf-copybox .es-copy-mark:not(.has-glyph),.sf-textlist .es-copy-mark:not(.has-glyph){padding:0 6px;font-size:11px;line-height:1;white-space:nowrap}.sf-markup-btn,.sf-copybox .es-copy-mark,.sf-textlist .es-copy-mark{height:22px;border:none;background:transparent;border-radius:5px;cursor:pointer;color:var(--sf-icon);display:flex;align-items:center;justify-content:center;opacity:.75;transition:background .12s,color .12s,opacity .12s}.sf-markup-btn:hover:not(:disabled),.sf-copybox .es-copy-mark:hover:not(:disabled),.sf-textlist .es-copy-mark:hover:not(:disabled){background:var(--sf-hover);color:var(--sf-text-secondary);opacity:1}.sf-markup-btn:active:not(:disabled),.sf-copybox .es-copy-mark:active:not(:disabled),.sf-textlist .es-copy-mark:active:not(:disabled){background:var(--sf-accent-tint);color:var(--sf-accent-text)}.sf-markup-btn:disabled,.sf-copybox .es-copy-mark:disabled,.sf-textlist .es-copy-mark:disabled{color:var(--sf-disabled);cursor:default}.sf-copybox>.es-copy-bar>.es-copy-bar-split,.sf-textlist>.es-copy-bar>.es-copy-bar-split{margin-left:auto;height:14px}.sf-copybox>.es-copy-bar>.sf-markup-clear,.sf-textlist>.es-copy-bar>.sf-markup-clear{margin-left:auto}.sf-copybox>.es-copy-bar>.es-copy-bar-split,.sf-textlist>.es-copy-bar>.es-copy-bar-split{align-self:center;margin-right:2px}.sf-field.is-hidden .es-copy-bar{opacity:.5}.sf-copybox{border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);overflow:hidden}.sf-copybox:focus-within{border-color:var(--sf-accent);box-shadow:0 0 0 3px var(--sf-accent-ring)}.sf-copybox>.es-copy-bar{margin-bottom:0;padding:3px 6px;border-bottom:1px solid var(--sf-input-border);background:var(--sf-hover)}.sf-copybox:not(:focus-within)>.es-copy-bar{display:none}.sf-copybox .es-copy-mark.is-active,.sf-copybox .es-copy-mark.is-active:hover:not(:disabled),.sf-textlist .es-copy-mark.is-active,.sf-textlist .es-copy-mark.is-active:hover:not(:disabled){background:var(--sf-accent-tint);color:var(--sf-accent-text)}.sf-copybox>input,.sf-copybox>textarea,.sf-insp-body .sf-copybox>input[type=text],.sf-insp-body .sf-copybox>input:not([type]),.sf-insp-body .sf-copybox>textarea{border:none;border-radius:0;background:transparent;display:block;width:100%}.sf-copybox>input:focus,.sf-copybox>textarea:focus,.sf-insp-body .sf-copybox>input[type=text]:focus,.sf-insp-body .sf-copybox>input:not([type]):focus,.sf-insp-body .sf-copybox>textarea:focus{box-shadow:none}.sf-swatches{display:flex;align-items:center;gap:10px}.sf-swatch{width:26px;height:26px;border-radius:7px;border:none;cursor:pointer;padding:0;box-shadow:inset 0 0 0 1px #0000002e}.sf-swatch.is-active{box-shadow:0 0 0 2px var(--sf-panel),0 0 0 4px var(--sf-accent)}.sf-swatch-hex{font-size:11px;color:var(--sf-muted);font-variant-numeric:tabular-nums;margin-left:2px}.es-field-head:has(>.es-pick-colour),.sf-field--row:has(>.es-pick-colour){flex-wrap:wrap}.es-field-head>.es-pick-colour,.sf-field--row>.es-pick-colour{display:contents}.es-field-head>.es-pick-colour>.es-pick-colour-row,.sf-field--row>.es-pick-colour>.es-pick-colour-row{margin-left:auto}.es-field-head>.es-pick-colour>.es-pick-window,.sf-field--row>.es-pick-colour>.es-pick-window{flex:1 0 100%;min-width:0}.sf-insp-body input[type=text].es-pick-hex{width:var(--es-pick-readout-w);border:1px solid transparent;background:transparent;border-radius:6px;padding:4px 6px;font-size:12px;color:var(--es-text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;flex:none}.sf-insp-body input[type=text].es-pick-hex:hover{border-color:var(--es-input-border)}.sf-insp-body input[type=text].es-pick-hex:focus{outline:none;border-color:var(--es-accent);box-shadow:none;background:var(--es-panel)}.sf-chooser{display:flex;width:100%;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-field-text);font-size:13px;text-align:left;cursor:pointer}.sf-chooser:hover{background:var(--sf-hover)}.sf-chooser-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-chooser-meta{flex:none;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--sf-disabled)}.sf-chooser-caret{flex:none;color:var(--sf-disabled)}.sf-chooser-menu{position:absolute;left:0;z-index:50;margin-top:4px;width:100%;overflow:hidden;padding:4px 0;border:1px solid var(--sf-divider);border-radius:var(--sf-field-radius);background:var(--sf-panel);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.sf-chooser-menu--tall{max-height:256px;overflow:hidden auto}.sf-chooser-item{display:flex;width:100%;align-items:center;gap:8px;padding:6px 10px;border:0;background:none;text-align:left;font-size:13px;color:var(--sf-text-secondary);cursor:pointer}.sf-chooser-item:hover{background:var(--sf-hover)}.sf-chooser-item.is-active{font-weight:600;color:var(--sf-text)}.sf-chooser-add{color:var(--sf-accent-text);font-weight:500}.sf-chooser-add:hover{background:var(--sf-hover)}.sf-rungs{display:flex;width:100%;gap:4px}.sf-rung{flex:1;padding:4px 8px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-text-secondary);font-size:12px;cursor:pointer}.sf-rung:hover:not(.is-active){background:var(--sf-hover)}.sf-rung.is-active{border-color:var(--sf-disabled);background:var(--sf-chip-bg);color:var(--sf-text);font-weight:600}.sf-shadow-chip{display:block;flex:none;box-sizing:border-box;width:16px;height:11px;border:1px solid var(--sf-disabled);background:var(--sf-field-bg)}.sf-hints{display:flex;margin-top:28px}.sf-hints-toggle{display:inline-flex;flex:none;align-items:center;gap:5px;color:var(--sf-muted)}.sf-hints-toggle svg{flex:none}.sf-scale-a{flex:none;font-size:11px;line-height:1;color:var(--sf-disabled)}.sf-scale-a--lg{font-size:15px;color:var(--sf-muted)}.sf-auto-reset{padding:2px 6px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);font-size:11px;color:var(--sf-text-secondary);cursor:pointer}.sf-auto-reset:hover{background:var(--sf-hover)}#sf-site-styles-tabpanel>:first-child{margin-top:var(--es-rhythm-group-first)}.sf-style-list{display:flex;flex-direction:column}.sf-style-head{display:flex;width:100%;align-items:center;gap:8px;padding:10px 0;background:none;border:0;text-align:left;cursor:pointer}.sf-style-head:hover .sf-style-sample{color:var(--sf-text)}.sf-style-caret{display:inline-flex;flex:none;align-items:center;color:var(--sf-disabled);transition:transform .12s ease}.sf-style-row.is-open .sf-style-caret{transform:rotate(90deg)}.sf-style-name{flex:none;font-size:11px;font-weight:600;color:var(--sf-muted)}.sf-style-sample{min-width:0;margin-left:auto;overflow:hidden;color:var(--sf-text);text-overflow:ellipsis;white-space:nowrap}.sf-style-slot{display:inline-flex;flex:none;width:14px;height:14px;align-items:center;justify-content:center;color:var(--sf-muted);opacity:0;transform:scale(.6);transition:opacity .16s ease,transform .16s ease}.sf-style-slot.is-saved{opacity:1;transform:scale(1)}@media(prefers-reduced-motion:reduce){.sf-style-slot{transition:none}}.sf-style-body{padding:2px 0 12px}.sf-select{padding:5px 8px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-text);font-size:12px;cursor:pointer}.sf-rung--glyph{flex:0 0 34px;font-size:13px;line-height:18px;text-align:center}.sf-rung--glyph:disabled{color:var(--sf-disabled);cursor:not-allowed}.sf-rung--glyph:disabled:hover{background:var(--sf-field-bg)}.sf-theme-list{display:flex;flex-direction:column;gap:8px;margin-top:max(var(--es-row-gap),var(--es-rhythm-group-first))}.sf-theme-card,.sf-secttheme-btn{border:1px solid var(--sf-input-border);border-radius:9px;overflow:hidden;background:var(--sf-panel)}.sf-theme-card:hover,.sf-secttheme-btn:hover{border-color:var(--sf-muted)}.sf-theme-card.is-selected{border-color:var(--sf-accent);box-shadow:0 0 0 2px var(--sf-accent-ring)}.sf-theme-pick{display:block;width:100%;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.sf-theme-page{display:flex;flex-direction:column;gap:4px;padding:10px 12px}.sf-theme-eyebrow{font-size:7.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1}.sf-theme-headline{font-size:14px;font-weight:750;letter-spacing:-.01em;line-height:1.1}.sf-theme-body{font-size:9.5px;line-height:1.4;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-theme-row{display:flex;align-items:center;gap:7px;margin-top:1px}.sf-theme-btn{font-size:8.5px;font-weight:700;letter-spacing:.02em;padding:5px 11px;border-radius:4px;white-space:nowrap;flex:none}.sf-theme-mini{flex:1;min-width:0;height:22px;border-radius:3px;border:1px solid;display:flex;align-items:center;justify-content:center;font-size:7.5px;font-weight:600;opacity:.75}.sf-theme-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px 6px 12px;background:var(--sf-hover)}.sf-theme-card.is-selected .sf-theme-foot{color:var(--sf-accent-text)}.sf-theme-name{font-size:11px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-theme-warn{flex:none;margin-left:auto;font-size:10px;font-weight:700;color:#b45309;white-space:nowrap}.sf-theme-warn+.sf-theme-edit{margin-left:8px}.sf-theme-name{margin-right:auto}.sf-theme-edit{flex:none;border:1px solid var(--sf-input-border);background:var(--sf-panel);border-radius:4px;font:inherit;font-size:10px;font-weight:700;letter-spacing:.03em;color:var(--sf-text-secondary);padding:3px 8px;line-height:1.3;cursor:pointer}.sf-theme-edit:hover{border-color:var(--sf-muted);color:var(--sf-text)}.sf-theme-edit.is-open{background:var(--sf-accent);border-color:var(--sf-accent);color:#fff}.sf-theme-colours{padding:0 12px 12px}.sf-theme-colours[hidden]{display:none}.sf-theme-colours>.es-field:first-child{margin-top:var(--es-rhythm-group-first)}.sf-theme-reset{width:100%;margin-top:var(--es-rhythm-between-tight);border:0;background:none;font:inherit;font-size:10.5px;font-weight:600;color:var(--sf-accent-text);padding:0;cursor:pointer;text-align:left}.sf-theme-reset:disabled{color:var(--sf-muted);cursor:default}.sf-theme-add{display:flex;align-items:center;gap:6px;margin-top:8px;border:0;background:none;font:inherit;font-size:12px;font-weight:600;color:var(--sf-accent-text);padding:4px 0;cursor:pointer}.sf-theme-add:hover{text-decoration:underline}.sf-colour-lede{margin-top:-3px;margin-bottom:10px}.sf-colour-pair{border:1px solid var(--sf-divider);border-radius:var(--sf-row-radius);padding:2px 11px 11px;background:var(--sf-app-bg)}.sf-colour-row{margin-top:9px;display:flex;align-items:center;justify-content:space-between;gap:12px}.sf-colour-mode{font-size:12px;font-weight:500;color:var(--sf-text-secondary)}.sf-colour-mode small{display:block;margin-top:1px;font-size:11px;font-weight:400;color:var(--sf-muted)}.sf-readability{margin-top:10px;padding:11px 12px 12px;border:1px solid var(--sf-divider);border-radius:var(--sf-row-radius)}.sf-readability-head{margin-bottom:7px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sf-muted)}.sf-readability-row{display:flex;align-items:center;gap:9px;padding:4px 0;font-size:12px}.sf-readability-who{flex:1;color:var(--sf-text-secondary)}.sf-readability-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--sf-disabled)}.sf-readability-val{color:var(--sf-muted)}.sf-readability-dot.is-good{background:var(--sf-muted)}.sf-readability-dot.is-large-only{background:var(--sf-warning)}.sf-readability-dot.is-hard{background:var(--sf-danger)}.sf-readability-val.is-good{color:var(--sf-text-secondary)}.sf-readability-val.is-large-only{color:var(--sf-warning)}.sf-readability-val.is-hard{color:var(--sf-danger)}.sf-readability-advice{margin-top:7px;font-size:11px;line-height:1.6;color:var(--sf-muted)}.sf-readability-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.sf-readability-suggestion{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid var(--sf-input-border);border-radius:var(--sf-field-radius);background:var(--sf-field-bg);color:var(--sf-btn-text);font-size:11px;font-variant-numeric:tabular-nums;cursor:pointer}.sf-readability-suggestion:hover{background:var(--sf-hover)}.sf-readability-chip{width:9px;height:9px;flex:none;border-radius:2px;box-shadow:inset 0 0 0 1px #0000002e}.sf-slider{display:flex;align-items:center;gap:12px}.es-field-ctl>.sf-slider{flex:1;min-width:0}.sf-slider input[type=range]{flex:1;min-width:0;height:18px;margin:0;padding:0;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none}.sf-slider input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:var(--sf-track-bg);box-shadow:inset 0 0 0 1px var(--sf-input-border)}.sf-slider input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:var(--sf-track-bg);box-shadow:inset 0 0 0 1px var(--sf-input-border)}.sf-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--sf-knob);border:2px solid var(--sf-accent);box-shadow:0 1px 2px #0000002e;transition:transform .12s}.sf-slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--sf-knob);border:2px solid var(--sf-accent);box-shadow:0 1px 2px #0000002e;transition:transform .12s}.sf-slider input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.12)}.sf-slider input[type=range]:hover::-moz-range-thumb{transform:scale(1.12)}.sf-slider.has-notch{position:relative}.sf-slider.has-notch:before{content:"";position:absolute;top:50%;left:calc(7px + (100% - 14px) * var(--sf-notch));width:2px;height:10px;margin-top:-5px;border-radius:1px;background:var(--sf-input-border);pointer-events:none}.sf-slider-val{font-size:12px;color:var(--sf-icon);font-variant-numeric:tabular-nums;min-width:42px;text-align:right;padding:0;border:none;background:none;font-family:inherit;line-height:inherit}button.sf-slider-val{cursor:text;border-radius:4px}button.sf-slider-val:hover{color:var(--sf-text);box-shadow:inset 0 0 0 1px var(--sf-input-border)}input.sf-slider-typed{width:42px;color:var(--sf-text);box-shadow:inset 0 0 0 1px var(--sf-accent);border-radius:4px;padding:1px 3px;touch-action:manipulation}input.sf-slider-typed:focus{outline:none}.sf-preview-pin{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:9px 14px;background:var(--sf-panel)}.sf-preview-pin-text{display:flex;flex-direction:column;gap:1px;min-width:0}.sf-preview-pin-label{font-size:13px;font-weight:500;color:var(--sf-text)}.sf-preview-pin-hint{font-size:11px;color:var(--sf-muted)}.sf-colstep{display:flex;align-items:center;gap:6px}.sf-colstep-btn{width:22px;height:22px;padding:0;border:1px solid var(--sf-line);border-radius:6px;background:transparent;color:var(--sf-text);font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.sf-colstep-btn:hover:not(:disabled){border-color:var(--sf-accent)}.sf-colstep-btn:disabled{opacity:.4;cursor:default}.sf-colstep-value{min-width:14px;text-align:center;font-size:13px;font-weight:500;color:var(--sf-text)}.sf-checkbox{cursor:pointer}.sf-checkbox input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--sf-accent);cursor:pointer}.sf-locked{opacity:.5;pointer-events:none}.sf-seg2 button:focus-visible,.sf-readability-suggestion:focus-visible,.sf-swatch:focus-visible,.sf-field-eye:focus-visible,.sf-inherit--over:focus-visible,.sf-inherit--following:focus-visible,.sf-slider input[type=range]:focus-visible,.sf-insp-body select:focus-visible,.sf-checkbox input[type=checkbox]:focus-visible,.sf-textlist-x:focus-visible,.sf-textlist-add:focus-visible{outline:2px solid var(--sf-accent);outline-offset:2px}.sf-seg2 button:focus-visible{outline-offset:-1px}.sf-seg2{display:flex;gap:3px;background:var(--sf-track-bg);border:1px solid var(--sf-input-border);border-radius:9px;padding:3px}.sf-seg2 button{flex:1;border:none;background:transparent;border-radius:6px;padding:6px 8px;font-size:12px;font-weight:500;color:var(--sf-icon);cursor:pointer;transition:background .12s,color .12s,box-shadow .12s}@container (width < 280px){.sf-seg2 button{padding-inline:6px}}.sf-panel .flex-shrink-0:has(.es-segs-fit){flex-basis:100%;min-width:0}.sf-seg2 button:hover:not(.is-active){color:var(--sf-text-secondary);background:var(--sf-hover)}.sf-seg2 button.is-active{background:var(--sf-raised);color:var(--sf-text-strong);box-shadow:0 1px 2px #0000001a,0 0 0 1px #0000000a}.sf-seg2[data-disabled]{opacity:.5;cursor:not-allowed}.sf-seg2[data-disabled] button{cursor:not-allowed;color:var(--sf-disabled)}.sf-seg2[data-disabled] button.is-active{color:var(--sf-text-secondary)}.sf-seg2[data-disabled] button:hover:not(.is-active){background:transparent;color:var(--sf-disabled)}.sf-seg2 button>svg{display:block;margin:0 auto}.sf-textlist{display:flex;flex-direction:column;gap:6px}.es-field-ctl>.sf-textlist{flex:1 1 auto;min-width:0}.sf-textlist-row{display:flex;align-items:center;gap:6px}.sf-textlist-row input{flex:1;min-width:0}.sf-textlist>.es-copy-bar{margin-bottom:0}.sf-textlist-row.is-marking input{border-color:var(--sf-accent);box-shadow:0 0 0 1px var(--sf-accent-tint)}.sf-textlist-x{flex:none;width:28px;height:32px;border:none;background:transparent;color:var(--sf-muted);border-radius:7px;cursor:pointer;font-size:17px;line-height:1}.sf-textlist-x:hover{background:var(--sf-danger-tint);color:var(--sf-danger)}.sf-textlist-add{align-self:flex-start;margin-top:2px;padding:4px 2px;border:none;background:transparent;color:var(--sf-accent);font-size:12px;font-weight:500;cursor:pointer}.sf-textlist-add:hover{text-decoration:underline}.sf-blogsource{display:flex;flex-direction:column;gap:9px}.sf-blogsource-status{margin:0;font-size:12px;color:var(--sf-text-secondary)}.sf-blogsource-status[data-state=error]{color:var(--sf-danger)}.sf-source-open{display:inline;padding:0;border:0;background:none;font:inherit;color:var(--sf-accent-text);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.sf-source-open:hover{color:var(--sf-accent)}.sf-source-open:focus-visible{outline:2px solid var(--sf-accent);outline-offset:2px;border-radius:2px}.sf-blogsource-btn{align-self:flex-start;padding:7px 14px;border:1px solid var(--sf-input-border);border-radius:8px;background:transparent;color:var(--sf-text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.sf-blogsource-btn:hover:not(:disabled){border-color:var(--sf-accent);color:var(--sf-accent)}.sf-blogsource-btn:disabled{opacity:.55;cursor:default}.sf-blogsource-hint{margin:0;font-size:11px;line-height:1.4;color:var(--sf-muted)}.sf-formpicker{display:flex;flex-direction:column;gap:9px}.sf-formsummary-caption{margin-bottom:4px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--sf-text-secondary)}.sf-formsummary-fields{margin:0;padding-left:18px;font-size:12px;line-height:1.55;color:var(--sf-text-secondary)}.sf-formsummary-warn{margin:0;font-size:11.5px;line-height:1.45;color:var(--sf-danger)}.sf-formsummary-actions{display:flex;flex-wrap:wrap;gap:8px}.sf-image-btn{border:1px solid var(--sf-btn-border);background:var(--sf-panel);color:var(--sf-btn-text);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;cursor:pointer;transition:background .12s}.sf-image-btn:hover:not(:disabled){background:var(--sf-hover)}.sf-image-btn:disabled{cursor:default;opacity:.55}.sf-image-status{margin-top:6px;font-size:11px;color:var(--sf-muted)}.sf-image-status--error{color:var(--sf-danger)}ul.sf-image-status{list-style:none;padding:0}.sf-image-status--error li{color:inherit;font-size:inherit}.sf-image-slot-inert{border:1.5px dashed var(--sf-input-border);border-radius:9px;padding:12px 14px;font-size:12px;line-height:1.5;color:var(--sf-muted);background-image:repeating-linear-gradient(45deg,var(--sf-hatch) 0 1px,transparent 1px 12px)}.sf-focus{display:flex;flex-direction:column;gap:6px}.sf-focus-canvas{display:flex;align-items:center;justify-content:center;min-height:150px;padding:0;border:1px solid var(--sf-line);border-radius:6px;background:var(--sf-preview-bg);cursor:crosshair;touch-action:none}.sf-focus-canvas:focus-visible{outline:2px solid var(--sf-accent);outline-offset:1px}.sf-focus-pane{position:relative;display:inline-block;max-width:100%;line-height:0}.sf-focus-img{display:block;width:auto;height:auto;max-width:100%;max-height:150px;object-fit:contain}.sf-focus-cross{position:absolute;background:#ffffff73;pointer-events:none}.sf-focus-cross--h{right:0;left:0;height:1px}.sf-focus-cross--v{top:0;bottom:0;width:1px}.sf-focus-marker{position:absolute;width:18px;height:18px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1.5px #0000008c,0 1px 5px #0000007f;transform:translate(-50%,-50%);pointer-events:none}.sf-focus-bar{display:flex;align-items:center;gap:8px}.sf-focus-hint{min-width:0;flex:1;font-size:11px;color:var(--sf-muted)}.es-insp-rows:has([data-sf-focusing]) .es-pick-image-frame{display:none}.sf-note{padding:14px 16px;font-size:13px;line-height:1.5;color:var(--sf-muted)}.sf-note p+p{margin-top:8px}.sf-note strong{color:var(--sf-text);font-weight:600}.sf-note-detail{margin-top:10px;font-size:11px;color:var(--sf-muted);opacity:.75;word-break:break-all}.sf-note--error{color:var(--sf-danger);background:var(--sf-danger-tint);border-radius:6px}.sf-part-back{display:flex;align-items:center;gap:6px;width:calc(100% + 28px);margin:0 -14px 10px;padding:9px 14px;background:none;border:0;font:inherit;font-size:12px;color:var(--sf-muted);text-align:left;cursor:pointer}.sf-part-back:hover{color:var(--sf-text);background:var(--sf-chip-bg)}.sf-part-back span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sf-part-style{position:relative;margin:0 0 4px;padding:11px 13px;border:1px solid var(--sf-divider);border-radius:12px;background:var(--sf-track-bg)}.sf-part-style.has-overrides{border-color:var(--sf-accent-ring)}.sf-part-style.has-overrides:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--sf-accent);border-radius:12px 0 0 12px}.sf-part-style-caption{margin-bottom:2px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sf-muted)}.sf-part-style-count{margin-bottom:3px;font-size:11px;font-weight:600;color:var(--sf-muted)}.sf-part-style-name{min-width:0;font-size:20px;line-height:1.15;letter-spacing:-.01em;color:var(--sf-text-strong);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sf-part-style-pick{position:relative}.sf-part-style-trigger{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer;min-width:0}.sf-part-style-trigger .sf-part-style-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-part-style-sign{margin-left:auto;width:16px;flex:none;text-align:center;color:var(--sf-muted);font-size:14px;line-height:1}.sf-part-style-trigger[aria-expanded=false] .sf-part-style-sign:before{content:"+"}.sf-part-style-trigger[aria-expanded=true] .sf-part-style-sign:before{content:"\2212"}.sf-part-style-trigger:focus-visible{outline:2px solid var(--sf-accent);outline-offset:2px;border-radius:3px}.sf-part-style-menu{position:absolute;z-index:30;left:0;right:0;box-shadow:0 8px 24px #0000002e}.sf-part-style-option{display:flex;align-items:baseline;gap:8px;width:100%;padding:7px 9px;border:0;background:none;text-align:left;font-size:13px;color:var(--sf-field-text);border-radius:max(calc(var(--sf-field-radius) - 2px),2px);cursor:pointer}.sf-part-style-option:hover{background:var(--sf-accent-ring)}.sf-part-style-option:focus-visible{outline:2px solid var(--sf-accent);outline-offset:-2px}.sf-part-style-option.is-on{background:var(--sf-accent-ring);font-weight:600}.sf-part-style-option-name{flex:0 0 auto;white-space:nowrap}.sf-part-style-option .sf-note{min-width:0;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-part-style-meta{margin-top:1px;font-size:11px;color:var(--sf-muted);font-variant-numeric:tabular-nums}.sf-part-style-top{display:flex;align-items:center;gap:9px;margin-top:8px}.sf-part-style-gap{flex:1}.sf-part-style-state{font-size:11.5px;color:var(--sf-text-secondary)}.sf-part-chip{display:inline-flex;align-items:center;border-radius:999px;padding:2px 9px;background:var(--sf-accent-tint);color:var(--sf-accent-text);font-size:10.5px;font-weight:700;font-variant-numeric:tabular-nums}.sf-part-link{border:0;background:none;padding:0;font:inherit;font-size:12px;font-weight:500;color:var(--sf-accent-text);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--sf-accent-ring)}.sf-part-link:hover{text-decoration-color:currentColor}.es-group-body>.sf-note{margin:12px 0 -4px;padding:0 0 0 2px}.sf-slot-rows>.sf-note{padding:10px 11px 12px}.sf-part-field.is-style-value>.es-field-head>.es-field-value,.sf-part-field.is-style-value>.es-field-head>.es-field-value>.sf-slider-val{color:var(--sf-muted)}.sf-part-select{width:100%;min-width:0}.sf-part-ink{display:flex;flex-direction:column;gap:8px;min-width:0}.sf-part-ink>.es-pick-colour>.es-pick-colour-row{align-self:flex-end}.sf-part-mark{width:18px;height:18px;flex:none;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:none;color:var(--sf-accent);cursor:pointer}.sf-part-mark-dot{transform-origin:center;transition:transform .15s ease,opacity .15s ease}.sf-part-mark-arrow{opacity:0;transition:opacity .15s ease}.sf-part-mark:hover .sf-part-mark-dot,.sf-part-mark:focus-visible .sf-part-mark-dot{transform:scale(0);opacity:0}.sf-part-mark:hover .sf-part-mark-arrow,.sf-part-mark:focus-visible .sf-part-mark-arrow{opacity:1}@media(prefers-reduced-motion:reduce){.sf-part-mark-dot,.sf-part-mark-arrow{transition:none}}.sf-part-text{margin-top:4px;margin-bottom:4px}.sf-part-text .sf-copybox textarea{min-height:84px;line-height:1.5;resize:vertical}.sf-entries{margin-top:32px}.sf-entries-head{margin:14px 0 4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sf-muted)}.sf-entry-eye{display:inline-flex;align-items:center;color:var(--sf-muted)}.sf-slot-rows .sf-add-card{padding:8px 11px;border-radius:0}.sf-image-drop{flex:1;min-width:0}.sf-image-drop.is-dragover .es-pick-image-slot{border-color:var(--sf-accent);background-color:var(--sf-accent-tint)}.sf-image-drop.is-dragover .es-pick-image-frame{outline:2px solid var(--sf-accent);outline-offset:-2px}.sf-gallery-filter{display:flex;gap:5px;flex-wrap:wrap}.sf-gallery-filter button{border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:999px;padding:4px 11px;font-size:11.5px;font-weight:600;color:var(--sf-icon);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.sf-gallery-filter button:hover{background:var(--sf-hover)}.sf-gallery-filter button[aria-pressed=true]{background:var(--sf-accent);border-color:var(--sf-accent);color:var(--sf-on-accent)}.sf-gallery-layouts{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:6px;margin-top:7px}.sf-linkstack{display:flex;flex-direction:column;gap:7px}.es-field-ctl>.sf-gallery-layouts,.es-field-ctl>.sf-gallery-filter,.es-field-ctl>.sf-linkstack{flex:1 1 auto;min-width:0}.sf-gallery-layouts button{border:1px solid var(--sf-input-border);background:var(--sf-field-bg);border-radius:7px;padding:5px;cursor:pointer;transition:border-color .12s,box-shadow .12s,background .12s}.sf-gallery-layouts button:hover{background:var(--sf-hover)}.sf-gallery-layouts button[aria-pressed=true]{border-color:var(--sf-accent);box-shadow:0 0 0 2px var(--sf-accent-ring);background:var(--sf-panel)}.sf-gallery-pic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:6px;grid-auto-flow:row dense;gap:2px}.sf-gallery-pic i{display:block;background:var(--sf-track-bg);border-radius:1.5px}.sf-gallery-layouts button[aria-pressed=true] .sf-gallery-pic i{background:var(--sf-accent)}.sf-gallery-count{font-size:10.5px;color:var(--sf-disabled);margin-top:7px}.sf-head-divider{width:1px;height:16px;margin:0 4px;background:var(--sf-line);flex:none}.es-btn-ghost.sf-head-textbtn{height:28px;padding:0 10px;font-size:12.5px;border-radius:7px;white-space:nowrap}.es-sidepanel.sf-panel-strip{width:40px;align-items:center;padding-top:12px}
package/dist/index.d.ts CHANGED
@@ -221,6 +221,22 @@ export type SaveExpectation = {
221
221
  };
222
222
 
223
223
  /** A set of pages: a website's, or one template's. */
224
+ /**
225
+ * A page a link can point at: enough to name it, and its layout — where its
226
+ * section anchors are read from, and how the editor tells which page holds a
227
+ * section a link may open in a particular state.
228
+ */
229
+ export interface LinkTargetPage {
230
+ id: string;
231
+ /** The page's handle. A link to the page is built from this. */
232
+ slug: string;
233
+ /** The page's name as a list shows it. */
234
+ label: string;
235
+ /** The page's layout, or null when the backend does not hand it out with the
236
+ * list. Without it the page is still a link target; its anchors are not. */
237
+ layout: PageLayout | null;
238
+ }
239
+
224
240
  export interface WebsitePages {
225
241
  /** The rows the page list navigates between. */
226
242
  list(scope?: SiteScope): Promise<EditorPageRow[]>;
@@ -244,6 +260,12 @@ export interface WebsitePages {
244
260
  create?(input: NewPageInput): Promise<EditorPageRow>;
245
261
  /** Delete a page from the page list. */
246
262
  remove?(id: string): Promise<void>;
263
+ /**
264
+ * Every page of the website a link may point at, each with its layout — in
265
+ * ONE call, for the link picker. Optional: without it the picker lists the
266
+ * rows of {@link list} and offers no section anchors.
267
+ */
268
+ linkTargets?(scope?: SiteScope): Promise<LinkTargetPage[]>;
247
269
  }
248
270
 
249
271
  /** The other operator, as the editor's notices describe them. */
@@ -310,6 +332,13 @@ export interface WebsiteMedia {
310
332
  /** RESERVED: upload a file dropped on a media field. 0.4.0 hands a dropped
311
333
  * file to the host's media panel or picker and does not call it. */
312
334
  upload?(file: File): Promise<HostPickedMedia>;
335
+ /**
336
+ * The largest file a media field takes, in bytes. A larger one is refused
337
+ * where it was dropped, with the reason, before it is handed to the host's
338
+ * media panel or picker. Without it the editor refuses no file for its size —
339
+ * the host's own picker has the say.
340
+ */
341
+ maxUploadBytes?: number;
313
342
  }
314
343
 
315
344
  /** One node of a page document: a section or a block, with its own props. */
@@ -358,13 +387,157 @@ export interface WebsitePreview {
358
387
  href(slug: string): string;
359
388
  }
360
389
 
390
+ /**
391
+ * A blog post, as the editor lists one: enough to name it, link to it and draw a
392
+ * card from it. Published posts only — a draft is not something a page links to.
393
+ */
394
+ export interface BlogPostRow {
395
+ /** The post's stable handle. A block that is linked to a post stores this. */
396
+ slug: string;
397
+ title: string;
398
+ /** The standfirst. Empty when the post has none. */
399
+ excerpt: string;
400
+ /** The post's editorial category, as its author typed it. Empty when none. */
401
+ category: string;
402
+ /** The cover picture's address, absolute — or "" when the post has none. */
403
+ coverImage: string;
404
+ /** When it was published (ISO 8601), or null. */
405
+ publishedAt: string | null;
406
+ /** Where the post lives on the website, as a path (`/journal/first-post`). */
407
+ href: string;
408
+ }
409
+
410
+ /**
411
+ * The website's blog. Optional: without it the editor lists no post — a block's
412
+ * "Blog post source" shows only what it is already linked to, and the link
413
+ * picker offers no "Blog post" (`EditorCapabilities.hasBlog`).
414
+ */
415
+ export interface WebsiteBlog {
416
+ /** The website's published posts, in the order the website lists them. */
417
+ posts(scope?: SiteScope): Promise<BlogPostRow[]>;
418
+ }
419
+
420
+ /** The website's live-chat bubble: whether it shows, and its three lines.
421
+ * A blank line means "the widget's own wording". */
422
+ export interface ChatSettings {
423
+ enabled: boolean;
424
+ title: string;
425
+ subtitle: string;
426
+ greeting: string;
427
+ }
428
+
429
+ /**
430
+ * The website's live chat. Optional: without it the editor's "Live chat" panel
431
+ * previews a change and saves nothing, and starts from the house default.
432
+ */
433
+ export interface WebsiteChat {
434
+ get(scope?: SiteScope): Promise<ChatSettings>;
435
+ /** Store the lines that changed; answer the settings as they now stand. */
436
+ update(patch: Partial<ChatSettings>, scope?: SiteScope): Promise<ChatSettings>;
437
+ }
438
+
439
+ /**
440
+ * A website's appearance as it is stored: its colour themes, type, corners,
441
+ * cards and widths — the row behind the Site styles panel. The keys are the
442
+ * stored ones. Every key but `id` and the first run is optional or nullable:
443
+ * absent and `null` both mean "not set", and the website draws the built-in
444
+ * look for it.
445
+ */
446
+ export interface SiteThemeRow {
447
+ id: string;
448
+ selected_preset: number;
449
+ theme_presets: {
450
+ text: string;
451
+ accent: string;
452
+ background?: string;
453
+ surface?: string;
454
+ line?: string;
455
+ muted?: string;
456
+ button?: string;
457
+ buttonInk?: string;
458
+ }[];
459
+ accent_color?: string | null;
460
+ heading_font: string;
461
+ body_font: string;
462
+ accent_font: string;
463
+ label_font: string;
464
+ default_mode: "light" | "dark" | "auto";
465
+ show_theme_switch: boolean;
466
+ heading_scale: number;
467
+ body_scale: number;
468
+ label_scale: number;
469
+ heading_size_large_px?: number | null;
470
+ heading_size_medium_px?: number | null;
471
+ heading_size_small_px?: number | null;
472
+ accent_size_px?: number | null;
473
+ body_size_px?: number | null;
474
+ label_size_px?: number | null;
475
+ corner_style: "square" | "small" | "large";
476
+ corner_radius_px?: number | null;
477
+ heading_compression: "normal" | "tight" | "compressed";
478
+ card_shadow?: "none" | "soft" | "lifted" | null;
479
+ shadow_color?: string | null;
480
+ card_gap: "tight" | "normal" | "roomy";
481
+ hover_effect?: "none" | "lift" | "highlight" | null;
482
+ heading_case?: "authored" | "sentence" | null;
483
+ heading_weight?: number | null;
484
+ heading_weight_strong?: number | null;
485
+ heading_2_weight?: number | null;
486
+ heading_3_weight?: number | null;
487
+ heading_2_case?: "authored" | "sentence" | null;
488
+ heading_3_case?: "authored" | "sentence" | null;
489
+ heading_max_px?: number | null;
490
+ site_width?: number | null;
491
+ site_gutter?: number | null;
492
+ block_gap?: number | null;
493
+ hero_background_follows_width?: boolean | null;
494
+ photography_grayscale?: boolean | null;
495
+ word_styles?: Partial<Record<string, Record<string, unknown> | null>> | null;
496
+ }
497
+
498
+ /** What may be written: any of a {@link SiteThemeRow} but its own id. */
499
+ export type SiteThemeRowPatch = Partial<Omit<SiteThemeRow, "id">>;
500
+
501
+ /**
502
+ * The website's appearance. Optional: without it the editor has no stored
503
+ * appearance to open on or save to — no Site styles — and a website is drawn
504
+ * in the built-in look.
505
+ */
506
+ export interface WebsiteTheme {
507
+ /** The row behind a website — its own, or the one it falls back to. Reading
508
+ * must not create one. */
509
+ get(scope?: SiteScope): Promise<SiteThemeRow>;
510
+ /** Store the keys that changed; answer the row as it now stands. */
511
+ update(patch: SiteThemeRowPatch, scope?: SiteScope): Promise<SiteThemeRow>;
512
+ }
513
+
514
+ /** The website's social profile links: one address per platform, under the
515
+ * platform's own name (`instagram`, `facebook`, …). "" where there is none. */
516
+ export type SocialLinkSettings = Record<string, string>;
517
+
518
+ /**
519
+ * The website's social links. Optional: without it the editor's Social links
520
+ * rows — and a footer's Social block — show no saved link and save none.
521
+ */
522
+ export interface WebsiteSocial {
523
+ get(scope?: SiteScope): Promise<SocialLinkSettings>;
524
+ /**
525
+ * Store the links named; answer every link as it now stands. Reject
526
+ * `invalid` with `fields` — the platform refused, and the reason to show
527
+ * beside its box — when an address is not one.
528
+ */
529
+ update(patch: SocialLinkSettings, scope?: SiteScope): Promise<SocialLinkSettings>;
530
+ }
531
+
361
532
  /**
362
533
  * Everything the editor asks a server for.
363
534
  *
364
535
  * Other groups the editor still reads from the EFFICIENT client directly — the
365
- * site's theme, header, social links and live chat, menus, blog, forms and the
366
- * catalog — join this interface as optional members when their call sites move.
367
- * Until then a backend other than EFFICIENT's gets the page editor without them.
536
+ * site's header, menus, forms and the catalog — join this interface as
537
+ * optional members when their call sites move. Until then a backend other than
538
+ * EFFICIENT's gets the page editor without them. The blog (`blog`), the live
539
+ * chat (`chat`), the social links (`social`) and the site's appearance
540
+ * (`theme`) have crossed.
368
541
  */
369
542
  export interface WebsiteBackend {
370
543
  pages: WebsitePages;
@@ -374,6 +547,10 @@ export interface WebsiteBackend {
374
547
  sectionTemplates?: WebsiteSectionTemplates;
375
548
  templates?: WebsiteTemplates;
376
549
  preview?: WebsitePreview;
550
+ blog?: WebsiteBlog;
551
+ chat?: WebsiteChat;
552
+ social?: WebsiteSocial;
553
+ theme?: WebsiteTheme;
377
554
  }
378
555
 
379
556
  /** Why a backend call failed, in the editor's own terms. */
@@ -405,10 +582,13 @@ export class WebsiteBackendError extends Error {
405
582
  readonly conflict?: SaveConflict;
406
583
  /** `lock-taken`: who holds the page. */
407
584
  readonly holder?: LockHolder;
585
+ /** `invalid`: the inputs that were refused, by name, each with the reason —
586
+ * when the backend can say which. The editor shows it beside that input. */
587
+ readonly fields?: Readonly<Record<string, string>>;
408
588
  constructor(
409
589
  kind: WebsiteBackendErrorKind,
410
590
  message?: string,
411
- detail?: { conflict?: SaveConflict; holder?: LockHolder; cause?: unknown },
591
+ detail?: { conflict?: SaveConflict; holder?: LockHolder; fields?: Readonly<Record<string, string>>; cause?: unknown },
412
592
  );
413
593
  }
414
594