]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/+video-channels/video-channels.component.scss
Move to sass @use
[github/Chocobozzz/PeerTube.git] / client / src / app / +video-channels / video-channels.component.scss
1 @use '_variables';
2 @use '_mixins';
3 @use '_actor';
4 @use '_miniature';
5
6 .root {
7 --myGlobalTopPadding: 60px;
8 --myChannelImgMargin: 30px;
9 --myFontSize: 16px;
10 --myGreyChannelFontSize: 16px;
11 --myGreyOwnerFontSize: 14px;
12 }
13
14 .banner {
15 @include block-ratio('img', $banner-inverted-ratio);
16 }
17
18 .section-label {
19 @include section-label-responsive;
20 }
21
22 .links {
23 @include grid-videos-miniature-margins;
24 }
25
26 .actor-info {
27 min-width: 1px;
28 width: 100%;
29
30 > h4,
31 > .actor-handle {
32 @include ellipsis;
33 }
34 }
35
36 .channel-info {
37 @include grid-videos-miniature-margins(false, 15px);
38
39 display: grid;
40 grid-template-columns: 1fr auto;
41 grid-template-rows: auto auto;
42
43 background-color: pvar(--channelBackgroundColor);
44 margin-bottom: 45px;
45 padding-top: var(--myGlobalTopPadding);
46 font-size: var(--myFontSize);
47 }
48
49 .channel-avatar-row {
50 @include avatar-row-responsive(var(--myChannelImgMargin), var(--myGreyChannelFontSize));
51 }
52
53 .support-button {
54 @include button-with-icon(21px, 0, -1px);
55 }
56
57 .channel-description {
58 grid-column: 1;
59 word-break: break-word;
60 padding-bottom: var(--myGlobalTopPadding);
61 }
62
63 .show-more {
64 @include show-more-description;
65
66 display: none;
67 }
68
69 .channel-buttons {
70 display: flex;
71 flex-wrap: wrap;
72
73 > *:not(:last-child) {
74 @include margin-right(15px);
75 }
76 }
77
78 .channel-buttons.right {
79 @include margin-left(45px);
80 }
81
82 // Only used by mobile
83 .channel-buttons.bottom {
84 display: none;
85 }
86
87 .owner-card {
88 @include margin-left(105px);
89 grid-column: 2;
90 // Takes all the column
91 grid-row: 1 / 3;
92 place-self: end;
93 }
94
95 // Only used on mobile
96 .bottom-owner {
97 display: none;
98 }
99
100 .owner-block {
101 background-color: pvar(--mainBackgroundColor);
102 padding: 30px;
103 width: 300px;
104 font-size: var(--myFontSize);
105
106 .avatar-row {
107 display: flex;
108 margin-bottom: 15px;
109
110 .account-avatar {
111 @include actor-avatar-size(48px);
112 }
113
114 .actor-info {
115 @include margin-left(15px);
116 }
117
118 h4 {
119 font-size: 18px;
120 margin: 0;
121
122 a {
123 color: pvar(--mainForegroundColor);
124 }
125 }
126
127 .actor-handle {
128 font-size: var(--myGreyOwnerFontSize);
129 color: pvar(--greyForegroundColor);
130 }
131 }
132
133 .owner-description {
134 @include fade-text(120px, pvar(--mainBackgroundColor));
135
136 max-height: 140px;
137 word-break: break-word;
138 }
139 }
140
141 .view-account.short {
142 @include peertube-button-link;
143 @include orange-button-inverted;
144
145 margin-top: 30px;
146 }
147
148 .view-account.complete {
149 display: none;
150 }
151
152 .copy-button {
153 border: 0;
154 }
155
156 @media screen and (max-width: 1400px) {
157 // Takes all the row width
158 .channel-avatar-row {
159 grid-column: 1 / 3;
160 }
161
162 .owner-card {
163 @include margin-left(60px);
164
165 grid-row: 2;
166 }
167 }
168
169 @media screen and (max-width: 1100px) {
170 .root {
171 --myGlobalTopPadding: 45px;
172 --myChannelImgMargin: 15px;
173 }
174
175 .channel-info {
176 display: flex;
177 flex-direction: column;
178 margin-bottom: 0;
179 }
180
181 .channel-description:not(.expanded) {
182 @include fade-text(30px, pvar(--channelBackgroundColor));
183
184 max-height: 70px;
185 }
186
187 .show-more {
188 display: inline-block;
189 }
190
191 .channel-buttons.bottom {
192 display: flex;
193 justify-content: center;
194 margin-bottom: 30px;
195 }
196
197 .channel-buttons.right {
198 display: none;
199 }
200
201 .owner-card {
202 display: none;
203 }
204
205 .bottom-owner {
206 display: block;
207 width: 100%;
208 border-bottom: 2px solid $separator-border-color;
209 padding: var(--myGlobalTopPadding) 45px;
210 margin-bottom: 60px;
211 }
212
213 .owner-block {
214 display: grid;
215 width: 100%;
216 padding: 0;
217
218 .avatar-row {
219 @include margin-right(30px);
220
221 grid-column: 1;
222 }
223
224 .owner-description {
225 @include fade-text(30px, pvar(--mainBackgroundColor));
226
227 grid-column: 2;
228 max-height: 70px;
229 }
230
231 .view-account {
232 grid-column: 2;
233 }
234 }
235
236 .view-account.complete {
237 display: block;
238 text-align: end;
239 margin-top: 10px;
240 color: pvar(--mainColor);
241 }
242
243 .view-account.short {
244 display: none;
245 }
246 }
247
248 @media screen and (max-width: $mobile-view) {
249 .root {
250 --myGlobalTopPadding: 15px;
251 --myFontSize: 14px;
252 --myGreyChannelFontSize: 13px;
253 --myGreyOwnerFontSize: 13px;
254 }
255
256 .links {
257 margin: auto !important;
258 width: min-content;
259 }
260
261 .show-more {
262 margin-bottom: 30px;
263 }
264
265 .bottom-owner {
266 padding: 15px;
267 margin-bottom: 30px;
268
269 .section-label {
270 display: none;
271 }
272 }
273
274 .owner-block {
275 display: block;
276
277 .avatar-row {
278 display: flex;
279 flex-direction: row-reverse;
280 margin: 0;
281
282 h4 {
283 font-size: 16px;
284 }
285
286 .actor-info {
287 display: flex;
288 flex-direction: column;
289 align-items: flex-end;
290 justify-content: flex-end;
291 margin-top: -5px;
292 }
293
294 .account-avatar {
295 @include actor-avatar-size(64px);
296
297 margin: -30px 0 0 15px;
298 }
299 }
300
301 .owner-description {
302 display: none;
303 }
304 }
305 }