.pu-edit {
    position: absolute;
    top: 0;
    height: 0;
    left: 0;
    width: 0;
    z-index: 20;
    background-color: var(--pu-color);
    border-radius: 20px;
    visibility: hidden;
    overflow: scroll;
    scrollbar-width: none;
}

.pu-edit.active {
    width: var(--edt-width);
    height: fit-content;
    left: max(calc((100vw - var(--edt-width)) / 2), 0px);
    top: max(calc((100vh - var(--edt-height)) / 2), 0px);
    visibility: visible;
}

.pu-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    z-index: 10;
    background-color: rgba(255, 255, 255, 0.5);
    visibility: hidden;
}

.pu-bg.active {
    height: 100vh;
    width: 100vw;
    visibility: visible;
}

.pu-title {
    margin: 10px;
    text-align: center;
}

.pu-item {
    margin: 10px;
    padding: 5px;
    background-color: var(--bg-color);
    border-radius: 10px;
    border: #00000000 solid 2px;
}

.pu-item.editor {
    background-color: var(--ina-color);
    border: none;
    width: -webkit-fill-available;
    width: -moz-available;
    overflow: auto;
    white-space: nowrap;
    margin: 5px;
}

.pu-item.error {
    border-color: red;
}

.pu-dialog {
    position: fixed;
    top: 0;
    left: 0;
    width: 0;
    z-index: 30;
    background-color: var(--pu-color);
    border-radius: 20px;
    visibility: hidden;
    overflow: scroll;
}

.pu-dialog.active {
    width: var(--dlg-width);
    left: max(calc((100vw - var(--dlg-width)) / 2), 0px);
    top: max(calc((100vh - 200px) / 2), 0px);
    visibility: visible;
}

.pu-dialog .title {
    margin: 10px;
    text-align: center;
}

.pu-dialog .message {
    margin: 10px;
    background-color: var(--bg-color);
    border-radius: 10px;
    padding: 5px;
    height: fit-content;
}

.pu-dialog .buttons {
    display: grid;
    justify-items: center;
}

.pu-dialog .button-ok {
    background-color: var(--act-color);
    color: #ffffff;
    padding: 10px 40px;
    margin: 10px 10px;
    border-radius: 10px;
    cursor: pointer;
}

.pu-edit .buttons {
    display: grid;
    justify-items: center;
}

.pu-edit .button-ok {
    background-color: var(--act-color);
    color: #ffffff;
    padding: 10px 40px;
    margin: 10px 10px;
    border-radius: 10px;
    cursor: pointer;
}

.pu-item[data-name="dir"] {
  text-align: center;
}

.pu-wrapper > .pu-item[data-name="dir"] {
  background-color: white;
  padding: 0;
  border: none;
}

.pu-wrapper > .pu-item[data-name="dir"] > div {
  border-radius: 10px;
  padding: 10px;
}

.pu-wrapper[data-fact="0"][data-dir="in"] > .pu-item[data-name="dir"] > div {
  background-color: #ceffce7f;
}

.pu-wrapper[data-fact="0"][data-dir="out"] > .pu-item[data-name="dir"] > div {
  background-color: #ffcece7f;  
}

.pu-wrapper[data-fact="1"][data-dir="in"] > .pu-item[data-name="dir"] > div {
  background-color: #ceffce;
}

.pu-wrapper[data-fact="1"][data-dir="out"] > .pu-item[data-name="dir"] > div {
  background-color: #ffcece;  
}

input.pu-item.editor[type="checkbox"] {
  width: fit-content;
}