j3w1-form-builder { display: block; }
j3w1-form-builder {
  color-scheme: dark;
  background: var(--color-surface-canvas);
  color: var(--color-text-default);
  font-family: var(--font-family-mono);
  font-size: var(--font-size-ui-md);
  line-height: var(--font-line-height-ui-md);
}
j3w1-form-builder, j3w1-form-builder *, j3w1-form-builder *::before, j3w1-form-builder *::after { box-sizing: border-box; }
j3w1-form-builder button, j3w1-form-builder input, j3w1-form-builder select, j3w1-form-builder textarea { font: inherit; }
j3w1-form-builder ::selection {
  background: var(--color-interaction-text-selection-bg);
  color: var(--color-interaction-text-selection-text);
}
j3w1-form-builder .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

j3w1-form-builder .form-builder { min-inline-size: 0; max-inline-size: calc(var(--font-size-ui-md) * 56); padding: var(--space-16); background: var(--color-surface-default); color: var(--color-text-default); border: var(--border-width-default) solid var(--color-border-control); }
j3w1-form-builder .form-builder-status { color: var(--color-text-muted); }
j3w1-form-builder .form-builder-editor { display: grid; gap: var(--space-8); }
j3w1-form-builder .form-builder-editor label { display: grid; gap: var(--space-4); }
j3w1-form-builder .form-builder-editor :is(input:not([type=checkbox]), textarea, select) { inline-size: 100%; min-inline-size: 0; box-sizing: border-box; background: var(--color-surface-input); color: var(--color-text-default); border: var(--border-width-default) solid var(--color-border-control); padding: var(--space-8); font: inherit; }
j3w1-form-builder .form-builder-editor label:has(input[type=checkbox]) { display: flex; }
j3w1-form-builder .form-builder-list { padding-inline-start: var(--space-24); }
j3w1-form-builder .form-builder-list li { margin-block: var(--space-16); overflow-wrap: anywhere; }

j3w1-form-builder .button {
  --_bg: var(--color-action-primary-bg);
  --_fg: var(--color-action-primary-text);
  --_border: var(--color-action-primary-border);
  --_bg-hover: var(--color-action-primary-hover-bg);
  --_fg-hover: var(--color-action-primary-text);
  --_bg-active: var(--color-action-primary-pressed-bg);
  --_border-active: var(--color-action-primary-border);
  --_ring: var(--color-interaction-focus-ring-container);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-4);
  min-height: var(--density-control-height, 32px);
  padding: 0 var(--density-control-padding-x, 12px);
  margin: 0;
  background: var(--_bg);
  color: var(--_fg);
  border: var(--border-width-default) solid var(--_border);
  border-radius: var(--radius-none);
  font: inherit;
  font-size: var(--font-size-ui-md);
  line-height: var(--font-line-height-ui-md);
  white-space: nowrap;
  cursor: pointer;
  outline: 0;
}

j3w1-form-builder .button-secondary {
  --_bg: var(--color-action-secondary-bg);
  --_fg: var(--color-action-secondary-text);
  --_border: var(--color-action-secondary-border);
  --_bg-hover: var(--color-action-secondary-hover-bg);
  --_fg-hover: var(--color-action-secondary-text);
  --_bg-active: var(--color-action-secondary-pressed-bg);
  --_border-active: var(--color-border-active);
  --_ring: var(--color-interaction-focus-ring);
}

j3w1-form-builder .button-tertiary {
  --_bg: transparent;
  --_fg: var(--color-action-tertiary-text);
  --_border: transparent;
  --_bg-hover: var(--color-action-tertiary-hover-bg);
  --_fg-hover: var(--color-action-tertiary-text);
  --_bg-active: var(--color-interaction-pressed-bg);
  --_border-active: var(--color-border-active);
  --_ring: var(--color-interaction-focus-ring);
}

j3w1-form-builder .button-destructive {
  --_bg: transparent;
  --_fg: var(--color-action-destructive-text);
  --_border: var(--color-action-destructive-border);
  --_bg-hover: var(--color-action-destructive-hover-bg);
  --_fg-hover: var(--color-action-destructive-hover-text);
  --_bg-active: var(--color-action-destructive-pressed-bg);
  --_border-active: var(--color-action-destructive-border);
  --_ring: var(--color-interaction-focus-ring);
}
j3w1-form-builder .button-destructive-filled {
  --_bg: var(--color-action-destructive-filled-bg);
  --_fg: var(--color-action-destructive-filled-text);
  --_border: var(--color-action-destructive-border);
  --_bg-hover: var(--color-action-destructive-hover-bg);
  --_fg-hover: var(--color-action-destructive-hover-text);
  --_bg-active: var(--color-action-destructive-pressed-bg);
  --_border-active: var(--color-action-destructive-border);
  --_ring: var(--color-action-destructive-filled-text);
}

j3w1-form-builder .button-icon {
  flex: none;
  width: var(--icon-size-md);
  height: var(--icon-size-md);
  stroke: currentColor;
  fill: none;
}

j3w1-form-builder .button-loading {
  display: none;
  flex: none;
}

j3w1-form-builder .button-label {
  min-width: 0;
}
@media (hover: hover) {
  j3w1-form-builder .button:hover {
    --_bg: var(--_bg-hover);
    --_fg: var(--_fg-hover);
  }

  j3w1-form-builder .button-destructive:hover {
    --_ring: var(--color-action-destructive-hover-text);
  }
}
j3w1-form-builder .button:active {
  --_bg: var(--_bg-active);
  --_fg: var(--_fg-hover);
  --_border: var(--_border-active);
}
j3w1-form-builder .button:focus-visible {
  outline: var(--border-width-default) dashed var(--_ring);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .button[aria-busy="true"] .button-loading {
  display: inline;
}

j3w1-form-builder .button[aria-busy="true"] .button-icon {
  display: none;
}

j3w1-form-builder .button[aria-busy="true"] {
  cursor: progress;
}
j3w1-form-builder .button:disabled {
  --_bg: var(--color-interaction-disabled-bg);
  --_fg: var(--color-text-disabled);
  --_border: var(--color-border-disabled);
  --_bg-hover: var(--color-interaction-disabled-bg);
  --_fg-hover: var(--color-text-disabled);
  --_bg-active: var(--color-interaction-disabled-bg);
  --_border-active: var(--color-border-disabled);
  cursor: not-allowed;
}

@media (prefers-reduced-motion: no-preference) {
  j3w1-form-builder .button {
    transition: background-color var(--motion-duration-fast);
  }
}

@media (forced-colors: active) {
  j3w1-form-builder .button:focus-visible {
    outline-color: Highlight;
  }
}

j3w1-form-builder .text-field {
  position: relative;
  display: grid;
  gap: var(--space-4);
  min-width: 0;
  max-width: calc(var(--font-size-ui-md) * 28);
  color: var(--color-text-default);
}

j3w1-form-builder .text-field-label {
  color: var(--color-text-bright);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .text-field-required {
  display: none;
  color: var(--color-status-danger-text);
}

j3w1-form-builder .text-field-root {
  display: flex;
  min-width: 0;
  align-items: stretch;
  min-height: var(--density-control-height, 32px);
  background: var(--color-surface-input);
  border: var(--border-width-default) solid var(--color-border-control);
  border-radius: var(--radius-none);
}

j3w1-form-builder .text-field-input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 var(--density-control-padding-x, 12px);
  background: transparent;
  border: 0;
  color: var(--color-text-default);
  caret-color: var(--color-code-caret);
  font: inherit;
  outline: 0;
}

j3w1-form-builder .text-field-input::placeholder {
  color: var(--color-text-placeholder);
  font-style: italic;
  opacity: 1;
}

j3w1-form-builder .text-field-input::selection {
  background: var(--color-interaction-text-selection-bg);
  color: var(--color-interaction-text-selection-text);
}

j3w1-form-builder .text-field-input-numeric {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

j3w1-form-builder .text-field-input::-webkit-search-cancel-button,
j3w1-form-builder .text-field-input::-webkit-inner-spin-button,
j3w1-form-builder .text-field-input::-webkit-outer-spin-button {
  appearance: none;
  display: none;
}

j3w1-form-builder .text-field-affix {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  padding: 0 var(--space-8);
  color: var(--color-text-muted);
  border-inline-end: var(--border-width-default) solid var(--color-border-divider);
}

j3w1-form-builder .text-field-input ~ .text-field-affix {
  border-inline-end: 0;
  border-inline-start: var(--border-width-default) solid var(--color-border-divider);
}

j3w1-form-builder .text-field-action {
  padding: 0 var(--space-8);
  white-space: nowrap;
  background: transparent;
  border: 0;
  border-inline-start: var(--border-width-default) solid var(--color-border-divider);
  color: var(--color-action-tertiary-text);
  font: inherit;
  cursor: pointer;
}

j3w1-form-builder .text-field-action:hover {
  background: var(--color-action-tertiary-hover-bg);
}

j3w1-form-builder .text-field-action:focus-visible {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}

j3w1-form-builder .text-field-stepper {
  display: flex;
}

j3w1-form-builder .text-field-loading {
  display: none;
  align-items: center;
  padding: 0 var(--space-8);
  color: var(--color-text-muted);
}

j3w1-form-builder .text-field-help {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .text-field-message {
  display: none;
  margin: 0;
  color: var(--color-status-danger-text);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}
j3w1-form-builder .text-field-root:hover {
  background: var(--color-interaction-hover-bg);
}
j3w1-form-builder .text-field-root:has(.text-field-input:focus-visible) {
  border-color: var(--color-border-active);
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .text-field:has(.text-field-input:required) .text-field-required {
  display: inline;
}
j3w1-form-builder .text-field-root:has(.text-field-input[aria-invalid="true"]),
j3w1-form-builder .text-field-root:has(.text-field-input:user-invalid) {
  border-color: var(--color-status-danger-border);
  border-width: var(--border-width-emphasis);
}

j3w1-form-builder .text-field:has(.text-field-input[aria-invalid="true"]) .text-field-message,
j3w1-form-builder .text-field:has(.text-field-input:user-invalid) .text-field-message {
  display: block;
}

j3w1-form-builder .text-field:has(.text-field-input[aria-invalid="true"]) .text-field-help {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
j3w1-form-builder .text-field-root:has(.text-field-input[aria-invalid="true"]:focus-visible) {
  border-color: var(--color-status-danger-border);
  outline: var(--border-width-default) dashed var(--color-interaction-focus-ring-container);
  outline-offset: var(--focus-offset-invalid);
}
j3w1-form-builder .text-field-root:has(.text-field-input:disabled) {
  background: var(--color-interaction-disabled-bg);
  border-color: var(--color-border-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .text-field-input:disabled {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .text-field-root:has(.text-field-input:disabled):hover {
  background: var(--color-interaction-disabled-bg);
}
j3w1-form-builder .text-field-root:has(.text-field-input:read-only:not(:disabled)) {
  background: var(--color-surface-canvas);
  border-color: transparent;
  border-bottom: var(--border-width-default) dotted var(--color-border-divider);
}

j3w1-form-builder .text-field-root:has(.text-field-input:read-only:focus-visible) {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .text-field-root[aria-busy="true"] .text-field-loading {
  display: inline-flex;
}

@media (hover: none) {
  j3w1-form-builder .text-field-root:hover {
    background: var(--color-surface-input);
  }
}

@media (forced-colors: active) {
  j3w1-form-builder .text-field-root:has(.text-field-input:focus-visible) {
    outline-color: Highlight;
  }
}

j3w1-form-builder .textarea {
  position: relative;
  display: grid;
  gap: var(--space-4);
  min-width: 0;
  max-width: calc(var(--font-size-ui-md) * 28);
  color: var(--color-text-default);
}

j3w1-form-builder .textarea-label {
  color: var(--color-text-bright);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .textarea-required {
  display: none;
  color: var(--color-status-danger-text);
}

j3w1-form-builder .textarea-root {
  display: grid;
  min-width: 0;
  background: var(--color-surface-input);
  border: var(--border-width-default) solid var(--color-border-control);
  border-radius: var(--radius-none);
}

j3w1-form-builder .textarea-input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: calc(var(--density-control-height, 32px) * 2);
  padding: var(--space-4) var(--density-control-padding-x, 12px);
  background: transparent;
  border: 0;
  color: var(--color-text-default);
  caret-color: var(--color-code-caret);
  font: inherit;
  line-height: var(--font-line-height-ui-md);
  resize: vertical;
  outline: 0;
}

j3w1-form-builder .textarea-input::placeholder {
  color: var(--color-text-placeholder);
  font-style: italic;
  opacity: 1;
}

j3w1-form-builder .textarea-input::selection {
  background: var(--color-interaction-text-selection-bg);
  color: var(--color-interaction-text-selection-text);
}

j3w1-form-builder .textarea-count {
  margin: 0;
  justify-self: end;
  color: var(--color-text-muted);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
  font-variant-numeric: tabular-nums;
}

j3w1-form-builder .textarea-help {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .textarea-message {
  display: none;
  margin: 0;
  color: var(--color-status-danger-text);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}
j3w1-form-builder .textarea-root:hover {
  background: var(--color-interaction-hover-bg);
}
j3w1-form-builder .textarea-root:has(.textarea-input:focus-visible) {
  border-color: var(--color-border-active);
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .textarea:has(.textarea-input:required) .textarea-required {
  display: inline;
}
j3w1-form-builder .textarea-root:has(.textarea-input[aria-invalid="true"]),
j3w1-form-builder .textarea-root:has(.textarea-input:user-invalid) {
  border-color: var(--color-status-danger-border);
  border-width: var(--border-width-emphasis);
}

j3w1-form-builder .textarea:has(.textarea-input[aria-invalid="true"]) .textarea-message,
j3w1-form-builder .textarea:has(.textarea-input:user-invalid) .textarea-message {
  display: block;
}

j3w1-form-builder .textarea:has(.textarea-input[aria-invalid="true"]) .textarea-count {
  color: var(--color-status-danger-text);
}

j3w1-form-builder .textarea:has(.textarea-input[aria-invalid="true"]) .textarea-help {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
j3w1-form-builder .textarea-root:has(.textarea-input[aria-invalid="true"]:focus-visible) {
  border-color: var(--color-status-danger-border);
  outline: var(--border-width-default) dashed var(--color-interaction-focus-ring-container);
  outline-offset: var(--focus-offset-invalid);
}
j3w1-form-builder .textarea-root:has(.textarea-input:disabled) {
  background: var(--color-interaction-disabled-bg);
  border-color: var(--color-border-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .textarea-input:disabled {
  color: var(--color-text-disabled);
  resize: none;
  cursor: not-allowed;
}

j3w1-form-builder .textarea:has(.textarea-input:disabled) .textarea-label {
  color: var(--color-text-disabled);
}

j3w1-form-builder .textarea-root:has(.textarea-input:disabled):hover {
  background: var(--color-interaction-disabled-bg);
}
j3w1-form-builder .textarea-root:has(.textarea-input:read-only:not(:disabled)) {
  background: var(--color-surface-canvas);
  border-color: transparent;
  border-bottom: var(--border-width-default) dotted var(--color-border-divider);
}

j3w1-form-builder .textarea-input:read-only {
  resize: none;
}

j3w1-form-builder .textarea-root:has(.textarea-input:read-only:focus-visible) {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}

@media (hover: none) {
  j3w1-form-builder .textarea-root:hover {
    background: var(--color-surface-input);
  }
}

@media (forced-colors: active) {
  j3w1-form-builder .textarea-root:has(.textarea-input:focus-visible) {
    outline-color: Highlight;
  }
}

j3w1-form-builder :where([data-j3w1-controls] *)[hidden] { display:none!important; }
j3w1-form-builder :where([data-j3w1-controls] *):where(button,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea) { min-height:var(--density-control-height,32px); padding:var(--space-8) var(--density-control-padding-x,12px); border:var(--border-width-default) solid var(--color-border-control); border-radius:var(--radius-none); background:var(--color-surface-input); color:var(--color-text-default); font:inherit; }
j3w1-form-builder :where([data-j3w1-controls] *):where(button,input:not([type="checkbox"]):not([type="radio"]):not([type="range"])) { padding-block:0; }
j3w1-form-builder :where([data-j3w1-controls] *):where(button,input,textarea):focus-visible { outline:var(--focus-ring); outline-offset:var(--focus-offset); }
j3w1-form-builder :where([data-j3w1-controls] *):where(button,input,textarea):disabled { color:var(--color-text-disabled); background:var(--color-interaction-disabled-bg); border-color:var(--color-border-disabled); opacity:1; }
j3w1-form-builder :where([data-j3w1-controls] *):where(input,textarea)::placeholder { color:var(--color-text-placeholder); opacity:1; }
j3w1-form-builder :where([data-j3w1-controls] *):where(fieldset) { min-width:0; padding:var(--space-16); border:var(--border-width-default) solid var(--color-border-control); }
j3w1-form-builder .j3w1-temporal { display:block; min-width:0; max-width:100%; }
j3w1-form-builder .j3w1-temporal-row { display:flex; align-items:stretch; min-width:0; border:var(--border-width-default) solid var(--color-border-control); background:var(--color-surface-input); }
j3w1-form-builder .j3w1-temporal-input { min-width:0; width:100%; padding:0 var(--density-control-padding-x,12px); border:0; border-radius:var(--radius-none); background:var(--color-surface-input); color:var(--color-text-default); font:inherit; }
j3w1-form-builder .j3w1-temporal-action { flex:none; min-width:var(--space-32); border:0; border-inline-start:var(--border-width-default) solid var(--color-border-control); border-radius:var(--radius-none); background:var(--color-surface-raised); color:var(--color-text-bright); font:inherit; cursor:pointer; }
j3w1-form-builder .j3w1-temporal-hint { display:block; margin-block-start:var(--space-4); color:var(--color-text-muted); font-size:var(--font-size-ui-sm); }
j3w1-form-builder .j3w1-temporal :focus-visible,j3w1-form-builder .j3w1-calendar :focus-visible { outline:var(--focus-ring); outline-offset:var(--focus-offset); }
j3w1-form-builder .j3w1-temporal [aria-invalid="true"] { border:var(--border-width-emphasis) solid var(--color-status-danger-border); }
j3w1-form-builder .j3w1-temporal [aria-invalid="true"]:focus-visible { outline:var(--focus-ring-container); }
j3w1-form-builder .j3w1-temporal-row:focus-within { border-color:var(--color-border-active); }
j3w1-form-builder .j3w1-temporal-input:hover:not(:disabled):not([readonly]) { background:var(--color-interaction-hover-bg); }
j3w1-form-builder .j3w1-temporal :disabled { color:var(--color-text-disabled); background:var(--color-interaction-disabled-bg); cursor:not-allowed; }
j3w1-form-builder .j3w1-temporal-input[readonly] { background:var(--color-surface-canvas); }
j3w1-form-builder .j3w1-temporal-row:has([readonly]) { border:0; border-block-end:var(--border-width-default) solid var(--color-border-divider); background:var(--color-surface-canvas); }
j3w1-form-builder .j3w1-temporal-row:has([readonly]) > .j3w1-temporal-action { display:none; }
j3w1-form-builder .j3w1-temporal-row:has(input:disabled) { border-color:var(--color-border-disabled); }
j3w1-form-builder .j3w1-calendar { display:block; box-sizing:border-box; width:min(calc(var(--font-size-ui-md) * 22),calc(100vw - var(--space-16))); margin:0; padding:var(--space-12); border:var(--border-width-default) solid var(--color-border-overlay); border-radius:var(--radius-none); background:var(--color-surface-raised); color:var(--color-text-default); font:inherit; z-index:var(--z-popover); }
j3w1-form-builder .j3w1-calendar[hidden] { display:none; }
j3w1-form-builder .j3w1-calendar-heading { display:flex; justify-content:space-between; align-items:center; gap:var(--space-8); margin-block-end:var(--space-12); }
j3w1-form-builder .j3w1-calendar-week { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:var(--space-4); }
j3w1-form-builder .j3w1-calendar [role="columnheader"] { text-align:center; color:var(--color-text-muted); padding-block:var(--space-4); }
j3w1-form-builder .j3w1-calendar button { width:100%; padding:var(--space-8) var(--space-4); border:var(--border-width-default) solid var(--color-border-control); border-radius:var(--radius-none); background:var(--color-surface-input); color:var(--color-text-default); font:inherit; cursor:pointer; }
j3w1-form-builder .j3w1-calendar [data-month] { width:auto; min-width:var(--space-32); }
j3w1-form-builder .j3w1-calendar [aria-pressed="true"] { background:var(--color-interaction-selection-bg); color:var(--color-interaction-selection-text); }
j3w1-form-builder .j3w1-calendar [aria-pressed="true"]:focus-visible { outline:var(--focus-ring-container); }
j3w1-form-builder .j3w1-calendar button:disabled { color:var(--color-text-disabled); background:var(--color-interaction-disabled-bg); cursor:not-allowed; }
j3w1-form-builder .j3w1-choice { display: block; min-width: min(calc(var(--font-size-ui-md) * 12), calc(100vw - var(--space-32))); max-width: 100%; color: var(--color-text-default); font: inherit; }
j3w1-form-builder .j3w1-choice-trigger { display: flex; align-items: center; justify-content: space-between; gap: var(--space-12); width: 100%; min-height: var(--density-control-height, 32px); padding: 0 var(--density-control-padding-x, 12px); border: var(--border-width-default) solid var(--color-border-control); background: var(--color-surface-input); color: var(--color-text-default); border-radius: var(--radius-none); font: inherit; text-align: start; cursor: pointer; }
j3w1-form-builder .j3w1-choice-value { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
j3w1-form-builder .j3w1-choice-chevron { flex: none; width: var(--icon-size-md); height: var(--icon-size-md); color: var(--color-text-accent); }
j3w1-form-builder .j3w1-choice-trigger:hover { background: var(--color-interaction-hover-bg); }
j3w1-form-builder .j3w1-choice-trigger:focus-visible,j3w1-form-builder .j3w1-choice-list:focus-visible { outline: var(--focus-ring); outline-offset: var(--focus-offset); }
j3w1-form-builder .j3w1-choice-list { display: block; box-sizing: border-box; min-width: 0; max-width: calc(100vw - var(--space-16)); max-height: calc(var(--font-size-ui-md) * 18); overflow: auto; margin: 0; padding: 0; background: var(--color-surface-raised); color: var(--color-text-default); border: var(--border-width-default) solid var(--color-border-overlay); border-radius: var(--radius-none); font: inherit; z-index: var(--z-popover); }
j3w1-form-builder .j3w1-choice-list[popover] { inset: auto; }
j3w1-form-builder .j3w1-choice-list[hidden] { display: none; }
j3w1-form-builder .j3w1-choice-option { display: flex; align-items: center; gap: var(--space-8); min-height: var(--density-control-height, 32px); padding: 0 var(--space-8); border-inline-start: var(--border-width-emphasis) solid transparent; cursor: pointer; overflow-wrap: anywhere; }
j3w1-form-builder .j3w1-choice-check { flex: none; width: var(--icon-size-md); visibility: hidden; }
j3w1-form-builder .j3w1-choice-option[aria-selected="true"] { background: var(--color-interaction-selection-bg); color: var(--color-interaction-selection-text); border-inline-start-color: var(--color-border-selected-indicator); }
j3w1-form-builder .j3w1-choice-option[aria-selected="true"] .j3w1-choice-check { visibility: visible; }
j3w1-form-builder .j3w1-choice-option[data-active],j3w1-form-builder .j3w1-choice-option:hover { outline: var(--focus-ring); outline-offset: calc(-1 * var(--space-2)); }
j3w1-form-builder .j3w1-choice-option[aria-selected="true"][data-active],j3w1-form-builder .j3w1-choice-option[aria-selected="true"]:hover { outline: var(--focus-ring); }
j3w1-form-builder .j3w1-choice-option[aria-disabled="true"] { color: var(--color-text-disabled); cursor: not-allowed; }
j3w1-form-builder .j3w1-choice-trigger:disabled,j3w1-form-builder .j3w1-choice-list[aria-disabled="true"] { color: var(--color-text-disabled); background: var(--color-interaction-disabled-bg); border-color: var(--color-border-disabled); cursor: not-allowed; }
j3w1-form-builder .j3w1-choice-group { display: block; }
j3w1-form-builder .j3w1-choice-group-label { display: block; padding: var(--space-8); color: var(--color-text-muted); font-size: var(--font-size-ui-sm); }
j3w1-form-builder .j3w1-choice-error { display: block; color: var(--color-status-danger-text); margin-block-start: var(--space-4); }
j3w1-form-builder .j3w1-choice [aria-invalid="true"] { border: var(--border-width-emphasis) solid var(--color-status-danger-border); }
j3w1-form-builder .select-root:has(.j3w1-choice) > .select-chevron { display: none; }
j3w1-form-builder :where([data-j3w1-controls] *)::selection { color: var(--color-interaction-text-selection-text); background: var(--color-interaction-text-selection-bg); }
j3w1-form-builder :where([data-j3w1-controls] *):where(button,input,textarea) { accent-color: var(--color-interaction-selection-bg); font: inherit; border-radius: var(--radius-none); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="checkbox"]:not(.checkbox-input),j3w1-form-builder input:where([data-j3w1-controls] *)[type="radio"]:not(.radio-input):not(.radio-group-input) { appearance: none; display: inline-grid; place-content: center; width: var(--density-icon, 16px); height: var(--density-icon, 16px); padding: 0; vertical-align: middle; border: var(--border-width-default) solid var(--color-border-control); background: var(--color-surface-input); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="checkbox"]:not(.checkbox-input):checked,j3w1-form-builder input:where([data-j3w1-controls] *)[type="radio"]:not(.radio-input):not(.radio-group-input):checked { background: var(--color-interaction-selection-bg); color: var(--color-interaction-selection-text); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="checkbox"]:not(.checkbox-input):checked::after { content: '✓'; font-size: calc(var(--density-icon, 16px) * 0.75); line-height: 1; }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="radio"]:not(.radio-input):not(.radio-group-input):checked::after { content: ''; width: calc(var(--density-icon, 16px) / 2); height: calc(var(--density-icon, 16px) / 2); background: var(--color-interaction-selection-text); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="file"]::file-selector-button { font: inherit; padding: var(--space-8) var(--space-12); margin-inline-end: var(--space-12); border: var(--border-width-default) solid var(--color-border-control); border-radius: var(--radius-none); color: var(--color-text-default); background: var(--color-surface-raised); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="number"] { appearance: textfield; }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="number"]::-webkit-inner-spin-button,j3w1-form-builder input:where([data-j3w1-controls] *)[type="number"]::-webkit-outer-spin-button { appearance: none; margin: 0; }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="range"] { appearance:none; background:var(--color-surface-input); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="range"]::-webkit-slider-runnable-track { height:var(--space-4); background:var(--color-border-control); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="range"]::-moz-range-track { height:var(--space-4); background:var(--color-border-control); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="range"]::-webkit-slider-thumb { appearance:none; width:var(--icon-size-md); height:var(--icon-size-md); margin-top:calc((var(--space-4) - var(--icon-size-md)) / 2); border:var(--border-width-default) solid var(--color-border-control); border-radius:var(--radius-none); background:var(--color-action-primary-bg); }
j3w1-form-builder input:where([data-j3w1-controls] *)[type="range"]::-moz-range-thumb { width:var(--icon-size-md); height:var(--icon-size-md); border:var(--border-width-default) solid var(--color-border-control); border-radius:var(--radius-none); background:var(--color-action-primary-bg); }

j3w1-form-builder .select {
  position: relative;
  display: grid;
  gap: var(--space-4);
  min-width: 0;
  max-width: calc(var(--font-size-ui-md) * 28);
  color: var(--color-text-default);
}

j3w1-form-builder .select-label {
  color: var(--color-text-bright);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .select-required {
  display: none;
  color: var(--color-status-danger-text);
}

j3w1-form-builder .select-root {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: var(--density-control-height, 32px);
  background: var(--color-surface-input);
  color: var(--color-icon-default);
  border: var(--border-width-default) solid var(--color-border-control);
  border-radius: var(--radius-none);
}

j3w1-form-builder .select-control {
  appearance: none;
  width: 100%;
  min-width: 0;
  min-height: calc(var(--density-control-height, 32px) - 2 * var(--border-width-default));
  padding: 0 calc(var(--density-control-padding-x, 12px) + var(--icon-size-md) + var(--space-4)) 0 var(--density-control-padding-x, 12px);
  margin: 0;
  background: transparent;
  border: 0;
  border-radius: var(--radius-none);
  color: var(--color-text-default);
  font: inherit;
  cursor: default;
  outline: 0;
}

j3w1-form-builder .select-control-multiple {
  padding: var(--space-2) 0;
  overflow-y: auto;
}

j3w1-form-builder .select-control option,
j3w1-form-builder .select-control optgroup {
  background: var(--color-surface-raised);
  color: var(--color-text-default);
  font: inherit;
  font-style: normal;
}

j3w1-form-builder .select-control option {
  padding: 0 var(--density-control-padding-x, 12px);
  min-height: var(--density-row-height, 36px);
}

j3w1-form-builder .select-control optgroup {
  color: var(--color-text-muted);
}

j3w1-form-builder .select-control option:checked {
  background: var(--color-interaction-selection-bg);
  color: var(--color-interaction-selection-text);
}

j3w1-form-builder .select-chevron {
  position: absolute;
  inset-inline-end: var(--density-control-padding-x, 12px);
  top: 50%;
  width: var(--icon-size-md);
  height: var(--icon-size-md);
  margin-top: calc(var(--icon-size-md) / -2);
  stroke: currentColor;
  fill: none;
  pointer-events: none;
}

j3w1-form-builder .select-help {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .select-message {
  display: none;
  margin: 0;
  color: var(--color-status-danger-text);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}
@media (hover: hover) {
  j3w1-form-builder .select-root:hover {
    background: var(--color-interaction-hover-bg);
  }
}
j3w1-form-builder .select-root:has(.select-control:focus-visible) {
  border-color: var(--color-border-active);
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .select:has(.select-control:required) .select-required {
  display: inline;
}
j3w1-form-builder .select-root:has(.select-control[aria-invalid="true"]),
j3w1-form-builder .select-root:has(.select-control:user-invalid) {
  border-color: var(--color-status-danger-border);
  border-width: var(--border-width-emphasis);
}

j3w1-form-builder .select:has(.select-control[aria-invalid="true"]) .select-message,
j3w1-form-builder .select:has(.select-control:user-invalid) .select-message {
  display: block;
}

j3w1-form-builder .select:has(.select-control[aria-invalid="true"]) .select-help {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
j3w1-form-builder .select-root:has(.select-control[aria-invalid="true"]:focus-visible) {
  border-color: var(--color-status-danger-border);
  outline: var(--border-width-default) dashed var(--color-interaction-focus-ring-container);
  outline-offset: var(--focus-offset-invalid);
}
j3w1-form-builder .select-root:has(.select-control:disabled) {
  background: var(--color-interaction-disabled-bg);
  color: var(--color-text-disabled);
  border-color: var(--color-border-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .select-control:disabled {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .select:has(.select-control:disabled) .select-label {
  color: var(--color-text-disabled);
}

@media (forced-colors: active) {
  j3w1-form-builder .select-root:has(.select-control:focus-visible) {
    outline-color: Highlight;
  }
}
j3w1-form-builder .select-control:disabled {
  opacity: 1;
}

j3w1-form-builder .checkbox {
  display: grid;
  gap: var(--space-4);
  min-width: 0;
  max-width: calc(var(--font-size-ui-md) * 28);
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--color-text-default);
}

j3w1-form-builder .checkbox-legend {
  padding: 0;
  margin-bottom: var(--space-4);
  color: var(--color-text-bright);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .checkbox-required {
  display: none;
  color: var(--color-status-danger-text);
}

j3w1-form-builder .checkbox-option {
  display: grid;
  grid-template-columns: var(--density-icon, 16px) minmax(0, 1fr);
  align-items: center;
  gap: var(--space-4);
  min-height: var(--space-24);
  padding: var(--space-2) 0;
  cursor: pointer;
}

j3w1-form-builder .checkbox-control {
  display: inline-grid;
  width: var(--density-icon, 16px);
  height: var(--density-icon, 16px);
  color: var(--color-action-primary-text);
}

j3w1-form-builder .checkbox-control > * {
  grid-area: 1 / 1;
}

j3w1-form-builder .checkbox-input {
  appearance: none;
  width: var(--density-icon, 16px);
  height: var(--density-icon, 16px);
  margin: 0;
  background: var(--color-surface-input);
  border: var(--border-width-default) solid var(--color-border-control);
  border-radius: var(--radius-none);
  cursor: pointer;
  outline: 0;
}

j3w1-form-builder .checkbox-check,
j3w1-form-builder .checkbox-dash {
  display: none;
  width: var(--density-icon, 16px);
  height: var(--density-icon, 16px);
  stroke: currentColor;
  fill: none;
  pointer-events: none;
}

j3w1-form-builder .checkbox-text {
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .checkbox-message {
  display: none;
  margin: 0;
  color: var(--color-status-danger-text);
  font-size: var(--font-size-caption);
  line-height: var(--font-line-height-caption);
}
@media (hover: hover) {
  j3w1-form-builder .checkbox-option:hover .checkbox-input:not(:disabled) {
    background: var(--color-interaction-hover-bg);
  }

  j3w1-form-builder .checkbox-option:hover .checkbox-input:checked:not(:disabled),
  j3w1-form-builder .checkbox-option:hover .checkbox-input:indeterminate:not(:disabled) {
    background: var(--color-action-primary-hover-bg);
  }
}
j3w1-form-builder .checkbox-input:checked {
  background: var(--color-action-primary-bg);
}

j3w1-form-builder .checkbox-input:checked ~ .checkbox-check {
  display: block;
}
j3w1-form-builder .checkbox-input:indeterminate {
  background: var(--color-action-primary-bg);
}

j3w1-form-builder .checkbox-input:indeterminate ~ .checkbox-check {
  display: none;
}

j3w1-form-builder .checkbox-input:indeterminate ~ .checkbox-dash {
  display: block;
}
j3w1-form-builder .checkbox-input:focus-visible {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .checkbox-input:checked:focus-visible,
j3w1-form-builder .checkbox-input:indeterminate:focus-visible {
  outline: var(--border-width-default) dashed var(--color-interaction-focus-ring-container);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .checkbox:has(.checkbox-input:required) .checkbox-required {
  display: inline;
}
j3w1-form-builder .checkbox-input[aria-invalid="true"] {
  border-color: var(--color-status-danger-border);
  border-width: var(--border-width-emphasis);
}

j3w1-form-builder .checkbox:has(.checkbox-input[aria-invalid="true"]) .checkbox-message {
  display: block;
}
j3w1-form-builder .checkbox-input:disabled {
  background: var(--color-interaction-disabled-bg);
  border-color: var(--color-border-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .checkbox-input:disabled ~ .checkbox-check,
j3w1-form-builder .checkbox-input:disabled ~ .checkbox-dash {
  color: var(--color-text-disabled);
}

j3w1-form-builder .checkbox-option:has(.checkbox-input:disabled) {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .checkbox:disabled .checkbox-legend {
  color: var(--color-text-disabled);
}

@media (forced-colors: active) {
  j3w1-form-builder .checkbox-input:focus-visible {
    outline-color: Highlight;
  }

  j3w1-form-builder .checkbox-input:checked,
  j3w1-form-builder .checkbox-input:indeterminate {
    background: Highlight;
  }

  j3w1-form-builder .checkbox-control {
    color: HighlightText;
  }
}

j3w1-form-builder .radio-group {
  display: grid;
  gap: var(--space-4);
  min-width: 0;
  max-width: calc(var(--font-size-ui-md) * 28);
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--color-text-default);
}

j3w1-form-builder .radio-group-legend {
  padding: 0;
  margin-bottom: var(--space-4);
  color: var(--color-text-bright);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .radio-group-required {
  display: none;
  color: var(--color-status-danger-text);
}

j3w1-form-builder .radio-group-options {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

j3w1-form-builder .radio-group-horizontal .radio-group-options {
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--space-4) var(--space-16);
}

j3w1-form-builder .radio-group-option {
  display: grid;
  grid-template-columns: var(--density-icon, 16px) minmax(0, 1fr);
  align-items: start;
  gap: var(--space-8);
  min-height: var(--space-24);
  padding: var(--space-4) 0;
  cursor: pointer;
}

j3w1-form-builder .radio-group-control {
  display: inline-grid;
  width: var(--density-icon, 16px);
  height: var(--density-icon, 16px);
}

j3w1-form-builder .radio-group-control > * {
  grid-area: 1 / 1;
}

j3w1-form-builder .radio-group-input {
  appearance: none;
  width: var(--density-icon, 16px);
  height: var(--density-icon, 16px);
  margin: 0;
  background: var(--color-surface-input);
  border: var(--border-width-default) solid var(--color-border-control);
  border-radius: var(--radius-none);
  cursor: pointer;
  outline: 0;
}

j3w1-form-builder .radio-group-dot {
  display: none;
  width: var(--space-8);
  height: var(--space-8);
  margin: var(--space-4);
  background: var(--color-action-primary-text);
  pointer-events: none;
}

j3w1-form-builder .radio-group-text {
  font-size: var(--font-size-ui-md);
  line-height: var(--font-line-height-ui-md);
}

j3w1-form-builder .radio-group-message {
  display: none;
  margin: 0;
  color: var(--color-status-danger-text);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}
@media (hover: hover) {
  j3w1-form-builder .radio-group-option:hover .radio-group-input:not(:disabled) {
    background: var(--color-interaction-hover-bg);
  }

  j3w1-form-builder .radio-group-option:hover .radio-group-input:checked:not(:disabled) {
    background: var(--color-action-primary-hover-bg);
  }
}
j3w1-form-builder .radio-group-input:checked {
  background: var(--color-action-primary-bg);
}

j3w1-form-builder .radio-group-input:checked ~ .radio-group-dot {
  display: block;
}
j3w1-form-builder .radio-group-input:focus-visible {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .radio-group-input:checked:focus-visible {
  outline: var(--border-width-default) dashed var(--color-interaction-focus-ring-container);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .radio-group:has(.radio-group-input:required) .radio-group-required {
  display: inline;
}
j3w1-form-builder .radio-group-input[aria-invalid="true"] {
  border-color: var(--color-status-danger-border);
  border-width: var(--border-width-emphasis);
}

j3w1-form-builder .radio-group:has(.radio-group-input[aria-invalid="true"]) .radio-group-message {
  display: block;
}
j3w1-form-builder .radio-group-input:disabled {
  background: var(--color-interaction-disabled-bg);
  border-color: var(--color-border-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .radio-group-input:disabled ~ .radio-group-dot {
  background: var(--color-text-disabled);
}

j3w1-form-builder .radio-group-option:has(.radio-group-input:disabled) {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .radio-group:disabled .radio-group-legend {
  color: var(--color-text-disabled);
}

@media (forced-colors: active) {
  j3w1-form-builder .radio-group-input:focus-visible {
    outline-color: Highlight;
  }

  j3w1-form-builder .radio-group-input:checked {
    background: Highlight;
  }

  j3w1-form-builder .radio-group-dot {
    background: HighlightText;
  }
}

j3w1-form-builder .alert {
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
  min-width: 0;
  padding: var(--space-8) var(--space-12);
  border: var(--border-width-default) solid;
  border-radius: var(--radius-none);
  color: var(--color-text-default);
  font-size: var(--font-size-ui-md);
  line-height: var(--font-line-height-ui-md);
}

j3w1-form-builder .alert-danger {
  background: var(--color-status-danger-tint);
  border-color: var(--color-status-danger-border);
  --_status-text: var(--color-status-danger-text);
}

j3w1-form-builder .alert-warning {
  background: var(--color-status-warning-tint);
  border-color: var(--color-status-warning-border);
  --_status-text: var(--color-status-warning-text);
}

j3w1-form-builder .alert-success {
  background: var(--color-status-success-tint);
  border-color: var(--color-status-success-border);
  --_status-text: var(--color-status-success-text);
}

j3w1-form-builder .alert-info {
  background: var(--color-status-info-tint);
  border-color: var(--color-status-info-border);
  --_status-text: var(--color-status-info-text);
}

j3w1-form-builder .alert-neutral {
  background: var(--color-status-neutral-tint);
  border-color: var(--color-status-neutral-border);
  --_status-text: var(--color-status-neutral-text);
}

j3w1-form-builder .alert-glyph {
  flex: 0 0 auto;
  min-width: var(--icon-size-md);
  color: var(--_status-text);
  font-weight: var(--font-weight-bold);
  text-align: center;
}

j3w1-form-builder .alert-body {
  flex: 1 1 auto;
  min-width: 0;
}

j3w1-form-builder .alert-title {
  display: block;
  color: var(--_status-text);
  font-weight: var(--font-weight-bold);
}

j3w1-form-builder .alert-text {
  margin: 0;
  overflow-wrap: anywhere;
}

j3w1-form-builder .alert-close {
  flex: 0 0 auto;
  min-width: 24px;
  min-height: 24px;
  margin: calc(-1 * var(--space-2)) calc(-1 * var(--space-4)) 0 0;
  padding: 0 var(--space-4);
  background: transparent;
  border: 0;
  border-radius: var(--radius-none);
  color: var(--color-action-tertiary-text);
  font: inherit;
  cursor: pointer;
}
j3w1-form-builder .alert-close:hover {
  background: var(--color-action-tertiary-hover-bg);
}
j3w1-form-builder .alert-close:focus-visible {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}

@media (hover: none) {
  j3w1-form-builder .alert-close:hover {
    background: transparent;
  }
}

@media (forced-colors: active) {
  j3w1-form-builder .alert {
    border-color: CanvasText;
  }

  j3w1-form-builder .alert-close:focus-visible {
    outline-color: Highlight;
  }
}

j3w1-form-builder .table {
  width: 100%;
  min-width: 0;
  border-collapse: collapse;
  border-spacing: 0;
  background: var(--color-surface-default);
  border: 0;
  border-radius: var(--radius-none);
  color: var(--color-text-default);
  text-align: start;
}

j3w1-form-builder .table-scroller {
  max-height: calc(var(--density-comfortable-row-height, 36px) * 4);
  overflow: auto;
  min-width: 0;
}

j3w1-form-builder .table-caption {
  padding: 0 0 var(--space-8);
  color: var(--color-text-muted);
  text-align: start;
  caption-side: top;
}

j3w1-form-builder .table thead th { color: var(--color-text-bright); }
j3w1-form-builder .table tbody th { color: inherit; font-weight: var(--font-weight-regular); }

j3w1-form-builder .table .table-header {
  position: static;
  height: var(--density-comfortable-row-height, 36px);
  min-width: 0;
  padding: 0 var(--density-control-padding-x, 12px);
  background: var(--color-surface-default);
  border: 0;
  border-bottom: var(--border-width-default) solid var(--color-border-strong);
  color: var(--color-text-bright);
  font-weight: var(--font-weight-bold);
  text-align: start;
  white-space: nowrap;
  vertical-align: middle;
}

j3w1-form-builder .table .table-header-numeric,
j3w1-form-builder .table .table-cell-numeric {
  text-align: end;
  font-variant-numeric: tabular-nums;
}

j3w1-form-builder .table-sort {
  display: inline-flex;
  align-items: center;
  gap: var(--space-4);
  width: 100%;
  min-height: var(--density-control-height, 32px);
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: var(--radius-none);
  color: inherit;
  font: inherit;
  text-align: inherit;
  cursor: pointer;
}

j3w1-form-builder .table-header-numeric .table-sort {
  justify-content: flex-end;
}

j3w1-form-builder .table-sort-glyph {
  display: none;
  color: var(--color-text-bright);
}

j3w1-form-builder .table .table-row {
  height: var(--density-comfortable-row-height, 36px);
  background: transparent;
  border-top: var(--border-width-default) solid var(--color-border-divider);
}

j3w1-form-builder .table .table-body .table-row:first-child {
  border-top: 0;
}

j3w1-form-builder .table .table-cell {
  min-width: 0;
  padding: var(--space-4) var(--density-control-padding-x, 12px);
  background: transparent;
  border: 0;
  color: inherit;
  vertical-align: middle;
}

j3w1-form-builder .table .table-empty[hidden],
j3w1-form-builder .table .table-loading[hidden] {
  display: none;
}

j3w1-form-builder .table .table-empty-cell,
j3w1-form-builder .table .table-loading-cell {
  color: var(--color-text-muted);
  text-align: center;
}

j3w1-form-builder .table-loading-glyph {
  color: var(--color-text-muted);
}

j3w1-form-builder .table-loading-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
j3w1-form-builder .table-sticky .table-header {
  position: sticky;
  top: 0;
  z-index: var(--z-raised);
  background: var(--color-surface-raised);
  border-bottom-width: var(--border-width-emphasis);
}
j3w1-form-builder .table-body .table-row:hover {
  background: var(--color-interaction-hover-bg);
}
j3w1-form-builder .table-sort:focus-visible {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}

j3w1-form-builder .table-sort:focus:not(:focus-visible) {
  outline: 0;
}
j3w1-form-builder .table-row[aria-selected="true"] {
  background: var(--color-interaction-selection-bg);
  color: var(--color-interaction-selection-text);
}

j3w1-form-builder .table-row[aria-selected="true"]:hover {
  background: var(--color-interaction-selection-bg);
}
j3w1-form-builder .table-row[aria-selected="true"]:focus-visible,
j3w1-form-builder .table-row[aria-selected="true"]:focus-within {
  outline: var(--border-width-default) dashed var(--color-interaction-focus-ring-container);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .table[data-container-inactive] .table-row[aria-selected="true"] {
  background: var(--color-interaction-selection-inactive-bg);
  color: var(--color-interaction-selection-inactive-text);
  outline: 0;
}
j3w1-form-builder .table-header[aria-sort="ascending"] .table-sort-glyph,
j3w1-form-builder .table-header[aria-sort="descending"] .table-sort-glyph {
  display: inline;
}

j3w1-form-builder .table-header[aria-sort="descending"] .table-sort-glyph {
  transform: scaleY(-1);
}

j3w1-form-builder .table-body .table-empty:not([hidden]) {
  display: table-row;
}
j3w1-form-builder .table[aria-busy="true"] .table-body .table-row {
  display: none;
}

j3w1-form-builder .table[aria-busy="true"] .table-body .table-loading,
j3w1-form-builder .table-body .table-loading:not([hidden]) {
  display: table-row;
}

@media (hover: none) {
  j3w1-form-builder .table-body .table-row:hover {
    background: transparent;
  }

  j3w1-form-builder .table-row[aria-selected="true"]:hover {
    background: var(--color-interaction-selection-bg);
  }
}

@media (prefers-reduced-motion: no-preference) {
  j3w1-form-builder .table-row {
    transition: background-color var(--motion-duration-fast);
  }
}

@media (forced-colors: active) {
  j3w1-form-builder .table-sort:focus-visible {
    outline-color: Highlight;
  }

  j3w1-form-builder .table-row[aria-selected="true"] {
    background: Highlight;
    color: HighlightText;
  }
}

j3w1-form-builder .admin-form {
  container-type: inline-size;
  container-name: admin-form;
  display: grid;
  gap: var(--space-16);
  width: calc(var(--font-size-ui-md) * 56);
  max-width: 100%;
  min-width: 0;
  padding: var(--space-16);
  background: var(--color-surface-default);
  border: var(--border-width-default) solid var(--color-border-default);
  border-radius: var(--radius-none);
  color: var(--color-text-default);
  font-size: var(--font-size-ui-md);
  line-height: var(--font-line-height-ui-md);
}

j3w1-form-builder .admin-form-title {
  margin: calc(-1 * var(--space-8)) 0 0;
  color: var(--color-text-bright);
  font-size: var(--font-size-h2);
  line-height: var(--font-line-height-h2);
  font-weight: var(--font-weight-bold);
  overflow-wrap: anywhere;
}
j3w1-form-builder .admin-form .admin-form-steps {
  max-width: none;
}
j3w1-form-builder .admin-form .admin-form-summary {
  display: none;
}

j3w1-form-builder .admin-form-fields {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, calc(var(--font-size-ui-md) * 20)), 1fr));
  gap: var(--space-16) var(--space-24);
  align-items: start;
  min-width: 0;
}

j3w1-form-builder .admin-form .admin-form-fields > * {
  max-width: none;
}

j3w1-form-builder .admin-form-notes {
  grid-column: 1 / -1;
}

j3w1-form-builder .admin-form-footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--space-8);
  padding-top: var(--space-12);
  border-top: var(--border-width-default) solid var(--color-border-divider);
}
@container admin-form (width < 600px) {
  j3w1-form-builder .admin-form-footer {
    flex-direction: column-reverse;
  }

  j3w1-form-builder .admin-form-footer .button {
    width: 100%;
  }
}
j3w1-form-builder .admin-form-review {
  min-width: 0;
}

j3w1-form-builder .admin-form .admin-form-review .admin-form-review-key {
  width: 30%;
  color: var(--color-text-muted);
  font-weight: var(--font-weight-regular);
  text-align: start;
  white-space: nowrap;
}

j3w1-form-builder .admin-form .admin-form-review .admin-form-review-actions {
  width: 1%;
  text-align: end;
  white-space: nowrap;
}
j3w1-form-builder .admin-form[aria-busy="true"] .admin-form-continue .button-loading {
  display: inline;
}

j3w1-form-builder .admin-form[aria-busy="true"] .admin-form-continue {
  cursor: progress;
}

@media (forced-colors: active) {
  j3w1-form-builder .admin-form {
    border-color: CanvasText;
  }
}

j3w1-form-builder .field {
  position: relative;
  display: grid;
  gap: var(--space-2);
  min-width: 0;
  max-width: calc(var(--font-size-ui-md) * 28);
  color: var(--color-text-default);
}

j3w1-form-builder .field-label {
  color: var(--color-text-bright);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
}

j3w1-form-builder .field-required {
  display: none;
  color: var(--color-status-danger-text);
}

j3w1-form-builder .field-control {
  display: grid;
  min-width: 0;
}

j3w1-form-builder .field-input {
  min-width: 0;
  min-height: var(--density-control-height, 32px);
  padding: 0 var(--density-control-padding-x, 12px);
  background: var(--color-surface-input);
  color: var(--color-text-default);
  border: var(--border-width-default) solid var(--color-border-control);
  border-radius: var(--radius-none);
  font: inherit;
  outline: 0;
}

j3w1-form-builder .field-input:focus-visible {
  border-color: var(--color-border-active);
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}

j3w1-form-builder .field-help {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-caption);
  line-height: var(--font-line-height-caption);
}

j3w1-form-builder .field-message {
  display: none;
  margin: 0;
  color: var(--color-status-danger-text);
  font-size: var(--font-size-caption);
  line-height: var(--font-line-height-caption);
}
j3w1-form-builder .field:has(:required) .field-required {
  display: inline;
}
j3w1-form-builder .field:has([aria-invalid="true"]) .field-input {
  border-color: var(--color-status-danger-border);
  border-width: var(--border-width-emphasis);
}

j3w1-form-builder .field:has([aria-invalid="true"]) .field-message {
  display: block;
}

j3w1-form-builder .field:has([aria-invalid="true"]) .field-help {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
j3w1-form-builder .field:has(:disabled) .field-label {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}

j3w1-form-builder .field-input:disabled {
  background: var(--color-interaction-disabled-bg);
  color: var(--color-text-disabled);
  border-color: var(--color-border-disabled);
  cursor: not-allowed;
}

@media (forced-colors: active) {
  j3w1-form-builder .field-input:focus-visible {
    outline-color: Highlight;
  }
}

j3w1-form-builder .switch-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-8);
  min-width: 0;
  color: var(--color-text-default);
}

j3w1-form-builder .switch-name {
  font-size: var(--font-size-ui-md);
  line-height: var(--font-line-height-ui-md);
}

j3w1-form-builder .switch {
  display: inline-flex;
  align-items: center;
  gap: var(--space-8);
  min-height: var(--space-24);
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
  border-radius: var(--radius-none);
  color: var(--color-text-default);
  font: inherit;
  cursor: pointer;
  outline: 0;
}

j3w1-form-builder .switch-track {
  display: flex;
  justify-content: flex-start;
  box-sizing: border-box;
  width: calc(var(--icon-size-md) * 2);
  height: var(--icon-size-md);
  padding: var(--space-2);
  background: var(--color-surface-input);
  border: var(--border-width-default) solid var(--color-border-control);
  border-radius: var(--radius-none);
}

j3w1-form-builder .switch-thumb {
  display: block;
  width: calc(var(--icon-size-md) - 2 * var(--border-width-default) - 2 * var(--space-2));
  height: calc(var(--icon-size-md) - 2 * var(--border-width-default) - 2 * var(--space-2));
  background: var(--color-text-default);
}

j3w1-form-builder .switch-state {
  color: var(--color-text-muted);
  font-size: var(--font-size-ui-sm);
  line-height: var(--font-line-height-ui-sm);
  white-space: nowrap;
}

j3w1-form-builder .switch-state-on {
  display: none;
}
@media (hover: hover) {
  j3w1-form-builder .switch:hover:not(:disabled) .switch-track {
    background: var(--color-interaction-hover-bg);
  }

  j3w1-form-builder .switch[aria-checked="true"]:hover:not(:disabled) .switch-track {
    background: var(--color-action-primary-hover-bg);
  }
}
j3w1-form-builder .switch[aria-checked="true"] .switch-track {
  justify-content: flex-end;
  background: var(--color-action-primary-bg);
}

j3w1-form-builder .switch[aria-checked="true"] .switch-thumb {
  background: var(--color-action-primary-text);
}

j3w1-form-builder .switch[aria-checked="true"] .switch-state-off {
  display: none;
}

j3w1-form-builder .switch[aria-checked="true"] .switch-state-on {
  display: inline;
}
j3w1-form-builder .switch:focus-visible .switch-track {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}

j3w1-form-builder .switch[aria-checked="true"]:focus-visible .switch-track {
  outline: var(--border-width-default) dashed var(--color-interaction-focus-ring-container);
  outline-offset: var(--focus-offset);
}
j3w1-form-builder .switch:disabled {
  cursor: not-allowed;
}

j3w1-form-builder .switch:disabled .switch-track {
  background: var(--color-interaction-disabled-bg);
  border-color: var(--color-border-disabled);
}

j3w1-form-builder .switch:disabled .switch-thumb {
  background: var(--color-text-disabled);
}

j3w1-form-builder .switch-row:has(.switch:disabled) .switch-name,
j3w1-form-builder .switch:disabled .switch-state {
  color: var(--color-text-disabled);
}

@media (forced-colors: active) {
  j3w1-form-builder .switch:focus-visible .switch-track {
    outline-color: Highlight;
  }

  j3w1-form-builder .switch[aria-checked="true"] .switch-track {
    background: Highlight;
  }

  j3w1-form-builder .switch[aria-checked="true"] .switch-thumb {
    background: HighlightText;
  }
}

j3w1-form-builder .form-tool { inline-size: 100%; max-inline-size: calc(var(--font-size-ui-md) * 56); min-inline-size: 0; grid-template-columns: minmax(0, 1fr); }
j3w1-form-builder .form-tool[hidden], j3w1-form-builder .form-tool [hidden] { display: none !important; }
j3w1-form-builder .form-tool fieldset { min-inline-size: 0; }
j3w1-form-builder .form-tool-actions { display: flex; flex-wrap: wrap; gap: var(--space-8); margin-block: var(--space-16); }
j3w1-form-builder .form-tool-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); border: 0; padding: 0; margin: 0; }
j3w1-form-builder .form-field-help { color: var(--color-text-muted); margin: 0; font-size: var(--font-size-ui-sm); }
j3w1-form-builder .form-tool-summary { margin-block: var(--space-4); }
j3w1-form-builder .form-tool-summary a { color: inherit; }
j3w1-form-builder .form-tool table { inline-size: 100%; overflow-wrap: anywhere; }
j3w1-form-builder .form-tool th, j3w1-form-builder .form-tool td { text-align: start; padding: var(--space-2); }
j3w1-form-builder .form-tool pre { white-space: pre-wrap; overflow-wrap: anywhere; }

j3w1-form-builder [hidden] { display: none !important; }
j3w1-form-builder .j3w1-visually-hidden {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
j3w1-form-builder .j3w1-readonly-text { white-space: pre; overflow: auto; font: inherit; }
j3w1-form-builder dialog.dialog:modal, j3w1-form-builder dialog.command-palette-dialog:modal {
  position: fixed; inset: 0; margin: auto;
  max-width: calc(100vw - var(--space-32)); max-height: calc(100dvh - var(--space-32)); overflow: auto;
}
j3w1-form-builder dialog.drawer:modal { position: fixed; inset-block: 0; margin-block: 0; max-height: 100dvh; height: 100dvh; overflow: auto; }
j3w1-form-builder dialog.drawer-start:modal { inset-inline-start: 0; inset-inline-end: auto; margin-inline: 0; }
j3w1-form-builder dialog.drawer-end:modal { inset-inline-end: 0; inset-inline-start: auto; margin-inline: 0; }
j3w1-form-builder .menu-list, j3w1-form-builder .combobox-listbox, j3w1-form-builder .tooltip-popup, j3w1-form-builder .popover-panel { z-index: var(--z-popover); }
j3w1-form-builder .tooltip-popup:not([hidden]) { display: block; width: max-content; max-width: min(calc(var(--font-size-ui-md) * 24), calc(100vw - var(--space-32))); }
j3w1-form-builder .combobox-option[aria-selected=true] { background: var(--color-interaction-selection-bg); color: var(--color-interaction-selection-text); }
j3w1-form-builder .menu-list [role=menu] { min-width: calc(var(--font-size-ui-md) * 10); }
j3w1-form-builder [data-tree-toggle] { border: 0; padding: 0 var(--space-4); background: transparent; color: inherit; font: inherit; cursor: pointer; }
j3w1-form-builder .file-input-zone[data-dragging=true] { outline: var(--border-width-emphasis) dashed var(--color-interaction-drop-target); }
j3w1-form-builder .data-table-resize { cursor: col-resize; touch-action: none; }
j3w1-form-builder .wizard-panel[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) {
  j3w1-form-builder, j3w1-form-builder * { scroll-behavior: auto; animation: none; transition: none; }
}
@media (forced-colors: active) {
  j3w1-form-builder .chart-series { fill: CanvasText; stroke: CanvasText; }
  j3w1-form-builder [aria-selected=true] { border-inline-start: var(--border-width-emphasis) solid Highlight; }
}
