Bin
2025-12-16 9e0b2ba2c317b1a86212f24cbae3195ad1f3dbfa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
@import "../../../assets/styles/global";
 
.tabs {
  --tab-row-height: 33px;
  --tab-height: 32px;
 
  height: 100%;
 
  &__tabs-row {
    display: flex;
    background: var(--color-neutral-surface);
    border-bottom: 1px solid var(--color-neutral-border);
    height: var(--tab-row-height);
  }
 
  &__tab-container {
    min-width: 0;
    flex-shrink: 1;
 
    &_active {
      flex-shrink: 0;
    }
  }
 
  &__contents {
    background: var(--color-neutral-background);
    height: calc(100% - var(--tab-row-height));
    position: relative;
    z-index: 1;
    overflow: hidden auto;
 
    & .main-content {
      overflow: auto;
      padding-bottom: calc(var(--bottombar-height) + 8px);
    }
 
    &_resizing {
      position: relative;
      pointer-events: none;
    }
 
    &::before {
      top: 0;
      left: 0;
      content: "";
      width: 100%;
      z-index: 100;
      display: block;
      position: absolute;
    }
  }
 
  &_collapsed {
    & .tabs__contents {
      flex: 1;
    }
  }
 
  &__drop-space-after {
    width: 100%;
    flex-shrink: 100;
 
    &_hoveringRight {
      &:hover {
        &::before {
          content: '';
          position: absolute;
          background: var(--grape_400);
          width: 4px;
          height: 100%;
        }
      }
    }
  }
}
 
.panel-tabs {
  &__draggable-tab {
    transform: translateY(2px);
  }
 
  &__tab {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding: 4px 24px 6px;
    height: var(--tab-height);
    width: 100%;
    font-weight: 500;
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 0.15px;
    border-color: var(--color-neutral-border);
    margin: 0 2px;
    display: block;
    cursor: grab;
    user-select: none;
    border-top-left-radius: var(--corner-radius-smaller);
    border-top-right-radius: var(--corner-radius-smaller);
 
    &_active {
      overflow: visible;
      width: fit-content;
      border-width: 1px 1px 0;
      transform: translate(-1px, -1px);
      border-style: solid;
      background: var(--color-neutral-background);
      box-shadow: 1px 4px 0 rgba(var(--color-neutral-shadow-raw) / 4%), -1px 4px 0 rgba(var(--color-neutral-shadow-raw) / 4%);
    }
 
    &:hover svg {
      display: block;
    }
  }
 
  &__ghost-tab {
    opacity: 0.8;
    position: absolute;
    z-index: 100;
    left: 0;
    top: 0;
    display: none;
  }
 
  &__contents {
    background: var(--color-neutral-background);
  }
 
  &__icon {
    position: absolute;
    left: 6px;
    top: 8px;
    color: var(--icon-color);
    display: none;
    pointer-events: none;
  }
}
 
.drag_over_tab_left {
  &::before {
    content: '';
    position: absolute;
    left: 0;
    background: var(--grape_400);
    width: 4px;
    height: 30px;
    transform: translateY(-4px);
  }
}
 
.drag_over_tab_right {
  &::after {
    content: '';
    position: absolute;
    right: 0;
    background: var(--grape_400);
    width: 4px;
    height: 30px;
    transform: translateY(-4px);
  }
}
 
.drag_over_empty_tab_space {
  &::before {
    content: '';
    transform: translate(-4px, 2px);
    position: absolute;
    background: var(--grape_400);
    width: 4px;
    height: 30px;
  }
}