  .frame {
    position: absolute;
    left: 80px;
    top: 60px;
    width: 360px;
    height: 277px;
    background: var(--frame-bg);
    border-radius: 8px;
    box-shadow: var(--shadow);
    overflow: visible;
    user-select: none;
    touch-action: none;
  }

  .frame .title {
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
    font-size: 13px;
    border-bottom: 1px dashed rgba(0,0,0,.06);
    color: #111827;
    background: linear-gradient(180deg, rgba(255,255,255,.6), rgba(0,0,0,.01));
    border-radius: 6px;
    position: absolute;
  }

  .viewport {
    position: absolute;
    left: 0px;
    right: 0px;
    top: 30px;
    bottom: 0px;
    overflow: hidden;
    background: #ddd;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    touch-action: none; /* allow pointer events to get panning */
    cursor: grab;
    border-bottom-right-radius: 6px;
    border-bottom-left-radius: 6px;
  }

  .viewportFull {
    border-radius: 6px;
    top: 0px;
  }

  .viewport:active { cursor: grabbing; }

    #wrapper {
        width: 100%;
        height: 100%;
        /*overflow: hidden; /* hide the unscaled "ghost space" */
        position: relative;
        float: left;
    }

  .workplace{
    /* scale the whole thing  1100px */
    width: 1100px;
    height: 100%;
    transform-origin: top left;
    position: relative;

  }

  /* Resize handles: corners and edges */
  .handle {
    position: absolute;
    width: var(--handle-size);
    height: var(--handle-size);
    background: #fff;
    border: 2px solid #3b82f6;
    border-radius: 3px;
    box-sizing: border-box;
    touch-action: none;
    display: none;
  }

  .handle.nw { left: -7px; top: -7px; cursor: nwse-resize; }
  .handle.ne { right: -7px; top: -7px; cursor: nesw-resize; }
  .handle.sw { left: -7px; bottom: -7px; cursor: nesw-resize; }
  .handle.se { right: -7px; bottom: -7px; cursor: nwse-resize; }

  .handle.n { left: calc(50% - 6px); top: -7px; cursor: ns-resize; }
  .handle.s { left: calc(50% - 6px); bottom: -7px; cursor: ns-resize; }
  .handle.w { left: -7px; top: calc(50% - 6px); cursor: ew-resize; }
  .handle.e { right: -7px; top: calc(50% - 6px); cursor: ew-resize; }

  .move {
    position: absolute;
    width: var(--handle-size);
    height: var(--handle-size);
    background: #fff;
    border: 2px solid #3b82f6;
    border-radius: 3px;
    box-sizing: border-box;
    touch-action: none;
    display: none;

    right: 50%;
    top: 50%;
    cursor: move;
  }
