.org-tree-wrap,
.org-tree-wrap * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
}
.org-tree-wrap {
    position: relative;
    max-width: 1200px;
    margin: 20px auto;
    padding: 0 20px;
    color: #000;
    background: transparent;
}
.org-tree-wrap .tree-lines {
    position: absolute;
    left: 0; top: 0;
    pointer-events: none;
    overflow: visible;
    z-index: 0;
    display: block;
}
.org-tree-wrap .children {
    margin-left: 58px;
    position: relative;
    /* высотой управляет только JS через inline style */
}
.org-tree-wrap .item {
    position: relative;
    display: block;
}
.org-tree-wrap .node {
    position: relative;
    margin: 12px 0;
    cursor: pointer;
    z-index: 1;
    display: block;
    width: 100%;
    background: transparent;
    border: none;
    outline: none;
    list-style: none;
    text-decoration: none;
    text-align: left !important;
    padding: 0 !important;
    margin-left: 0;
}
.org-tree-wrap .node.no-toggle { cursor: default; }
.org-tree-wrap .card {
    position: relative;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 18px;
    min-height: 96px;
    width: 100%;
    text-align: left !important;
    padding: 18px 70px 18px 18px !important;
    margin: 0;
    background: #dfe5f0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    border: none !important;
    margin-left: 0;
    flex-direction: row !important;
}
.org-tree-wrap .avatar {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px;
    border-radius: 50% !important;
    background: #b0bcd0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #fff !important;
    overflow: hidden;
    flex-shrink: 0;
    align-self: flex-start;
    order: 1 !important;
}
.org-tree-wrap .info {
    display: flex !important;
    flex-direction: column !important;
    flex: 1;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    min-width: 0;
    order: 2 !important;
}
.org-tree-wrap .dept {
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    color: #000 !important;
    text-decoration: none !important;
    display: block !important;
    text-align: left !important;
    width: 100%;
}
.org-tree-wrap .name {
    margin-top: 10px !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    color: #34476d !important;
    text-decoration: none !important;
    display: block !important;
    text-align: left !important;
    width: 100%;
}
.org-tree-wrap .arrow {
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) rotate(0deg) !important;
    width: 22px !important;
    height: 22px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #5f6b7a !important;
    line-height: 1 !important;
    transition: transform 0.25s ease, color 0.25s ease !important;
    pointer-events: none;
}
.org-tree-wrap .arrow svg {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    stroke: currentColor !important;
    stroke-width: 2.2 !important;
    fill: none !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}
/* Стрелка управляется через data-атрибут, не через .open — чтобы не было конфликтов с темой */
.org-tree-wrap .node[data-open="1"] .arrow {
    transform: translateY(-50%) rotate(90deg) !important;
    color: #1d9741 !important;
}