@layer json-pdf-designer{:where(.jpd-designer,.jpd-modal__panel,.jpd-card,.jpd-page,.jpd-field),:where(.jpd-designer,.jpd-modal__panel,.jpd-card,.jpd-page,.jpd-field) *,:where(.jpd-designer,.jpd-modal__panel,.jpd-card,.jpd-page,.jpd-field) :before,:where(.jpd-designer,.jpd-modal__panel,.jpd-card,.jpd-page,.jpd-field) :after{box-sizing:border-box}.jpd-btn,.jpd-iconbtn,.jpd-linkbtn,.jpd-input,.jpd-select,.jpd-textarea,.jpd-tab,.jpd-tabs__btn,.jpd-menuitem,.jpd-addlink,.jpd-rowname,.jpd-tab__pin{font:inherit;font-family:var(--jpd-font-sans,inherit);letter-spacing:inherit;color:inherit;background-color:#0000;margin:0}.jpd-btn,.jpd-iconbtn,.jpd-linkbtn,.jpd-tab,.jpd-tabs__btn,.jpd-menuitem,.jpd-addlink,.jpd-rowname,.jpd-tab__pin{appearance:button;cursor:pointer;border:0 solid}:where(.jpd-designer,.jpd-modal__panel,.jpd-card,.jpd-page) :is(button,input,select,textarea,optgroup):not([class]){font:inherit;font-family:var(--jpd-font-sans,inherit);letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border:0 solid;border-radius:0;margin:0}:where(.jpd-designer,.jpd-modal__panel,.jpd-card,.jpd-page) :is(button):not([class]){appearance:button}.jpd-hint,.jpd-hint--md,.jpd-meta,.jpd-error,.jpd-card__title,.jpd-modal__title,.jpd-sectionhead,.jpd-grouplabel{margin:0}.jpd-card__title,.jpd-modal__title,.jpd-sectionhead{font-size:inherit;font-weight:inherit}.jpd-list{margin:0;padding:0;list-style:none}.jpd-code{font-family:var(--jpd-font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-size:1em}.jpd-icon,.jpd-micon,.jpd-ruler,.jpd-imagefield__img{vertical-align:middle;display:block}.jpd-fieldtable{text-indent:0;border-color:inherit;border-collapse:collapse}.jpd-input::placeholder,.jpd-textarea::placeholder{opacity:1}.jpd-disclosure__summary{display:list-item}:root{--jpd-surface:#fff;--jpd-surface-field:#fff;--jpd-surface-sunken:oklch(96.8% .007 247.896);--jpd-surface-muted:oklch(96.8% .007 247.896);--jpd-surface-muted-2:oklch(98.4% .003 247.858);--jpd-surface-hover:oklch(96.8% .007 247.896);--jpd-surface-hover-soft:oklch(98.4% .003 247.858);--jpd-surface-active:oklch(92.9% .013 255.508);--jpd-overlay:oklab(20.8% -.00310889 -.0418848/.6);--jpd-border:oklch(92.9% .013 255.508);--jpd-border-alt:oklch(92.9% .013 255.508);--jpd-border-strong:oklch(86.9% .022 252.894);--jpd-border-strong-2:oklch(86.9% .022 252.894);--jpd-swatch-ring:oklab(0% none none/.1);--jpd-text-strong:oklch(27.9% .041 260.031);--jpd-text:oklch(37.2% .044 257.287);--jpd-text-field:oklch(37.2% .044 257.287);--jpd-text-muted:oklch(44.6% .043 257.281);--jpd-text-label:oklch(44.6% .043 257.281);--jpd-text-faint:oklch(55.4% .046 257.417);--jpd-text-disabled:oklch(70.4% .04 256.788);--jpd-text-disabled-2:oklch(70.4% .04 256.788);--jpd-text-ghost:oklch(86.9% .022 252.894);--jpd-text-placeholder:oklch(70.4% .04 256.788);--jpd-text-hover:oklch(44.6% .043 257.281);--jpd-text-hover-strong:oklch(37.2% .044 257.287);--jpd-text-on-accent:#fff;--jpd-accent:oklch(58.8% .158 241.966);--jpd-accent-solid:oklch(58.8% .158 241.966);--jpd-accent-solid-hover:oklch(50% .134 242.749);--jpd-accent-hover:oklch(58.8% .158 241.966);--jpd-accent-border:oklch(68.5% .169 237.323);--jpd-accent-border-soft:oklch(74.6% .16 232.661);--jpd-accent-border-solid:oklch(58.8% .158 241.966);--jpd-accent-border-hover:oklch(74.6% .16 232.661);--jpd-accent-soft:oklch(97.7% .013 236.62);--jpd-accent-soft-hover:oklch(97.7% .013 236.62);--jpd-accent-ring:oklch(95.1% .026 236.824);--jpd-accent-ring-visible:oklch(82.8% .111 230.318);--jpd-ring-offset:#fff;--jpd-danger:oklch(63.7% .237 25.331);--jpd-danger-hover:oklch(57.7% .245 27.325);--jpd-danger-text:oklch(57.7% .245 27.325);--jpd-danger-text-hover:oklch(63.7% .237 25.331);--jpd-danger-soft:oklab(63.7% .214213 .1014/.15);--jpd-danger-border:oklch(70.4% .191 22.216);--jpd-danger-ring:oklch(80.8% .114 19.571);--jpd-warn-text:oklch(76.9% .188 70.08);--jpd-warn-text-2:oklch(66.6% .179 58.318);--jpd-section:oklch(55.8% .288 302.321);--jpd-section-text:oklch(49.6% .265 301.924);--jpd-section-text-strong:oklch(43.8% .218 303.724);--jpd-section-text-soft:oklch(55.8% .288 302.321);--jpd-section-border:oklch(82.7% .119 306.383);--jpd-section-border-hover:oklch(71.4% .203 305.504);--jpd-section-soft:oklab(97.7% .00867672 -.010987/.4);--jpd-section-soft-2:oklab(97.7% .00867672 -.010987/.6);--jpd-section-hover:oklch(97.7% .014 308.299);--jpd-section-hover-2:oklch(94.6% .033 307.174);--jpd-canvas-border:oklch(92.9% .013 255.508);--jpd-canvas-text:oklch(44.6% .043 257.281);--jpd-canvas-band:oklch(98.4% .003 247.858);--jpd-section-border-strong:oklch(71.4% .203 305.504);--jpd-section-soft-3:oklab(97.7% .00867672 -.010987/.5);--jpd-canvas-page:#fff;--jpd-canvas-ink:oklch(21% .034 264.665);--jpd-canvas-guide:#64748b2e;--jpd-canvas-dim:oklab(20.8% -.00310889 -.0418848/.1);--jpd-field-outline:oklch(86.9% .022 252.894);--jpd-selection:oklch(58.8% .158 241.966);--jpd-selection-ring:oklab(58.8% -.0742593 -.139462/.15);--jpd-locked:oklch(76.9% .188 70.08);--jpd-ruler-bg:oklch(98.4% .003 247.858);--jpd-ruler-tick:oklch(70.4% .04 256.788);--jpd-ruler-label:oklch(55.4% .046 257.417);--jpd-zoombar-bg:oklab(27.9% -.00709772 -.040381/.9);--jpd-zoombar-hover:oklab(100% 0 5.96046e-8/.1);--jpd-zoombar-active:oklab(100% 0 5.96046e-8/.2);--jpd-accent-soft-strong:oklch(97.7% .013 236.62);--jpd-callout-sky:oklab(97.7% -.00715246 -.0108555/.4);--jpd-callout-sky-solid:oklab(97.7% -.00715246 -.0108555/.6);--jpd-callout-sky-border:oklch(82.8% .111 230.318);--jpd-callout-sky-border-solid:oklch(90.1% .058 230.902);--jpd-accent-text-hover:oklch(50% .134 242.749);--jpd-font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--jpd-space-0:0;--jpd-space-0-5:.125rem;--jpd-space-1:.25rem;--jpd-space-1-5:.375rem;--jpd-space-2:.5rem;--jpd-space-2-5:.625rem;--jpd-space-3:.75rem;--jpd-space-3-5:.875rem;--jpd-space-4:1rem;--jpd-space-5:1.25rem;--jpd-font-size-micro:9px;--jpd-font-size-tiny:10px;--jpd-font-size-small:11px;--jpd-font-size-body:.75rem;--jpd-font-size-md:.875rem;--jpd-font-size-lg:1rem;--jpd-line-height:1.5;--jpd-line-height-body:1.33333;--jpd-line-height-md:1.42857;--jpd-line-height-lg:1.5;--jpd-line-height-tight:1.25;--jpd-tracking-wide:.025em;--jpd-font-sans:inherit;--jpd-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--jpd-radius-sm:.25rem;--jpd-radius-md:.375rem;--jpd-radius-lg:.5rem;--jpd-radius-xl:.75rem;--jpd-radius-full:9999px;--jpd-shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--jpd-shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--jpd-shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--jpd-shadow-2xl:0 25px 50px -12px #00000040;--jpd-shadow-page:0 1px 3px #0000001a, 0 8px 24px #0f172a14;--jpd-shadow-page-preview:0 1px 3px #00000026, 0 8px 24px #0f172a14;--jpd-z-dropdown:10;--jpd-z-canvas-overlay:20;--jpd-z-modal:1000}[data-jpd-theme=dark],.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--jpd-surface:oklch(27.8% .033 256.848);--jpd-surface-field:oklch(37.3% .034 259.733);--jpd-surface-sunken:oklch(21% .034 264.665);--jpd-surface-muted:oklch(37.3% .034 259.733);--jpd-surface-muted-2:oklch(37.3% .034 259.733);--jpd-surface-hover:oklch(37.3% .034 259.733);--jpd-surface-hover-soft:oklch(37.3% .034 259.733);--jpd-surface-active:oklch(44.6% .03 256.802);--jpd-border:oklch(37.3% .034 259.733);--jpd-border-alt:oklch(44.6% .03 256.802);--jpd-border-strong:oklch(44.6% .03 256.802);--jpd-border-strong-2:oklch(55.1% .027 264.364);--jpd-text-strong:oklch(96.7% .003 264.542);--jpd-text:oklch(92.8% .006 264.531);--jpd-text-field:oklch(96.7% .003 264.542);--jpd-text-muted:oklch(87.2% .01 258.338);--jpd-text-label:oklch(70.7% .022 261.325);--jpd-text-faint:oklch(70.7% .022 261.325);--jpd-text-disabled:oklch(70.7% .022 261.325);--jpd-text-disabled-2:oklch(55.1% .027 264.364);--jpd-text-ghost:oklch(44.6% .03 256.802);--jpd-text-placeholder:oklch(70.7% .022 261.325);--jpd-text-hover:oklch(92.8% .006 264.531);--jpd-text-hover-strong:oklch(96.7% .003 264.542);--jpd-accent:oklch(70.7% .165 254.624);--jpd-accent-solid:oklch(50% .134 242.749);--jpd-accent-solid-hover:oklch(58.8% .158 241.966);--jpd-accent-hover:oklch(70.7% .165 254.624);--jpd-accent-border:oklch(70.7% .165 254.624);--jpd-accent-border-soft:oklch(70.7% .165 254.624);--jpd-accent-border-solid:oklch(70.7% .165 254.624);--jpd-accent-border-hover:oklch(70.7% .165 254.624);--jpd-accent-soft:oklab(70.7% -.0437502 -.159094/.1);--jpd-accent-soft-hover:oklab(70.7% -.0437502 -.159094/.1);--jpd-accent-ring:oklab(70.7% -.0437502 -.159094/.2);--jpd-danger-text:oklch(70.4% .191 22.216);--jpd-danger-text-hover:oklch(70.4% .191 22.216);--jpd-warn-text:oklch(82.8% .189 84.429);--jpd-warn-text-2:oklch(82.8% .189 84.429);--jpd-section-text:oklch(82.7% .119 306.383);--jpd-section-text-strong:oklch(82.7% .119 306.383);--jpd-section-text-soft:oklch(71.4% .203 305.504);--jpd-section-border:oklch(49.6% .265 301.924);--jpd-section-border-hover:oklch(62.7% .265 303.9);--jpd-section-soft:oklab(38.1% .100917 -.144194/.2);--jpd-section-soft-2:oklab(38.1% .100917 -.144194/.3);--jpd-section-hover:oklab(38.1% .100917 -.144194/.4);--jpd-section-hover-2:oklab(38.1% .100917 -.144194/.4);--jpd-accent-soft-strong:oklab(37.9% -.0113991 -.145554/.3);--jpd-callout-sky:oklab(37.9% -.0113991 -.145554/.2);--jpd-callout-sky-solid:oklab(37.9% -.0113991 -.145554/.2);--jpd-callout-sky-border:oklch(48.8% .243 264.376);--jpd-callout-sky-border-solid:oklch(42.4% .199 265.638);--jpd-accent-text-hover:oklch(80.9% .105 251.813);--jpd-ruler-bg:oklch(27.8% .033 256.848);--jpd-ruler-tick:oklch(55.1% .027 264.364);--jpd-ruler-label:oklch(70.7% .022 261.325)}[data-jpd-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--jpd-surface:#fff;--jpd-surface-field:#fff;--jpd-surface-sunken:oklch(96.8% .007 247.896);--jpd-surface-muted:oklch(96.8% .007 247.896);--jpd-surface-muted-2:oklch(98.4% .003 247.858);--jpd-surface-hover:oklch(96.8% .007 247.896);--jpd-surface-hover-soft:oklch(98.4% .003 247.858);--jpd-surface-active:oklch(92.9% .013 255.508);--jpd-border:oklch(92.9% .013 255.508);--jpd-border-alt:oklch(92.9% .013 255.508);--jpd-border-strong:oklch(86.9% .022 252.894);--jpd-border-strong-2:oklch(86.9% .022 252.894);--jpd-text-strong:oklch(27.9% .041 260.031);--jpd-text:oklch(37.2% .044 257.287);--jpd-text-field:oklch(37.2% .044 257.287);--jpd-text-muted:oklch(44.6% .043 257.281);--jpd-text-label:oklch(44.6% .043 257.281);--jpd-text-faint:oklch(55.4% .046 257.417);--jpd-text-disabled:oklch(70.4% .04 256.788);--jpd-text-disabled-2:oklch(70.4% .04 256.788);--jpd-text-ghost:oklch(86.9% .022 252.894);--jpd-text-placeholder:oklch(70.4% .04 256.788);--jpd-text-hover:oklch(44.6% .043 257.281);--jpd-text-hover-strong:oklch(37.2% .044 257.287);--jpd-accent:oklch(58.8% .158 241.966);--jpd-accent-solid:oklch(58.8% .158 241.966);--jpd-accent-solid-hover:oklch(50% .134 242.749);--jpd-accent-hover:oklch(58.8% .158 241.966);--jpd-accent-border:oklch(68.5% .169 237.323);--jpd-accent-border-soft:oklch(74.6% .16 232.661);--jpd-accent-border-solid:oklch(58.8% .158 241.966);--jpd-accent-border-hover:oklch(74.6% .16 232.661);--jpd-accent-soft:oklch(97.7% .013 236.62);--jpd-accent-soft-hover:oklch(97.7% .013 236.62);--jpd-accent-ring:oklch(95.1% .026 236.824);--jpd-danger-text:oklch(57.7% .245 27.325);--jpd-danger-text-hover:oklch(63.7% .237 25.331);--jpd-warn-text:oklch(76.9% .188 70.08);--jpd-warn-text-2:oklch(66.6% .179 58.318);--jpd-section-text:oklch(49.6% .265 301.924);--jpd-section-text-strong:oklch(43.8% .218 303.724);--jpd-section-text-soft:oklch(55.8% .288 302.321);--jpd-section-border:oklch(82.7% .119 306.383);--jpd-section-border-hover:oklch(71.4% .203 305.504);--jpd-section-soft:oklab(97.7% .00867672 -.010987/.4);--jpd-section-soft-2:oklab(97.7% .00867672 -.010987/.6);--jpd-section-hover:oklch(97.7% .014 308.299);--jpd-section-hover-2:oklch(94.6% .033 307.174);--jpd-accent-soft-strong:oklch(97.7% .013 236.62);--jpd-callout-sky:oklab(97.7% -.00715246 -.0108555/.4);--jpd-callout-sky-solid:oklab(97.7% -.00715246 -.0108555/.6);--jpd-callout-sky-border:oklch(82.8% .111 230.318);--jpd-callout-sky-border-solid:oklch(90.1% .058 230.902);--jpd-accent-text-hover:oklch(50% .134 242.749);--jpd-ruler-bg:oklch(98.4% .003 247.858);--jpd-ruler-tick:oklch(70.4% .04 256.788);--jpd-ruler-label:oklch(55.4% .046 257.417)}.jpd-stack{gap:var(--jpd-space-2);flex-direction:column;display:flex}.jpd-stack--tight{gap:var(--jpd-space-1)}.jpd-stack--snug{gap:var(--jpd-space-1-5)}.jpd-row{align-items:center;gap:var(--jpd-space-2);display:flex}.jpd-row--tight{gap:var(--jpd-space-1)}.jpd-row--between{justify-content:space-between}.jpd-grid2{gap:var(--jpd-space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.jpd-hint{font-size:var(--jpd-font-size-tiny);color:var(--jpd-text-disabled)}.jpd-hint--md{font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-text-disabled)}.jpd-meta{font-size:var(--jpd-font-size-tiny);color:var(--jpd-text-faint)}.jpd-error{font-size:var(--jpd-font-size-tiny);color:var(--jpd-danger-text)}.jpd-grouplabel{font-size:var(--jpd-font-size-tiny);color:var(--jpd-text-faint);font-weight:500}.jpd-sectionhead{font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);text-transform:uppercase;letter-spacing:var(--jpd-tracking-wide);color:var(--jpd-text-faint);font-weight:600}.jpd-btn{justify-content:center;align-items:center;gap:var(--jpd-space-1-5);border-radius:var(--jpd-radius-lg);font-weight:500;transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-flex}.jpd-btn:focus{outline-style:none}.jpd-btn:focus-visible{box-shadow:0 0 0 1px var(--jpd-ring-offset), 0 0 0 3px var(--jpd-_btn-ring,var(--jpd-accent-ring-visible));outline-style:none}.jpd-btn:disabled{cursor:not-allowed;opacity:.4}.jpd-btn[data-size=sm]{padding:var(--jpd-space-1) var(--jpd-space-2-5);font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body)}.jpd-btn[data-size=md]{padding:var(--jpd-space-2) var(--jpd-space-3-5);font-size:var(--jpd-font-size-md);line-height:var(--jpd-line-height-md)}.jpd-btn[data-size=icon]{block-size:1.5rem;inline-size:1.5rem;padding:0}.jpd-btn[data-variant=primary]{background-color:var(--jpd-accent-solid);color:var(--jpd-text-on-accent);box-shadow:var(--jpd-shadow-sm)}.jpd-btn[data-variant=danger]{background-color:var(--jpd-danger);color:var(--jpd-text-on-accent);box-shadow:var(--jpd-shadow-sm);--jpd-_btn-ring:var(--jpd-danger-ring)}.jpd-btn[data-variant=outline]{border:1px solid var(--jpd-accent-border-solid);color:var(--jpd-accent)}.jpd-btn[data-variant=ghost]{color:var(--jpd-text-disabled);--jpd-_btn-ring:var(--jpd-border-strong)}.jpd-btn[data-variant=dark]{background-color:var(--jpd-zoombar-hover);color:var(--jpd-text-on-accent);--jpd-_btn-ring:oklab(100% 0 5.96046e-8/.3)}@media (hover:hover){.jpd-btn[data-variant=primary]:hover{background-color:var(--jpd-accent-solid-hover)}.jpd-btn[data-variant=danger]:hover{background-color:var(--jpd-danger-hover)}.jpd-btn[data-variant=outline]:hover{background-color:var(--jpd-accent-soft-hover)}.jpd-btn[data-variant=ghost]:hover{background-color:var(--jpd-surface-hover);color:var(--jpd-text-hover)}.jpd-btn[data-variant=dark]:hover{background-color:var(--jpd-zoombar-active)}}.jpd-iconbtn{color:var(--jpd-text-disabled);transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.jpd-linkbtn{font-size:var(--jpd-font-size-tiny);color:var(--jpd-text-disabled);align-self:flex-start}@media (hover:hover){.jpd-iconbtn:hover{color:var(--jpd-text-hover-strong)}.jpd-linkbtn:hover{color:var(--jpd-danger-text-hover)}}.jpd-input,.jpd-select,.jpd-textarea{border:1px solid var(--jpd-border-strong);border-radius:var(--jpd-radius-lg);background-color:var(--jpd-surface-field);inline-size:100%;padding:var(--jpd-space-1-5) var(--jpd-space-2-5);font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-text-field);box-shadow:var(--jpd-shadow-sm);transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.jpd-textarea{resize:vertical}.jpd-input:focus,.jpd-select:focus,.jpd-textarea:focus{border-color:var(--jpd-accent-border);box-shadow:0 0 0 2px var(--jpd-accent-ring), var(--jpd-shadow-sm);outline-style:none}.jpd-input::placeholder,.jpd-textarea::placeholder{color:var(--jpd-text-placeholder)}.jpd-input[data-mono],.jpd-textarea[data-mono]{font-family:var(--jpd-font-mono)}.jpd-color-input{cursor:pointer;border:1px solid var(--jpd-border-strong);border-radius:var(--jpd-radius-lg);background-color:var(--jpd-surface-field);block-size:1.75rem;inline-size:100%;padding:var(--jpd-space-0-5)}.jpd-labeled{gap:var(--jpd-space-1);flex-direction:column;display:flex}.jpd-labeled__text{font-size:var(--jpd-font-size-small);color:var(--jpd-text-label);font-weight:500}.jpd-card{border:1px solid var(--jpd-border);border-radius:var(--jpd-radius-xl);background-color:var(--jpd-surface);box-shadow:var(--jpd-shadow-sm)}.jpd-card__header{justify-content:space-between;align-items:center;gap:var(--jpd-space-2);flex-wrap:wrap;display:flex}.jpd-card__title{font-size:var(--jpd-font-size-md);line-height:var(--jpd-line-height-md);color:var(--jpd-text-strong);font-weight:600}.jpd-badge{text-overflow:ellipsis;white-space:nowrap;border-radius:var(--jpd-radius-md);background-color:var(--jpd-surface-muted);inline-size:fit-content;max-inline-size:100%;padding:var(--jpd-space-0-5) var(--jpd-space-1-5);font-family:var(--jpd-font-mono);font-size:var(--jpd-font-size-small);color:var(--jpd-text-muted);display:block;overflow:hidden}.jpd-tabpanel{grid-template-rows:1fr;min-block-size:0;transition-property:grid-template-rows;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:grid}.jpd-tabpanel[data-collapsed]{grid-template-rows:0fr}.jpd-tabpanel__body{gap:var(--jpd-space-2);flex-direction:column;min-block-size:0;display:flex;overflow:hidden}.jpd-modal{z-index:var(--jpd-z-modal);background-color:var(--jpd-overlay);padding:var(--jpd-space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.jpd-modal__panel{max-block-size:92vh;inline-size:92vw;max-inline-size:var(--jpd-_modal-max,48rem);border-radius:var(--jpd-radius-xl);background-color:var(--jpd-surface);box-shadow:var(--jpd-shadow-2xl);flex-direction:column;display:flex}.jpd-modal__panel[data-size=sm]{--jpd-_modal-max:28rem}.jpd-modal__panel[data-size=md]{--jpd-_modal-max:36rem}.jpd-modal__panel[data-size=lg]{--jpd-_modal-max:48rem}.jpd-modal__panel[data-size=xl]{--jpd-_modal-max:64rem}.jpd-modal__panel[data-size=full]{--jpd-_modal-max:none}.jpd-modal__panel[data-fill]{block-size:92vh;max-block-size:none}.jpd-modal__header{justify-content:space-between;align-items:center;gap:var(--jpd-space-2);border-block-end:1px solid var(--jpd-border);padding:var(--jpd-space-3) var(--jpd-space-5);border-start-start-radius:var(--jpd-radius-xl);border-start-end-radius:var(--jpd-radius-xl);flex-shrink:0;display:flex}.jpd-modal__title{font-size:var(--jpd-font-size-lg);line-height:var(--jpd-line-height-lg);color:var(--jpd-text-strong);font-weight:600}.jpd-modal__body{min-block-size:0;padding:var(--jpd-space-4) var(--jpd-space-5);flex:1;overflow-y:auto}.jpd-modal__footer{justify-content:flex-end;align-items:center;gap:var(--jpd-space-2);border-block-start:1px solid var(--jpd-border);padding:var(--jpd-space-3) var(--jpd-space-5);border-end-end-radius:var(--jpd-radius-xl);border-end-start-radius:var(--jpd-radius-xl);flex-shrink:0;display:flex}.jpd-locked{gap:var(--jpd-space-2);border:1px dashed var(--jpd-border-strong);border-radius:var(--jpd-radius-lg);padding:var(--jpd-space-2);flex-direction:column;display:flex}.jpd-locked__hint{align-items:center;gap:var(--jpd-space-1);font-size:var(--jpd-font-size-tiny);color:var(--jpd-text-disabled);display:flex}.jpd-locked__body{pointer-events:none;gap:var(--jpd-space-2);opacity:.5;flex-direction:column;display:flex}.jpd-disclosure{border:1px dashed var(--jpd-border-strong);border-radius:var(--jpd-radius-lg);padding:var(--jpd-space-2)}.jpd-disclosure__summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--jpd-font-size-tiny);color:var(--jpd-text-faint);font-weight:500}.jpd-disclosure__body{gap:var(--jpd-space-1-5);flex-direction:column;margin-block-start:var(--jpd-space-2);display:flex}.jpd-palette{gap:var(--jpd-space-1);flex-direction:column;display:flex}.jpd-palette__trigger{justify-content:space-between;align-items:center;gap:var(--jpd-space-2);border:1px solid var(--jpd-border-strong);background-color:var(--jpd-surface-field);border-radius:var(--jpd-radius-lg);padding:var(--jpd-space-1-5) var(--jpd-space-2-5);font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-text);display:flex}@media (hover:hover){.jpd-palette__trigger:hover{border-color:var(--jpd-accent-border-hover)}}.jpd-palette__current{align-items:center;gap:var(--jpd-space-2);display:flex}.jpd-palette__empty,.jpd-palette__arrow{color:var(--jpd-text-disabled-2)}.jpd-palette__menu{gap:var(--jpd-space-0-5);border:1px solid var(--jpd-border-alt);border-radius:var(--jpd-radius-lg);padding:var(--jpd-space-1);flex-direction:column;display:flex}.jpd-palette__menu[data-variant=grid]{gap:var(--jpd-space-2);max-block-size:14rem;padding:var(--jpd-space-1-5);overflow-y:auto}.jpd-palette__group{gap:var(--jpd-space-1);flex-direction:column;display:flex}.jpd-palette__grouplabel{font-size:var(--jpd-font-size-tiny);text-transform:uppercase;letter-spacing:var(--jpd-tracking-wide);color:var(--jpd-text-disabled-2);font-weight:500}.jpd-palette__options{gap:var(--jpd-space-1);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.jpd-palette__option{align-items:center;gap:var(--jpd-space-2);border-radius:var(--jpd-radius-md);padding:var(--jpd-space-1-5) var(--jpd-space-2);text-align:start;font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);display:flex}.jpd-palette__menu[data-variant=grid] .jpd-palette__option{gap:var(--jpd-space-1-5);padding:var(--jpd-space-1) var(--jpd-space-1-5);font-size:var(--jpd-font-size-small)}.jpd-palette__option[data-selected]{background-color:var(--jpd-accent-soft)}@media (hover:hover){.jpd-palette__option:hover{background-color:var(--jpd-accent-soft-hover)}}.jpd-palette__optionlabel{color:var(--jpd-text)}.jpd-swatches{gap:var(--jpd-space-1);--jpd-_swatch-size:1rem;display:flex}.jpd-swatches[data-size=sm]{gap:var(--jpd-space-0-5);--jpd-_swatch-size:.875rem}.jpd-swatch{inline-size:var(--jpd-_swatch-size);block-size:var(--jpd-_swatch-size);border-radius:var(--jpd-radius-full);border:1px solid var(--jpd-swatch-ring);flex-shrink:0}.jpd-swatches[data-size=sm] .jpd-swatch{flex:0 auto;min-inline-size:0}.jpd-preview__well{background-color:var(--jpd-surface-sunken);padding:var(--jpd-space-4);border-end-end-radius:var(--jpd-radius-xl);border-end-start-radius:var(--jpd-radius-xl);flex-direction:column;flex:1;align-items:center;display:flex;overflow-y:auto}.jpd-preview__count{font-size:var(--jpd-font-size-small);color:var(--jpd-text-faint);margin:0;margin-block-end:var(--jpd-space-2)}.jpd-error--md{font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body)}.jpd-toolbar{gap:var(--jpd-space-2);flex-wrap:wrap;display:flex}.jpd-callout{border:1px dashed var(--jpd-border-strong);border-radius:var(--jpd-radius-lg);padding:var(--jpd-space-2)}.jpd-callout--roomy{padding:var(--jpd-space-2-5)}.jpd-callout--solid{border-style:solid}.jpd-callout[data-tone=purple]{border-color:var(--jpd-section-border);background-color:var(--jpd-section-soft)}.jpd-callout--solid[data-tone=purple]{background-color:var(--jpd-section-soft-2)}.jpd-callout[data-tone=sky]{border-color:var(--jpd-callout-sky-border);background-color:var(--jpd-callout-sky)}.jpd-callout--solid[data-tone=sky]{border-color:var(--jpd-callout-sky-border-solid);background-color:var(--jpd-callout-sky-solid);border-radius:var(--jpd-radius-sm)}.jpd-callout[data-tone=slate]{border-color:var(--jpd-border-strong)}.jpd-callout__title{align-items:center;gap:var(--jpd-space-1);font-weight:500;font-size:var(--jpd-font-size-tiny);color:var(--jpd-section-text);margin:0;display:flex}.jpd-callout__title--strong{font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-section-text-strong)}.jpd-callout__item{justify-content:space-between;align-items:center;gap:var(--jpd-space-1);border-radius:var(--jpd-radius-sm);padding:var(--jpd-space-0-5) var(--jpd-space-1);font-size:var(--jpd-font-size-small);display:flex}@media (hover:hover){.jpd-callout__item:hover{background-color:var(--jpd-section-hover-2)}}.jpd-callout__title--neutral{font-size:var(--jpd-font-size-small);color:var(--jpd-text-muted)}.jpd-tabs{align-items:center;gap:var(--jpd-space-0-5);border-block-end:1px solid var(--jpd-border);flex-wrap:nowrap;display:flex}.jpd-tabs--scroll{scrollbar-width:none;min-inline-size:0;overflow-x:auto}.jpd-tabs--scroll::-webkit-scrollbar{display:none}.jpd-tab{white-space:nowrap;padding:var(--jpd-space-1-5) var(--jpd-space-2);font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-text-faint);flex-shrink:0;font-weight:500}.jpd-tab[draggable=true]{align-items:center;gap:var(--jpd-space-0-5);cursor:grab;display:flex;position:relative}.jpd-tab[draggable=true]:active{cursor:grabbing}.jpd-tab[data-active=true]{border-block-end:2px solid var(--jpd-accent-border);color:var(--jpd-accent)}.jpd-tab[data-dragging]{opacity:.4}@media (hover:hover){.jpd-tab:not([data-active=true]):hover{color:var(--jpd-text)}}.jpd-popover{z-index:var(--jpd-z-dropdown);border:1px solid var(--jpd-border-alt);border-radius:var(--jpd-radius-lg);background-color:var(--jpd-surface);position:absolute;inset-block-start:100%}.jpd-popover--anchor-right{gap:var(--jpd-space-0-5);padding:var(--jpd-space-1);box-shadow:var(--jpd-shadow-md);flex-direction:column;margin-block-start:var(--jpd-space-1);display:flex;inset-inline-end:0}.jpd-popover--anchor-stretch{max-block-size:12rem;padding:var(--jpd-space-1) 0;box-shadow:var(--jpd-shadow-lg);margin:0;list-style:none;inset-inline:0;overflow-y:auto}.jpd-menuitem{white-space:nowrap;border-radius:var(--jpd-radius-md);padding:var(--jpd-space-1) var(--jpd-space-2);text-align:left;font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-text)}.jpd-menuitem--muted{color:var(--jpd-text-faint)}.jpd-menuitem[data-active]{background-color:var(--jpd-accent-soft-strong)}@media (hover:hover){.jpd-menuitem:hover{background-color:var(--jpd-accent-soft-hover)}.jpd-menuitem--muted:hover{background-color:var(--jpd-surface-hover)}}.jpd-chip{border:1px solid var(--jpd-border-strong);border-radius:var(--jpd-radius-sm);background-color:var(--jpd-surface-field);padding:var(--jpd-space-0-5) var(--jpd-space-1-5);font-family:var(--jpd-font-mono);font-size:var(--jpd-font-size-tiny);color:var(--jpd-text-muted)}.jpd-chip--source{cursor:grab}.jpd-chip--source:active{cursor:grabbing}.jpd-chip--drag{align-items:center;gap:var(--jpd-space-1);background-color:var(--jpd-surface-muted-2);padding-block:var(--jpd-space-1);display:flex}.jpd-chip--drag[data-dragging]{opacity:.4}.jpd-chip__label{flex:1}.jpd-chip__input{appearance:none;min-inline-size:0;font:inherit;color:inherit;letter-spacing:inherit;background:0 0;border:0 solid;flex:1;padding:0}.jpd-chip__input:focus{outline:none}.jpd-chip__grip{color:var(--jpd-text-disabled)}.jpd-chip--action{background-color:var(--jpd-surface);text-align:left;transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover){.jpd-chip--source:hover{border-color:var(--jpd-section-border-hover);background-color:var(--jpd-section-hover)}.jpd-chip--action:hover{border-color:var(--jpd-accent-border-hover);color:var(--jpd-accent-text-hover)}.jpd-chip--drag:hover{border-color:var(--jpd-border-strong);background-color:var(--jpd-surface-muted-2)}}.jpd-iconbtn--accent[data-on]{color:var(--jpd-accent)}.jpd-iconbtn--danger{color:var(--jpd-text-disabled)}@media (hover:hover){.jpd-iconbtn--accent:hover{color:var(--jpd-accent-hover)}.jpd-iconbtn--danger:hover{color:var(--jpd-danger-text-hover)}}.jpd-warnicon{color:var(--jpd-warn-text);flex-shrink:0}.jpd-warnicon--sm{inline-size:var(--jpd-space-3);block-size:var(--jpd-space-3)}.jpd-designer{gap:var(--jpd-space-3);flex-direction:column;display:flex}.jpd-designer__main{align-items:flex-start;gap:var(--jpd-space-4);display:flex}.jpd-part{min-inline-size:0}.jpd-designer__canvas{flex:1;min-inline-size:0;overflow-x:auto}.jpd-sidebar{gap:var(--jpd-space-3);inline-size:20rem;padding:var(--jpd-space-3-5);flex-direction:column;flex-shrink:0;display:flex}.jpd-sidebar__panel{gap:var(--jpd-space-3);flex-direction:column;display:flex}.jpd-sidebar__banner{font-size:var(--jpd-font-size-small);color:var(--jpd-accent);margin:0}.jpd-sidebar__footer{gap:var(--jpd-space-2);border-block-start:1px solid var(--jpd-border);flex-direction:column;padding-block-start:var(--jpd-space-3);display:flex}.jpd-tabs__strip{align-items:center;gap:var(--jpd-space-0-5);scrollbar-width:none;flex-wrap:nowrap;flex:1;min-inline-size:0;display:flex;overflow-x:auto}.jpd-tabs__strip::-webkit-scrollbar{display:none}.jpd-tabs__btn{border-radius:var(--jpd-radius-sm);color:var(--jpd-text-disabled-2)}.jpd-tabs__btn[data-dir]{padding:var(--jpd-space-1);flex-shrink:0}.jpd-tabs__more{flex-shrink:0;margin-inline-start:auto;position:relative}.jpd-tab__dropmark{inset-block:var(--jpd-space-0-5);inline-size:var(--jpd-space-0-5);border-radius:var(--jpd-radius-sm);background-color:var(--jpd-accent-border);position:absolute;inset-inline-start:calc(var(--jpd-space-0-5) * -1)}.jpd-tab__slot{flex-shrink:0;align-items:center;display:inline-flex}.jpd-tab__pin{cursor:pointer;border-radius:var(--jpd-radius-sm);padding:var(--jpd-space-0-5);color:currentColor;opacity:.6;flex-shrink:0;margin-inline-end:calc(var(--jpd-space-1) * -1)}.jpd-tab__pin>svg{inline-size:var(--jpd-space-2-5);block-size:var(--jpd-space-2-5)}.jpd-menu__sep{margin-block:var(--jpd-space-0-5);border-block-start:1px solid var(--jpd-border-alt)}.jpd-callout__actions{gap:var(--jpd-space-1-5);flex-wrap:wrap;display:flex}.jpd-callout__hint{font-size:var(--jpd-font-size-tiny);color:var(--jpd-section-text-soft);margin:0}.jpd-fieldlist__scroll{max-block-size:12rem;overflow-y:auto}@media (hover:hover){.jpd-tabs__btn:hover{background-color:var(--jpd-surface-hover);color:var(--jpd-text-hover)}.jpd-tab__pin:hover{background-color:var(--jpd-surface-active);opacity:1}}.jpd-callout__list{gap:var(--jpd-space-0-5);flex-direction:column;max-block-size:8rem;display:flex;overflow-y:auto}.jpd-callout__chips{gap:var(--jpd-space-1);flex-wrap:wrap;display:flex}.jpd-checkline{align-items:center;gap:var(--jpd-space-2);font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-text-muted);font-weight:500;display:flex}.jpd-checkline__box{margin:0}.jpd-iconpick{gap:var(--jpd-space-1);border:1px solid var(--jpd-border-alt);border-radius:var(--jpd-radius-lg);max-block-size:8rem;padding:var(--jpd-space-1-5);grid-template-columns:repeat(6,minmax(0,1fr));display:grid;overflow-y:auto}.jpd-iconpick__empty{padding-block:var(--jpd-space-2);text-align:center;grid-column:1/-1}.jpd-iconpick__item{font:inherit;font-family:var(--jpd-font-sans);letter-spacing:inherit;appearance:button;cursor:pointer;border:1px solid var(--jpd-border-alt);border-radius:var(--jpd-radius-md);padding:var(--jpd-space-1-5);color:var(--jpd-text-muted);background-color:#0000;justify-content:center;align-items:center;margin:0;display:flex}.jpd-iconpick__item[data-selected]{border-color:var(--jpd-accent-border);background-color:var(--jpd-accent-soft);color:var(--jpd-accent)}@media (hover:hover){.jpd-iconpick__item:hover{border-color:var(--jpd-accent-border-hover);background-color:var(--jpd-accent-soft-hover)}}.jpd-box{border:1px solid var(--jpd-border-strong);border-radius:var(--jpd-radius-lg);block-size:2rem;inline-size:2rem;color:var(--jpd-text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.jpd-box__empty{font-size:var(--jpd-font-size-micro);color:var(--jpd-text-disabled-2)}.jpd-subcard{border:1px solid var(--jpd-border-alt);border-radius:var(--jpd-radius-sm);background-color:var(--jpd-surface);padding:var(--jpd-space-1-5)}.jpd-colorgrid{gap:var(--jpd-space-1);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.jpd-row--baseline{align-items:flex-end}.jpd-row--grow>:first-child{flex:1}.jpd-row--right{justify-content:flex-end}.jpd-grouplabel--spaced{margin-block-end:var(--jpd-space-1)}.jpd-meta--sm{font-size:var(--jpd-font-size-small)}.jpd-meta--md{font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body)}.jpd-error--sm{font-size:var(--jpd-font-size-small)}.jpd-linkbtn--muted{flex-shrink:0;align-self:auto}.jpd-linkbtn--back{font-size:var(--jpd-font-size-small)}@media (hover:hover){.jpd-linkbtn--muted:hover,.jpd-linkbtn--back:hover{color:var(--jpd-text-hover)}}.jpd-colname{font-family:var(--jpd-font-mono);color:var(--jpd-text-muted)}.jpd-colname[data-added]{color:var(--jpd-text-ghost)}.jpd-formula{gap:var(--jpd-space-4);display:grid}@media (width>=40rem){.jpd-formula{grid-template-columns:minmax(0,11rem) minmax(0,1fr)}}.jpd-formula__sources,.jpd-formula__editor{gap:var(--jpd-space-2);flex-direction:column;min-inline-size:0;display:flex}.jpd-chiplist{gap:var(--jpd-space-1);max-block-size:18rem;flex-direction:column;padding-inline-end:var(--jpd-space-1);display:flex;overflow-y:auto}.jpd-suggest{gap:var(--jpd-space-1);flex-direction:column;display:flex;position:relative}.jpd-suggest__item{flex-direction:column;align-items:flex-start}.jpd-suggest__name{font-family:var(--jpd-font-mono);font-size:var(--jpd-font-size-small);color:var(--jpd-text-field)}.jpd-warn{font-size:var(--jpd-font-size-tiny);color:var(--jpd-warn-text-2);margin:0}.jpd-fx{font-family:var(--jpd-font-serif,ui-serif, Georgia, Cambria, "Times New Roman", Times, serif);font-style:italic}.jpd-callout__icon{color:var(--jpd-accent-border)}.jpd-filter-group{gap:var(--jpd-space-1);border:1px solid var(--jpd-border);border-radius:var(--jpd-radius-md);padding:var(--jpd-space-1-5);flex-direction:column;display:flex}.jpd-filter-group__joiner{text-align:center;font-size:var(--jpd-font-size-micro);color:var(--jpd-text-disabled);font-weight:600}.jpd-filter-group__joiner[data-joiner=and]{flex-shrink:0;inline-size:1rem}.jpd-addlink{align-items:center;gap:var(--jpd-space-1);font-size:var(--jpd-font-size-tiny);color:var(--jpd-accent);display:flex}.jpd-addlink--start{align-self:flex-start}@media (hover:hover){.jpd-addlink:hover{text-decoration-line:underline}}.jpd-fieldrow{font:inherit;font-family:var(--jpd-font-sans);letter-spacing:inherit;color:inherit;align-items:center;gap:var(--jpd-space-1);border:1px solid var(--jpd-border);border-radius:var(--jpd-radius-lg);inline-size:100%;padding:var(--jpd-space-1) var(--jpd-space-1-5);text-align:left;cursor:pointer;background-color:#0000;margin:0;transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:flex}.jpd-fieldrow[data-selected]{border-color:var(--jpd-accent-border);background-color:var(--jpd-accent-soft)}@media (hover:hover){.jpd-fieldrow:not([data-selected]):hover{background-color:var(--jpd-surface-hover-soft)}}.jpd-fieldrow--sub{font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);border-color:#0000}.jpd-fieldrow[data-absent]{opacity:.5}.jpd-fieldrow__main{align-items:center;gap:var(--jpd-space-1);text-overflow:ellipsis;white-space:nowrap;text-align:left;min-inline-size:0;font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);flex:1;display:flex;overflow:hidden}.jpd-fieldrow__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-inline-size:0;overflow:hidden}.jpd-fieldrow__name--sub{color:var(--jpd-text-muted)}.jpd-fieldrow__pos{white-space:nowrap;color:var(--jpd-text-disabled-2);flex-shrink:0}.jpd-fieldrow__z{color:var(--jpd-text-ghost);flex-shrink:0}.jpd-fieldrow__rename{font:inherit;font-family:var(--jpd-font-sans);letter-spacing:inherit;border:1px solid var(--jpd-accent-border-soft);border-radius:var(--jpd-radius-sm);background-color:var(--jpd-surface);inline-size:6rem;padding-inline:var(--jpd-space-1);font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);color:var(--jpd-text);margin:0;font-weight:500}.jpd-rowname{text-align:start;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;min-inline-size:0;color:var(--jpd-text);padding:0;font-weight:500;overflow:hidden}.jpd-muted{color:var(--jpd-text-disabled);margin-inline-start:var(--jpd-space-1-5)}.jpd-sublist{gap:var(--jpd-space-1);margin:var(--jpd-space-1) 0 0 var(--jpd-space-3);padding:0 0 0 var(--jpd-space-2);border-inline-start:1px solid var(--jpd-border);flex-direction:column;list-style:none;display:flex}.jpd-inspector{gap:var(--jpd-space-3);font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);flex-direction:column;display:flex}.jpd-eyebrow{margin:0 0 var(--jpd-space-1);font-size:var(--jpd-font-size-tiny);text-transform:uppercase;letter-spacing:var(--jpd-tracking-wide);color:var(--jpd-text-faint);font-weight:600}.jpd-eyebrow[data-zone=red]{color:var(--jpd-warn-text-2)}.jpd-canvas{position:relative}.jpd-canvas__zoom{transform-origin:0 0}.jpd-canvas__row{display:flex}.jpd-page{background-color:var(--jpd-canvas-page);color:var(--jpd-canvas-ink);box-shadow:var(--jpd-shadow-page)}.jpd-page__bg{pointer-events:none;object-fit:cover;block-size:100%;inline-size:100%;position:absolute;inset:0}.jpd-page__dim{pointer-events:none;background-color:var(--jpd-canvas-dim);position:absolute}.jpd-grid-overlay{pointer-events:none;background-image:linear-gradient(to right, var(--jpd-canvas-guide) 1px, transparent 1px), linear-gradient(to bottom, var(--jpd-canvas-guide) 1px, transparent 1px);position:absolute;inset:0}.jpd-marquee{pointer-events:none;z-index:var(--jpd-z-canvas-overlay);border:1px solid var(--jpd-accent-border);background-color:color-mix(in oklab, var(--jpd-accent-border) 10%, transparent);position:absolute}.jpd-band{pointer-events:none;border:0 dashed var(--jpd-danger-border);background-color:var(--jpd-danger-soft);position:absolute;overflow:hidden}.jpd-band[data-band=header]{border-bottom-width:1px;top:0;left:0;right:0}.jpd-band[data-band=footer]{border-top-width:1px;bottom:0;left:0;right:0}.jpd-band[data-band=left]{border-right-width:1px;top:0;bottom:0;left:0}.jpd-band[data-band=right]{border-left-width:1px;top:0;bottom:0;right:0}.jpd-band__label{border-radius:var(--jpd-radius-sm);background-color:var(--jpd-danger);padding:var(--jpd-space-0-5) var(--jpd-space-1-5);font-size:var(--jpd-font-size-micro);color:var(--jpd-text-on-accent);font-weight:500;position:absolute}.jpd-band__label[data-band=header],.jpd-band__label[data-band=footer]{left:var(--jpd-space-1);top:var(--jpd-space-0-5)}.jpd-band__label[data-band=left],.jpd-band__label[data-band=right]{top:var(--jpd-space-1);white-space:nowrap;transform:rotate(90deg)}.jpd-band__label[data-band=left]{left:var(--jpd-space-0-5);transform-origin:0 0}.jpd-band__label[data-band=right]{right:var(--jpd-space-0-5);transform-origin:100% 0}.jpd-field{border:1px dashed var(--jpd-field-outline);transition-property:box-shadow;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.jpd-field[data-locked]{border-color:var(--jpd-locked)}.jpd-field[data-selected]{border:2px solid var(--jpd-selection);box-shadow:0 0 0 3px var(--jpd-selection-ring)}.jpd-field[data-wrongmode]{opacity:.55}.jpd-ruler{-webkit-user-select:none;user-select:none;background-color:var(--jpd-ruler-bg);flex-shrink:0}.jpd-ruler__tick{stroke:var(--jpd-ruler-tick);stroke-width:.5px}.jpd-ruler__tick[data-major]{stroke-width:1px}.jpd-ruler__label{fill:var(--jpd-ruler-label)}.jpd-ruler__corner{flex-shrink:0}.jpd-zoombar{pointer-events:auto;bottom:var(--jpd-space-4);align-items:center;gap:var(--jpd-space-1);border-radius:var(--jpd-radius-full);background-color:var(--jpd-zoombar-bg);inline-size:fit-content;padding:var(--jpd-space-1-5) var(--jpd-space-2);color:var(--jpd-text-on-accent);box-shadow:var(--jpd-shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin-block-start:var(--jpd-space-4);display:flex;position:sticky;left:0}.jpd-zoombar__btn{font:inherit;font-family:var(--jpd-font-sans);color:inherit;appearance:button;cursor:pointer;border-radius:var(--jpd-radius-full);background-color:#0000;border:0 solid;justify-content:center;align-items:center;block-size:1.5rem;inline-size:1.5rem;margin:0;display:flex}.jpd-zoombar__value{text-align:center;inline-size:2.5rem;font-size:var(--jpd-font-size-body);line-height:var(--jpd-line-height-body);font-variant-numeric:tabular-nums;font-weight:500}.jpd-zoombar__sep{margin-inline:var(--jpd-space-1);background-color:var(--jpd-zoombar-active);block-size:1rem;inline-size:1px}@media (hover:hover){.jpd-zoombar__btn:hover{background-color:var(--jpd-zoombar-hover)}}.jpd-section__body{border-radius:var(--jpd-radius-md);border:2px dashed var(--jpd-section-border-strong,var(--jpd-section-border-hover));background-color:var(--jpd-section-soft-3,var(--jpd-section-soft-2));block-size:100%;inline-size:100%;position:relative;overflow:hidden}.jpd-section__handle{z-index:var(--jpd-z-dropdown);cursor:move;border-top-left-radius:var(--jpd-radius-sm);border-top-right-radius:var(--jpd-radius-sm);background-color:var(--jpd-section);block-size:1rem;padding-inline:var(--jpd-space-1-5);font-size:var(--jpd-font-size-micro);color:var(--jpd-text-on-accent);align-items:center;font-weight:500;display:flex;position:absolute;top:0;left:0;right:0}.jpd-chart__bars,.jpd-chart__frame{border-radius:var(--jpd-radius-md);border:1px solid var(--jpd-canvas-border,var(--jpd-border));background-color:var(--jpd-canvas-page);block-size:100%;inline-size:100%;display:flex}.jpd-chart__bars{justify-content:center;gap:var(--jpd-space-1-5);padding:var(--jpd-space-2);flex-direction:column}.jpd-chart__frame{padding:var(--jpd-space-1-5);justify-content:center;align-items:center;overflow:hidden}.jpd-chart__bar{border-radius:var(--jpd-radius-sm);block-size:.5rem}.jpd-chart__svg{vertical-align:middle;flex-shrink:0;display:block}.jpd-chart__legend{gap:var(--jpd-space-1);color:var(--jpd-canvas-text,var(--jpd-text-muted));flex-direction:column;line-height:1;display:flex}.jpd-chart__dot{border-radius:var(--jpd-radius-full);flex-shrink:0;block-size:.375rem;inline-size:.375rem}.jpd-chart__layout{align-items:center;display:flex}.jpd-chart__layout[data-legend=top],.jpd-chart__layout[data-legend=bottom]{gap:var(--jpd-space-1);flex-direction:column}.jpd-chart__layout[data-legend=left],.jpd-chart__layout[data-legend=right]{gap:var(--jpd-space-2)}.jpd-fieldtable{table-layout:fixed;block-size:100%;inline-size:100%;font-size:10px}.jpd-table__wrap{block-size:100%;inline-size:100%;overflow:hidden}.jpd-table__cell{border:1px solid var(--jpd-field-outline);padding:var(--jpd-space-1) var(--jpd-space-1-5);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.jpd-table__cell[data-role=head]{position:relative}.jpd-table__cell[data-role=foot]{font-weight:500}.jpd-table__row[data-banded]{background-color:var(--jpd-canvas-band,var(--jpd-surface-muted-2))}.jpd-table__resizer{z-index:var(--jpd-z-dropdown);cursor:col-resize;block-size:100%;inline-size:.375rem;position:absolute;top:0;right:0;transform:translate(50%)}@media (hover:hover){.jpd-table__resizer:hover{background-color:color-mix(in oklab, var(--jpd-accent-border-soft) 40%, transparent)}}.jpd-cell-input{inline-size:100%;font:inherit;color:inherit;text-align:inherit;background-color:#0000;border:0 solid;outline:none;padding:0}.jpd-cell-text{cursor:text;min-block-size:1em}.jpd-kpi{block-size:100%;inline-size:100%;position:relative;overflow:hidden}.jpd-kpi__box{text-overflow:ellipsis;white-space:nowrap;cursor:pointer;position:absolute;overflow:hidden}.jpd-kpi__box[data-draggable]{cursor:move}.jpd-kpi__box[data-focused]{outline-offset:2px;outline:1px dashed}.jpd-kpi__part[data-part=title]{text-transform:uppercase;letter-spacing:var(--jpd-tracking-wide);opacity:.9;font-weight:500}.jpd-kpi__part[data-part=value]{font-weight:700;line-height:var(--jpd-line-height-tight)}.jpd-kpi__part[data-part=subtitle]{opacity:.8}.jpd-imagefield__img{object-fit:contain;block-size:100%;inline-size:100%}.jpd-image-placeholder{border-radius:var(--jpd-radius-md);border:1px dashed var(--jpd-border-strong-2);block-size:100%;inline-size:100%;font-size:var(--jpd-font-size-small);color:var(--jpd-text-disabled-2);justify-content:center;align-items:center;display:flex}.jpd-textfield{box-sizing:border-box;white-space:pre-wrap;block-size:100%;inline-size:100%;padding:2px}.jpd-textfield--editing{font:inherit;font-family:var(--jpd-font-sans);color:inherit;resize:none;background-color:#0000;border:0 solid;outline:none}.jpd-textfield--static{overflow:hidden}}@layer utilities;:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#000;--jpd-surface:#fff;--jpd-surface-field:#fff;--jpd-surface-sunken:#f2f2f2;--jpd-surface-muted:#f2f2f2;--jpd-surface-muted-2:#f7f7f7;--jpd-surface-hover:#fff3b0;--jpd-surface-hover-soft:#fff8d0;--jpd-surface-active:#ffe97a;--jpd-overlay:#000000bf;--jpd-border:#111;--jpd-border-alt:#111;--jpd-border-strong:#000;--jpd-border-strong-2:#000;--jpd-swatch-ring:#111;--jpd-text-strong:#000;--jpd-text:#111;--jpd-text-field:#111;--jpd-text-muted:#333;--jpd-text-label:#000;--jpd-text-faint:#555;--jpd-text-disabled:#8a8a8a;--jpd-text-disabled-2:#8a8a8a;--jpd-text-ghost:#b0b0b0;--jpd-text-placeholder:#767676;--jpd-text-hover:#000;--jpd-text-hover-strong:#000;--jpd-text-on-accent:#000;--jpd-accent:#8a6d00;--jpd-accent-hover:#6b5400;--jpd-accent-text-hover:#6b5400;--jpd-accent-solid:#ffd400;--jpd-accent-solid-hover:#e6bf00;--jpd-accent-border:#000;--jpd-accent-border-soft:#111;--jpd-accent-border-solid:#000;--jpd-accent-border-hover:#000;--jpd-accent-soft:#fff3b0;--jpd-accent-soft-hover:#ffe97a;--jpd-accent-soft-strong:#ffd400;--jpd-accent-ring:#ffd400;--jpd-accent-ring-visible:#ffd400;--jpd-ring-offset:#fff;--jpd-danger:#ff3b30;--jpd-danger-hover:#e62a20;--jpd-danger-text:#c00000;--jpd-danger-text-hover:#a30000;--jpd-danger-soft:#0000000f;--jpd-danger-border:#c00000;--jpd-danger-ring:#ff3b30;--jpd-warn-text:#8a6d00;--jpd-warn-text-2:#6b5400;--jpd-section:#c9c9c9;--jpd-section-text:#000;--jpd-section-text-strong:#000;--jpd-section-text-soft:#333;--jpd-section-border:#111;--jpd-section-border-hover:#000;--jpd-section-border-strong:#000;--jpd-section-soft:#f2f2f2;--jpd-section-soft-2:#ededed;--jpd-section-soft-3:#f0f0f0;--jpd-section-hover:#e5e5e5;--jpd-section-hover-2:#dcdcdc;--jpd-canvas-border:#111;--jpd-canvas-text:#111;--jpd-canvas-band:#f2f2f2;--jpd-canvas-page:#fff;--jpd-canvas-guide:#00000047;--jpd-canvas-dim:#00000014;--jpd-field-outline:#8a8a8a;--jpd-selection:#000;--jpd-selection-ring:#ffd400;--jpd-locked:#6b5400;--jpd-ruler-bg:#f2f2f2;--jpd-ruler-tick:#555;--jpd-ruler-label:#111;--jpd-zoombar-bg:#ffd400;--jpd-zoombar-hover:#00000024;--jpd-zoombar-active:#00000042;--jpd-callout-sky:#fff8d0;--jpd-callout-sky-solid:#fff3b0;--jpd-callout-sky-border:#111;--jpd-callout-sky-border-solid:#111;--jpd-radius-sm:0;--jpd-radius-md:0;--jpd-radius-lg:0;--jpd-radius-xl:0;--jpd-radius-full:0;--jpd-shadow-sm:0 0 0 0 transparent;--jpd-shadow-md:3px 3px 0 0 #000;--jpd-shadow-lg:4px 4px 0 0 #000;--jpd-shadow-2xl:8px 8px 0 0 #000;--jpd-shadow-page:6px 6px 0 0 #000;--jpd-shadow-page-preview:6px 6px 0 0 #000;--jpd-font-sans:var(--jpd-font-mono);--jpd-tracking-wide:.08em;--jpd-space-2:.375rem;--jpd-space-2-5:.5rem;--jpd-space-3:.625rem;--jpd-space-3-5:.75rem;--jpd-space-4:.875rem;--jpd-space-5:1rem;--app-accent:#ffd400;--app-accent-hover:#e6bf00;--app-accent-soft:#fff3b0;--app-ink:#000;--app-ink-soft:#333;--app-ink-faint:#555;--app-line:#111;--app-line-soft:#555;--app-surface:#fff;--app-surface-soft:#f2f2f2;--app-ground:#e5e5e5;--app-danger:#c00000;--app-danger-solid:#ff3b30;--app-danger-soft:#ffe1de;--app-danger-line:#c00000;--app-ok:#0a6b2a;--app-radius:0;--app-radius-lg:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px}*{box-sizing:border-box}body{background:var(--app-ground);margin:0}.app{flex-direction:column;height:100vh;display:flex}.app-top{border-bottom:3px solid var(--app-accent);color:#fff;background:#000;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:7px 14px;display:flex}.app-top h1{letter-spacing:.12em;text-transform:uppercase;align-items:baseline;gap:8px;margin:0;font-size:13px;font-weight:700;display:flex}.app-top small{color:var(--app-accent);letter-spacing:.02em;text-transform:none;font-size:10px;font-weight:400}.app-version{letter-spacing:0;color:#8a8a8a;text-transform:none;font-size:10px;font-weight:400}.app-top__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.app-chip{border:1px solid var(--app-accent);border-radius:var(--app-radius);color:var(--app-accent);letter-spacing:.06em;text-transform:uppercase;cursor:default;padding:3px 7px;font-size:10px;font-weight:700}.app-select{border-radius:var(--app-radius);color:#fff;font:inherit;background:#000;border:1px solid #767676;padding:5px 6px;font-size:11px;font-weight:500}.app-select:hover,.app-select:focus-visible{border-color:var(--app-accent);color:var(--app-accent);outline:none}.app-select option{background:var(--app-surface);color:var(--app-ink)}.app-btn{border:2px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface);color:var(--app-ink);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;align-items:center;gap:5px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex}.app-btn:hover{background:var(--app-accent);color:#000}.app-btn--dark{color:#fff;background:0 0;border-width:1px;border-color:#767676}.app-btn--dark:hover{border-color:var(--app-accent);color:var(--app-accent);background:0 0}.app-btn--accent{border-color:var(--app-line);background:var(--app-accent);color:#000}.app-btn--accent:hover{background:var(--app-accent-hover);color:#000}.app-btn--ghost{background:0 0;border-style:dashed;justify-content:center}.app-generate{border:2px solid var(--app-accent);border-radius:var(--app-radius);background:var(--app-accent);color:#000;font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.app-generate:hover:not(:disabled){border-color:var(--app-accent-hover);background:var(--app-accent-hover)}.app-generate:disabled{opacity:.55;cursor:default}.app-icon-btn{border-radius:var(--app-radius);color:var(--app-ink-faint);font:inherit;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:3px;line-height:1;display:inline-flex}.app-icon-btn:hover{background:var(--app-accent);color:#000}.app-icon-btn--danger:hover{background:var(--app-danger-solid);color:#000}.app-banner{border-bottom:3px solid var(--app-danger-line);background:var(--app-danger-soft);color:var(--app-danger);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 14px;font-size:12px;display:flex}.app-banner--bug{border-bottom-color:var(--app-line);background:var(--app-ground);color:var(--app-ink)}.app-banner__body{flex-direction:column;gap:3px;min-width:0;display:flex}.app-banner__title{letter-spacing:.04em;text-transform:uppercase;font-weight:700}.app-banner__blame{letter-spacing:0;text-transform:none;opacity:.75;margin-left:6px;font-weight:400}.app-banner__detail{overflow-wrap:break-word;border-radius:var(--app-radius);white-space:pre-wrap;background:#ffffffb3;padding:5px;font-size:10px;display:block}.app-banner__actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.app-toolbar{border-bottom:2px solid var(--app-line);background:var(--app-surface);flex-shrink:0;padding:7px 14px}.app-body{flex:1;align-items:stretch;gap:10px;min-height:0;padding:10px 14px 14px;display:flex}.app-left,.app-right{flex-direction:column;flex-shrink:0;gap:10px;display:flex;overflow-y:auto}.app-left{width:288px}.app-right{width:320px}.app-center{border:2px solid var(--app-line);border-radius:var(--app-radius-lg);background:var(--app-surface);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.app-list-scroll{max-height:none;overflow:visible}.app-canvas{flex:1;min-width:0;padding:10px 14px 14px 10px;overflow:auto}.app-card{border:2px solid var(--app-line);border-radius:var(--app-radius-lg);background:var(--app-surface);flex-direction:column;flex-shrink:0;gap:6px;padding:9px;display:flex}.app-card__head{justify-content:space-between;align-items:center;gap:6px;display:flex}.app-h2{border-bottom:2px solid var(--app-accent);text-transform:uppercase;letter-spacing:.1em;color:var(--app-ink);margin:0;padding-bottom:2px;font-size:10px;font-weight:700}.app-h3{text-transform:uppercase;letter-spacing:.1em;color:var(--app-ink-faint);margin:0;font-size:9px;font-weight:700}.app-h3--sep{border-top:1px solid var(--app-line-soft);margin-top:6px;padding-top:6px}.app-note{color:var(--app-ink-soft);margin:0;font-size:11px;line-height:1.4}.app-note.is-error{color:var(--app-danger);font-weight:700}.app-note.is-ok{color:var(--app-ok);font-weight:700}.app-alert{color:var(--app-danger);margin:0;font-size:11px;line-height:1.4}.app-badge{border-radius:var(--app-radius);background:var(--app-danger-solid);color:#000;padding:1px 6px;font-size:10px;font-weight:700}.app-row{align-items:center;gap:8px;display:flex}.app-dropzone{border:2px dashed var(--app-line);border-radius:var(--app-radius);color:var(--app-ink-soft);text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:4px;padding:10px;font-size:11px;display:flex}.app-dropzone:hover,.app-dropzone.is-over{background:var(--app-accent);color:#000}.app-source-list{flex-direction:column;gap:8px;display:flex}.app-source{border:1px solid var(--app-line-soft);border-radius:var(--app-radius);padding:7px}.app-source__head{align-items:center;gap:5px;margin-bottom:5px;display:flex}.app-input,.app-textarea{border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface);width:100%;color:var(--app-ink);font:inherit;padding:4px 6px;font-size:11px}.app-input:focus,.app-textarea:focus{border-color:var(--app-line);outline:2px solid var(--app-accent);outline-offset:0}.app-textarea{resize:vertical;font-size:10px;line-height:1.45;display:block}.app-field-scroll{flex-direction:column;gap:5px;max-height:320px;display:flex;overflow-y:auto}.app-field-list{flex-direction:column;gap:4px;margin:0;padding:4px 0 0;list-style:none;display:flex}.app-field{border:1px solid var(--app-line-soft);border-radius:var(--app-radius);background:var(--app-surface-soft);cursor:grab;flex:1;align-items:center;gap:5px;padding:4px 6px;font-size:11px;display:flex}.app-field:hover,.app-field--source{border-color:var(--app-line);background:var(--app-accent-soft)}.app-field--native{border-style:dashed;border-color:var(--app-line);background:var(--app-surface)}.app-field__icon{color:var(--app-ink-faint);flex-shrink:0}.app-field__label{color:var(--app-ink);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.app-field__add{margin-left:auto}.app-field-group{align-items:center;gap:3px;display:flex}.app-field-group__label{color:var(--app-ink);font-size:11px;font-weight:700}.app-pagetabs{border-bottom:2px solid var(--app-line);background:var(--app-surface-soft);flex-shrink:0;align-items:center;gap:3px;padding:5px 6px 0;display:flex}.app-pagetab{border-radius:var(--app-radius);color:var(--app-ink-faint);border:2px solid #0000;border-bottom:none;align-items:center;gap:2px;padding:3px 8px;font-size:11px;font-weight:700;display:flex}.app-pagetab:hover{background:var(--app-accent-soft);color:var(--app-ink)}.app-pagetab.is-active{border-color:var(--app-line);background:var(--app-accent);color:#000}.app-pagetab__label,.app-pagetab__close,.app-pagetab__add{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:0 2px}.app-pagetab__close,.app-pagetab__add{border-radius:var(--app-radius);color:var(--app-ink-faint);line-height:1}.app-pagetab.is-active .app-pagetab__close{color:#000}.app-pagetab__close:hover,.app-pagetab__add:hover{color:var(--app-accent);background:#000}.app-pagetab__add{padding:3px 8px;font-size:13px}.app-problem-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.app-problem{border:1px solid var(--app-line-soft);border-left:5px solid var(--app-danger-line);border-radius:var(--app-radius);background:var(--app-danger-soft);width:100%;font:inherit;text-align:left;cursor:pointer;padding:5px 7px;font-size:11px;display:block}.app-problem:hover{border-color:var(--app-line);border-left-color:var(--app-danger-line)}.app-problem--config{border-left-color:var(--app-line);background:var(--app-surface-soft)}.app-problem__title{color:var(--app-ink);align-items:center;gap:4px;font-weight:700;display:flex}.app-problem__title code{color:var(--app-ink-soft);font-weight:400}.app-problem__msg{color:var(--app-ink-soft);margin-top:2px;display:block}.app-problem__page{color:var(--app-ink-faint);margin-top:2px;font-size:10px;display:block}.app-zoombar{border:1px solid var(--app-line);border-radius:var(--app-radius-lg);background:var(--app-surface);flex:none;align-items:center;gap:6px;padding:6px 10px;display:flex}.app-zoombar__btn{font:inherit;border:1px solid var(--app-line);border-radius:var(--app-radius);color:inherit;cursor:pointer;background:0 0;padding:5px 9px;font-size:12px;line-height:1}.app-zoombar__btn:disabled{opacity:.4;cursor:default}@media (hover:hover){.app-zoombar__btn:not(:disabled):hover{border-color:var(--app-accent);color:var(--app-accent)}}.app-zoombar__valor{text-align:right;font-variant-numeric:tabular-nums;opacity:.75;min-inline-size:44px;font-size:12px}.app-zoombar__slider{inline-size:120px;accent-color:var(--app-accent)}.app-zoombar__sep{background:var(--app-line);block-size:18px;inline-size:1px;margin-inline:2px}
