.publish-modal {
  position: relative;
  width: 600px;
  max-width: 100%;
  max-height: 100%;
  background-color: var(--bg-color);
  color: var(--text-color);
  box-sizing: border-box;
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  flex-direction: column;

  .header {
    flex: none;
    padding: 20px;
    border-bottom: 1px solid var(--border-color);
  }
  .footer {
    flex: none;
    padding: 20px;
    border-top: 1px solid var(--border-color);
    display: flex;
    flex-direction: row;
    justify-content: flex-end;

    .cancel, .publish {
      font-size: 14px;
      cursor: pointer;
      padding: 8px 14px;
      color: var(--text-inactive-color);
      margin-left: 20px;
      border-radius: 3px;
      &:hover {
        color: var(--text-active-color);
        background-color: var(--hover-bg-color);
      }
    }
  }

  .agent-list {
    height: 500px;
    overflow: scroll;
    .instance {
      .update-error {
        width: 100%;
        padding: 20px;
        box-sizing: border-box;
        & > div {
          border-radius: 3px;
          border: 1px solid var(--highlight-red);
          border-left-width: 4px;
          color: var(--highlight-red);
        }
      }
      .instance-header {
        padding: 15px;
        border-bottom: 1px solid var(--border-color);
        position: relative;
        display: flex;
        flex-direction: row;
        align-items: center;
        .name {
          color: var(--text-color);
          margin-left: 10px;
        }
        .go-to-flow {
          border: 1px solid var(--highlight-blue);
          cursor: pointer;
          color: var(--highlight-blue);
          opacity: 0.7;
          margin-left: 20px;
          border-radius: 15px;
          font-size: 0.8em;
          padding: 0px 5px;
          &:hover {
            opacity: 1;
            background-color: var(--light-blue);
          }
        }
        .class-expand-icon {
          line-height: 0;
          cursor: pointer;
          &:hover {
            background-color: var(--hover-bg-color);
            border-radius: 50%;
          }
          path {
            fill: var(--text-color);
          }
        }
        .toggle-widget {
          border: 1px solid var(--text-color);
          width: 14px;
          height: 14px;
          border-radius: 2px;
          margin: 10px;
          cursor: pointer;
          .checkmark-icon {
            line-height: 0;
            path {
              fill: white;
            }
          }
          &.active {
            background-color: rgb(14, 149, 14);
            border-color: rgb(14, 149, 14);
          }
        }
        .agent-publish-loader {
          margin-left: 20px;
          border: 4px solid var(--light-blue);
          border-top: 4px solid #389fe3;
          border-radius: 50%;
          width: 20px;
          height: 20px;
          animation: spin 2s linear infinite;
        }
        
        @keyframes spin {
          0% { transform: rotate(0deg); }
          100% { transform: rotate(360deg); }
        }

        svg.success-icon {
          margin-left: 20px;
          fill: rgb(14, 149, 14);
        }

        svg.error-icon {
          margin-left: 20px;
          fill: red;
        }
      }
      .class-agents {
        color: var(--text-color);
        box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.237);
      }
    }
  }
}