.jf-widget{min-width:0;padding:var(--jf-ui-space-6);border-radius:var(--jf-ui-radius-card);color:var(--jf-ui-text)}.jf-widget--card{border:1px solid var(--jf-ui-border);background:var(--jf-ui-surface)}.jf-widget--outline{border:1px solid var(--jf-ui-border-strong);background:0 0}.jf-widget--plain{background:0 0;padding-inline:0}.jf-widget-divider{align-items:center;gap:var(--jf-ui-space-3);margin-block:var(--jf-ui-space-6);color:var(--jf-ui-text-muted);font-size:14px;display:flex}.jf-widget-divider:before,.jf-widget-divider:after{content:"";background:var(--jf-ui-border);flex:1;height:1px}.jf-widget-divider:not(:has(span)):after{display:none}.jf-widget-dialog{border:1px solid var(--jf-ui-border);border-radius:var(--jf-ui-radius-card);background:var(--jf-ui-surface);width:min(560px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);color:var(--jf-ui-text);box-shadow:var(--jf-ui-shadow);font-family:var(--jf-ui-font-body);padding:0}.jf-widget-dialog[open]{flex-direction:column;animation:.18s ease-out jf-widget-enter;display:flex}.jf-widget-dialog::backdrop{background:#0000007a}.jf-widget-dialog--modal{margin:auto;position:fixed;inset:0}.jf-widget-dialog--drawer{height:var(--widget-viewport,100dvh);border-width:0 0 0 1px;border-radius:0;width:min(440px,100%);margin:0;position:fixed;inset:0 0 0 auto;overflow:hidden}.jf-widget-dialog--drawer .jf-widget-dialog__body{flex:1}.jf-widget-dialog--drawer .jf-widget-dialog__header{padding-top:max(var(--jf-ui-space-6),env(safe-area-inset-top))}.jf-widget-dialog--drawer .jf-widget-dialog__footer{padding-bottom:max(var(--jf-ui-space-5),env(safe-area-inset-bottom))}.jf-widget-dialog--sheet{border-radius:var(--jf-ui-radius-card) var(--jf-ui-radius-card) 0 0;width:100%;max-height:85dvh;padding-bottom:env(safe-area-inset-bottom);margin:0 auto;position:fixed;inset:auto 0 0}.jf-widget-dialog__header{justify-content:space-between;align-items:start;gap:var(--jf-ui-space-4);padding:var(--jf-ui-space-6);border-bottom:1px solid var(--jf-ui-border);flex-shrink:0;display:flex}.jf-widget-dialog__header h3{font:700 20px/1.4 var(--jf-ui-font-heading);margin:0}.jf-widget-dialog__header p{color:var(--jf-ui-text-muted);margin:6px 0 0;font-size:14px;line-height:1.5}.jf-widget-dialog__body{overscroll-behavior:contain;padding:var(--jf-ui-space-6);min-height:0;font-size:16px;line-height:1.6;overflow:auto}.jf-widget-dialog__body p{margin-top:0}.jf-widget-dialog__footer{justify-content:flex-end;gap:var(--jf-ui-space-3);padding:var(--jf-ui-space-5) var(--jf-ui-space-6);border-top:1px solid var(--jf-ui-border);flex-wrap:wrap;flex-shrink:0;display:flex}.jf-sheet-handle{background:var(--jf-ui-border-strong);border-radius:4px;width:40px;height:4px;margin:12px auto 0}.jf-focus-group{width:fit-content;max-width:100%;position:relative}.jf-focus-group__panel{overscroll-behavior:contain;z-index:35;gap:var(--jf-ui-space-4);width:min(300px,100vw - 80px);padding:var(--jf-ui-space-5);border:1px solid var(--jf-ui-border);border-radius:var(--jf-ui-radius-card);background:var(--jf-ui-surface-raised);box-shadow:var(--jf-ui-shadow);color:var(--jf-ui-text);margin:0;display:grid;position:fixed;inset:auto;overflow:auto}@keyframes jf-widget-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.jf-widget-dialog[open]{animation:none}}.jf-widget-dialog{max-height:calc(var(--widget-viewport,100dvh) - 32px);outline:none}.jf-widget-dialog[data-state=closing]{pointer-events:none;animation:.2s ease-in forwards jf-widget-exit}.jf-widget-dialog--drawer{max-height:var(--widget-viewport,100dvh)}.jf-widget-dialog--drawer[open]{animation:.18s ease-out jf-drawer-enter}.jf-widget-dialog--drawer[data-state=closing]{animation:.2s ease-in forwards jf-drawer-exit}.jf-widget-dialog--sheet{max-height:calc(var(--widget-viewport,100dvh) - max(24px,env(safe-area-inset-top)));transform:translateY(var(--sheet-drag,0px));transition:transform .18s ease-out;overflow:hidden}.jf-widget-dialog--sheet[open]{animation:.24s cubic-bezier(.22,1,.36,1) jf-sheet-enter}.jf-widget-dialog--sheet[data-state=closing]{animation:.2s ease-in forwards jf-sheet-exit}.jf-widget-dialog--sheet[data-dragging]{transition:none;animation:none}.jf-sheet-grip{cursor:grab;touch-action:none;background:0 0;border:0;flex:0 0 32px;place-items:center;width:100%;height:32px;padding:0;display:grid}.jf-sheet-grip .jf-sheet-handle{margin:0}.jf-widget-dialog--sheet .jf-widget-dialog__header{padding:4px 24px 20px}.jf-widget-dialog--sheet .jf-widget-dialog__body{-webkit-overflow-scrolling:touch;padding:20px 24px}.jf-widget-dialog--sheet .jf-widget-dialog__footer{padding:16px 24px max(16px,env(safe-area-inset-bottom))}.jf-widget-dialog--sheet .jf-action{min-height:44px}@keyframes jf-sheet-enter{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes jf-sheet-exit{to{opacity:.6;transform:translateY(100%)}}@keyframes jf-widget-exit{to{opacity:0;transform:translateY(8px)}}@keyframes jf-drawer-enter{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes jf-drawer-exit{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.jf-widget-dialog[open],.jf-widget-dialog[data-state=closing]{transition:none;animation:none}}.jf-widget-dialog--wide{width:min(1120px,100vw - 32px)}@media (width<=680px){.jf-widget-dialog__header,.jf-widget-dialog__body,.jf-widget-dialog__footer{padding:var(--jf-ui-space-4)}}.jf-editor-workbench-shell{min-width:0;container-type:inline-size}.jf-editor-workbench{align-items:start;gap:var(--jf-ui-space-3);grid-template-columns:minmax(340px,35fr) minmax(430px,65fr);min-width:0;display:grid}.jf-editor-workbench__form{gap:var(--jf-ui-space-3);min-width:0;display:grid}.jf-editor-workbench__preview{top:var(--jf-ui-space-4);align-self:start;min-width:0;position:sticky}.jf-editor-accordion{border:1px solid var(--jf-ui-border);border-radius:var(--jf-ui-radius-card);background:var(--jf-ui-surface);min-width:0}.jf-editor-accordion>summary{align-items:center;gap:var(--jf-ui-space-3);padding:var(--jf-ui-space-5);cursor:pointer;font-family:var(--jf-ui-font-heading);color:var(--jf-ui-text);font-weight:700;list-style:none;display:flex}.jf-editor-accordion>summary::-webkit-details-marker{display:none}.jf-editor-accordion>summary>svg{width:18px;height:18px;color:var(--jf-ui-text-muted);flex-shrink:0}.jf-editor-accordion>summary>.jf-editor-accordion__title{flex:1;min-width:0}.jf-editor-accordion>summary>.jf-editor-accordion__badge{flex:none;display:inline-flex}.jf-editor-accordion__badge .jf-status{white-space:nowrap;gap:4px}.jf-banner-position{border-radius:var(--jf-ui-control-radius);background:var(--jf-ui-surface-soft);width:28px;height:28px;color:var(--jf-ui-text-muted);font-variant-numeric:tabular-nums;flex:0 0 28px;place-items:center;font-size:12px;display:grid}.jf-banner-order{gap:var(--jf-ui-space-3);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.jf-banner-order__arrows{gap:var(--jf-ui-space-2);display:flex}.jf-banner-order>.jf-field{grid-template-rows:minmax(20px,auto) minmax(var(--jf-ui-control-height),auto)}.jf-banner-order__arrows .jf-action{width:var(--jf-ui-control-height);min-height:var(--jf-ui-control-height);padding:0}.jf-editor-accordion[open]>summary>svg:last-child{transform:rotate(180deg)}.jf-editor-accordion>summary:focus-visible{outline:3px solid var(--jf-ui-focus-ring);outline-offset:2px;border-radius:var(--jf-ui-radius-card)}.jf-editor-accordion__body{gap:var(--jf-ui-space-5);padding:0 var(--jf-ui-space-5) var(--jf-ui-space-5);min-width:0;display:grid}.jf-editor-workbench--tablet{grid-template-columns:minmax(340px,1fr) minmax(430px,min(65%,720px))}.jf-editor-workbench--mobile{grid-template-columns:minmax(340px,1fr) minmax(430px,min(65%,460px))}@container (width<=820px){.jf-editor-workbench{grid-template-columns:minmax(0,1fr)}.jf-editor-workbench__preview{width:100%;max-width:100%;position:static}}@media (prefers-reduced-motion:no-preference){.jf-editor-workbench{transition:grid-template-columns .2s}}.jf-focus-group__panel::backdrop{pointer-events:none;background:0 0}.jf-editor-section{gap:var(--jf-ui-space-4);min-width:0;display:grid}.jf-editor-section+.jf-editor-section{border-top:1px solid var(--jf-ui-border);padding-top:var(--jf-ui-space-5);margin-top:var(--jf-ui-space-2)}.jf-editor-section>header{justify-content:space-between;align-items:flex-start;gap:var(--jf-ui-space-3);display:flex}.jf-editor-section h3{font:700 var(--jf-ui-font-size-sm)/1.4 var(--jf-ui-font-heading);margin:0}.jf-editor-section>header p{margin:var(--jf-ui-space-1) 0 0;color:var(--jf-ui-text-muted);font-size:var(--jf-ui-font-size-xs)}.jf-editor-section__body{gap:var(--jf-ui-space-4);min-width:0;display:grid}.jf-viewport-preview{padding:var(--jf-ui-space-4);gap:var(--jf-ui-space-3);min-width:0;display:grid}.jf-viewport-preview__scale,.jf-viewport-preview__hint{font-size:var(--jf-ui-font-size-xs);color:var(--jf-ui-text-muted);margin:0}.jf-viewport-preview__available{border:1px solid var(--jf-ui-border);border-radius:var(--jf-ui-control-radius);background:var(--jf-ui-surface-soft);width:100%;min-width:0;overflow:hidden}.jf-viewport-preview__stage{max-width:100%;margin-inline:auto;position:relative;overflow:hidden}.jf-viewport-preview iframe{transform-origin:0 0;background:var(--jf-ui-surface);border:0;max-width:none;position:absolute;top:0;left:0}.jf-preview-dock{justify-content:space-between;align-items:center;gap:var(--jf-ui-space-3);width:max-content;padding:var(--jf-ui-space-3);border:1px solid var(--jf-ui-border);border-radius:var(--jf-ui-radius-card);background:var(--jf-ui-surface);color:var(--jf-ui-text);box-shadow:var(--jf-ui-shadow);flex-wrap:wrap;max-width:calc(100vw - 32px);display:flex}.jf-preview-dock.is-floating{right:var(--jf-ui-space-4);bottom:max(var(--jf-ui-space-4),env(safe-area-inset-bottom));z-index:40;position:fixed}.jf-preview-dock .jf-action{white-space:normal}.jf-editor-accordion:has(.jf-banner-position)>summary{column-gap:var(--jf-ui-space-3);row-gap:var(--jf-ui-space-2);grid-template-columns:28px minmax(0,1fr) 18px;display:grid}.jf-editor-accordion:has(.jf-banner-position)>summary>.jf-banner-position{grid-area:1/1/3}.jf-editor-accordion:has(.jf-banner-position)>summary>.jf-editor-accordion__title{grid-area:1/2}.jf-editor-accordion:has(.jf-banner-position)>summary>.jf-editor-accordion__badge{grid-area:2/2;justify-self:start}.jf-editor-accordion:has(.jf-banner-position)>summary>svg:last-child{grid-area:1/3/3}
