
.gantt-container {
    display: flex;
    box-shadow: 0px 1px 1px rgba(113, 112, 118, 0.2), 0px 0px 4px rgba(0, 0, 0, 0.06), 0px 0px 0px #758892;
    border-radius: 2px;
    width: 100%;
    min-height: 400px;
}
/* Левая панель — названия задач */
.gantt-container .task-names {
    width: 200px;
    border-right: 1px solid #ccc;
    border-top: 91px solid #fff;
    background: #fafafa;
    flex-shrink: 0;
    position: relative;
    z-index: 20;
    padding-bottom: 15px;
}
.gantt-container .task-name {
    display: flex;
    position: relative;
    justify-content: center;
    flex-direction: column;
    height: 80px;
    padding-left: 10px;
    border-bottom: 1px solid #ddd;
}
.add_operation_cont {
    width: 100%;
    display: flex;
    align-items: center;
    padding-bottom: 15px;
}
.gantt-container .task-name .name {
    display: block;
    color: #000;
    font-weight: 600;
    font-size: 14px;
    align-self: flex-start;
}
.gantt-container .task-name .name:hover {
    cursor: pointer;
    text-decoration: underline;
}

.gantt-container .task-name .machine {
    display: block;
    color: #1E6FB8;
    margin-top: 5px;
    font-weight: 400;
    font-size: 13px;
    align-self: flex-start;
}
.gantt-container .task-name .machine:hover {
    cursor: pointer;
    text-decoration: underline;
}
.gantt-container .task-name .person {
    display: block;
    margin-top: 5px;
    font-size: 11px;
    color: #a8a8a8;
}

/* Правая панель — диаграмма */
.gantt-container .gantt-scroll {
    position: relative;
    flex: 1;
    overflow: auto;
    background: #fff;
    padding-top: 50px;
}
.gantt-container .gantt {
    position: relative;
    height: 100%;
}

/* временная шкала */
.gantt-container .timeline-days { position: absolute; top: 0; left: 0; height: 22px; width:100%; z-index:5; pointer-events:none; }
.gantt-container .timeline-hours { position: absolute; top: 22px; left: 0; height: 18px; width:100%; z-index:5; pointer-events:none; }
.gantt-container .tick-day, .tick-hour { position: absolute; text-align:center; pointer-events:none; }
.gantt-container .tick-day { height:23px; line-height:22px; font-weight:600; }
.gantt-container .tick-day.weekend {  }
.gantt-container .tick-hour { height:18px; line-height:18px; font-size:11px; }

/* линии сетки */
.gantt-container .grid-line { position:absolute; top:25px; bottom:0; width:1px; background: rgba(0,0,0,0.06); z-index:1; }
.gantt-container .grid-day { background: rgba(0,0,0,0.12); width:2px; top:0px;}
.gantt-container .row-line { position:absolute; left:0; right:0; height:1px; background: rgba(0,0,0,0.1); z-index:1; }

/* блоки */
.gantt-container .task {
    position: absolute;
    height: 60px;
    background: #4caf50;
    color: white;
    border-radius: 6px;
    cursor: grab;
    z-index: 10;
    box-sizing: border-box;
    padding: 6px 10px;
    font-size: 12px;
    display: flex;
    flex-direction: column;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.gantt-container .task::before {
    content: '';
    position: absolute;
    top: -5px;
    bottom: -5px;
    left: -10px;
    right: -10px;
    background: transparent;
    cursor: grab;
}

.gantt-container .task:hover {
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.48)) brightness(1.1) !important;
}
.gantt-container .status_bar {
    background: #fff;
    height: 6px;
    margin-top: auto;
    margin-left: 5px;
    margin-right: 5px;
    bottom: 5px;
    border-radius: 100px;
}
.gantt-container .label {
    white-space: pre-line;
    font-size:11px;
    font-weight: 300;
    overflow: hidden;
    z-index: 20;
}
.gantt-container .resize-handle-left, .gantt-container .resize-handle-right {
    position: absolute;
    top: 0;
    width: 5px;
    height: 100%;
    cursor: ew-resize;
    background: rgba(255,255,255,0.18);
    z-index:12;
}
.gantt-container .resize-handle-left { left: 0; border-top-left-radius:6px; border-bottom-left-radius:6px; }
.gantt-container .resize-handle-right { right: 0; border-top-right-radius:6px; border-bottom-right-radius:6px; }

/* svg для связей */
.gantt-container svg#g-lines { position:absolute; top:0; left:0; width:100%; height:100%; z-index:3; overflow:visible; }

.gantt-container .deadline {
    position: absolute;
    top: 40px; /* ниже таймлайна */
    bottom: 0;
    width: 2px;
    background: red;
    cursor: ew-resize;
    z-index: 50;
}

.gantt-container .deadline-label {
    position: absolute;
    top: 0px;
    left: 0px;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    white-space: nowrap;
    background: red;
    padding: 2px 5px;
    cursor: pointer;
}
.gantt-container .events {
    position: absolute;
    right: 20px;
    display: flex;
    align-items: center;
    z-index: 20;
}
.gantt-container .event {
    display: flex;
    width: 20px;
    height:20px;
    margin-left: 5px;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    padding: 5px;
    background: #fff;
    color: #4c4eaf;
    border-radius: 100%;
    transition: all 0.2s;
}
.gantt-container .event:hover {
    background: #f17000;
    color: #fff;
}
.gantt-container .proizv_link {
    color: #f17000;
    font-size: 11px;
    cursor: pointer;
}
.gantt-container .proizv_link:hover {
    text-decoration: underline;
}
.gantt-container .tick-day {
    transition: background-color 0.2s, color 0.2s;
}

.gantt-container .highlight-date {
    background-color: rgba(236, 222, 9, 0.3);
}

.gantt-container .top_html {
    position: absolute;
    top: -50px;
    height: 50px;
    left: 0px;
    z-index: 1000;
    border-right: 2px solid #ccc;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
}
.gantt-container .top_html .user_item {
    padding-top:2px;
    color: #a8a8a8;
    display: flex;
    padding:4px;
    text-align: center;
    justify-content: center;
}
.gantt-container .top_html .user_item .amount {
    padding-left: 3px;
    color: #1E6FB8;
    font-weight: bold;
}
.gantt-container .prolong {
    position: absolute;
    align-items: flex-end;
    z-index: 20;
    background: rgba(210, 0, 0, 0.5);
    height: 60px;
    border-radius: 5px;
}
.gantt-container .prolong .title {
    position: absolute;
    top:-19.5px;
    left: 20px;
    background: rgba(210, 0, 0, 0.5);
    border-top-right-radius:5px;
    border-top-left-radius: 5px;
    color: #fff;
    font-size: 11px;
    padding: 3px;
}
.gantt-container .loader {
    position: absolute;
    width: 100%;
    height:100%;
    background: rgba(255,255,255, 0.5);
    z-index: 1000
}
