.integration-page .config-form {
  width: 100%;
  display: grid;
  grid-template-columns: 50px 50px 1fr;
  grid-template-rows: auto; }
  .integration-page .config-form > * {
    grid-column: 2 / 4; }
  .integration-page .config-form .marker {
    grid-column: 1 / 2 !important;
    border-radius: 100%;
    width: 2rem;
    height: 2rem;
    z-index: 1;
    display: grid;
    place-items: center; }
    .integration-page .config-form .marker.job-item, .integration-page .config-form .marker.target-item {
      grid-column: 2 / 3 !important;
      transform: translate(-0.25em, 1em) !important; }
  .integration-page .config-form .marker.field {
    width: 1rem;
    height: 1rem;
    margin: 0.5rem 1px;
    background: var(--line-dark);
    transform: translateY(1rem); }
    .integration-page .config-form .marker.field.blurred {
      background: var(--confirm);
      border: none; }
    .integration-page .config-form .marker.field.blurred.invalid {
      background: var(--hazard); }
  .integration-page .config-form input[type=text] {
    min-width: 55ch; }
  .integration-page .config-form .form-actions {
    grid-column: 1 / 4; }

.integration-page h2, .integration-page h3, .integration-page h4, .integration-page h5, .integration-page h6 {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0.6rem;
  margin-bottom: 0.6rem; }

.integration-page h2 + h3,
.integration-page h3 + h4,
.integration-page h4 + h5,
.integration-page h5 + h6 {
  margin-top: 0; }

.integration-page h3, .integration-page h4, .integration-page h5, .integration-page h6 {
  font-size: var(--text-size-medium);
  line-height: var(--text-line-height-large); }

.integration-page h2 > i {
  display: inline-block;
  width: 1em;
  text-align: center; }

.integration-page .entity-title {
  color: var(--text-black); }
  .integration-page .entity-title i {
    display: inline-block;
    width: 1rem;
    color: var(--text-light); }
  .integration-page .entity-title span {
    color: var(--text-light); }

.integration-page .entity-title + .entity-title,
.integration-page fieldset + .entity-title,
.integration-page .options-title + .options-title,
.integration-page fieldset + .options-title {
  margin-top: 0; }

.integration-page table p, .integration-page table pre {
  margin: 0; }

.integration-page table p + p, .integration-page table pre + pre {
  margin-top: 0.6em; }

.integration-page details.target-item {
  margin-top: -1rem;
  margin-bottom: 0.6rem; }
  .integration-page details.target-item summary {
    list-style: none;
    font-size: var(--text-size-small);
    line-height: var(--text-line-height-small);
    cursor: pointer; }
  .integration-page details.target-item summary dl {
    float: left;
    clear: both; }
  .integration-page details.target-item summary::after {
    content: 'Show target information';
    color: var(--text-light);
    cursor: pointer; }
  .integration-page details.target-item[open] summary::after {
    content: "Hide target information"; }

.integration-page details.page-section {
  grid-column: 1 / 4; }
  .integration-page details.page-section > summary {
    list-style: none;
    cursor: pointer; }
    .integration-page details.page-section > summary > * {
      display: inline-block; }
  .integration-page details.page-section > summary::before {
    content: "\25BA";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    transition: transform 0.3s ease-in-out;
    margin-right: 1rem; }
  .integration-page details.page-section[open] > summary::before {
    transform: rotate(90deg); }
  .integration-page details.page-section .inner-grid {
    overflow-x: scroll;
    display: grid;
    grid-template-columns: 2rem 1.4rem 1fr;
    grid-template-rows: auto; }
    .integration-page details.page-section .inner-grid > * {
      grid-column: 2 / 4; }
    .integration-page details.page-section .inner-grid > .target-item,
    .integration-page details.page-section .inner-grid > .job-item {
      grid-column: 3 / 4; }
    .integration-page details.page-section .inner-grid fieldset {
      margin-left: -0.3rem; }

.integration-page dl.inline-dl {
  background: var(--bg);
  border-radius: 5px;
  padding: 0.5em;
  width: max-content;
  display: grid;
  grid-template-columns: max-content 1fr;
  row-gap: 0.2rem;
  margin: 0.6rem 0;
  margin: calc(0.6rem - 0.5em) -0.5em;
  font-size: var(--text-size-small);
  line-height: var(--text-line-height-small); }
  .integration-page dl.inline-dl dt {
    display: flex;
    align-items: baseline;
    min-inline-size: 8rem; }
  .integration-page dl.inline-dl dt::after {
    content: "";
    block-size: .2em;
    flex: 1;
    margin-left: 0.2rem;
    margin-right: 0.2rem;
    border-bottom: dashed #eaeaea 0.5px; }
  .integration-page dl.inline-dl dd {
    margin: 0; }

.integration-page .connection-action {
  max-width: 35ch; }

.integration-page table th:first-child,
.integration-page table td:first-child {
  width: 2.5em; }
