]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/videos/+video-watch/video-watch.component.scss
Merge branch 'develop' into pr/1285
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / +video-watch / video-watch.component.scss
CommitLineData
63c4db6d
C
1@import '_variables';
2@import '_mixins';
19f22055
C
3@import '_bootstrap-variables';
4
5$other-videos-width: 260px;
63c4db6d 6
191764f3
C
7.root-row {
8 flex-direction: column;
9}
10
11.blacklisted-label {
12 font-weight: $font-semibold;
13}
14
09edde40 15#video-element-wrapper {
be6a4802
C
16 background-color: #000;
17 display: flex;
18 justify-content: center;
b34a444e 19 flex-grow: 1;
6d88de72
C
20
21 .remote-server-down {
22 color: #fff;
23 display: flex;
24 flex-direction: column;
25 align-items: center;
26 text-align: center;
27 justify-content: center;
28 background-color: #141313;
29 width: 100%;
6d88de72 30 font-size: 24px;
3b492bff 31 height: 500px;
6d88de72
C
32
33 @media screen and (max-width: 1000px) {
34 font-size: 20px;
35 }
7b272fd7 36
acbffe9c 37 @media screen and (max-width: 600px) {
6d88de72 38 font-size: 16px;
b9828abe 39 }
6d88de72
C
40 }
41
42 /deep/ .video-js {
432e7ddc
C
43 width: 888px;
44 height: 500px;
3b492bff
C
45
46 &.vjs-theater-enabled {
47 height: calc(100vh - #{$header-height} - #{$theater-bottom-space});
48 width: 100%;
49 }
b9828abe 50
7b272fd7
C
51 // VideoJS create an inner video player
52 video {
53 outline: 0;
b9828abe 54 position: relative !important;
7b272fd7 55 }
be6a4802 56 }
054a103b 57
3b492bff
C
58 @media screen and (max-width: 600px) {
59 .remote-server-down,
60 /deep/ .video-js {
61 width: 100vw;
62 height: calc(100vw / 1.7); // 16/9
63 }
054a103b 64 }
e56b20f5
C
65}
66
bbe0f064 67.alert {
2186386c
C
68 text-align: center;
69}
70
9c89a45c
C
71#video-not-found {
72 height: 300px;
73 line-height: 300px;
74 margin-top: 50px;
75 text-align: center;
fb4fd623
C
76 font-weight: $font-semibold;
77 font-size: 15px;
9c89a45c
C
78}
79
b1fa3eba
C
80.video-bottom {
81 margin-top: 40px;
d1992b93 82
b1fa3eba
C
83 .video-info {
84 flex-grow: 1;
20acba1c
C
85 // Set min width for flex item
86 min-width: 1px;
e452d2e2 87 max-width: 100%;
3eeeb87f 88
1f788f20 89 .video-info-first-row {
b1fa3eba 90 display: flex;
1f788f20 91
196b7790 92 & > div:first-child {
1f788f20
C
93 flex-grow: 1;
94 }
d1992b93 95
b1fa3eba 96 .video-info-name {
b2731bff 97 margin-right: 30px;
196b7790 98 min-height: 40px; // Align with the action buttons
b1fa3eba
C
99 font-size: 27px;
100 font-weight: $font-semibold;
101 flex-grow: 1;
102 }
09223546 103
1f788f20 104 .video-info-date-views {
1f788f20 105 flex-grow: 1;
8ff3f883
C
106 margin-bottom: 10px;
107 margin-right: 10px;
108 font-size: 16px;
1f788f20
C
109 }
110
111 .video-info-channel {
112 font-weight: $font-semibold;
113 font-size: 15px;
95166f9a
C
114
115 a {
116 @include disable-default-a-behaviour;
117
9a0fc840 118 color: var(--mainForegroundColor);
95166f9a
C
119
120 &:hover {
121 opacity: 0.8;
122 }
52d9f792
C
123
124 img {
125 @include avatar(18px);
126
127 margin: -2px 2px 0 5px;
128 }
95166f9a 129 }
22a16e36
C
130
131 my-subscribe-button {
22a16e36
C
132 margin-left: 5px;
133 }
1f788f20
C
134 }
135
b7f5b524
C
136 .video-info-by {
137
138 a {
139 @include disable-default-a-behaviour;
03e12d7c 140
b7f5b524
C
141 display: inline;
142 align-items: center;
143 font-size: 13px;
9a0fc840 144 color: var(--mainForegroundColor);
1f788f20 145
b7f5b524
C
146 span:hover {
147 opacity: 0.8;
148 }
149
150 img {
151 @include avatar(18px);
66dc5907 152
b7f5b524
C
153 margin-top: -2px;
154 margin-left: 7px;
155 }
156 }
6e33bf28 157
b7f5b524
C
158 my-help {
159 position: relative;
160 top: 1px;
161 margin-left: 2px;
6e33bf28 162 }
1f788f20 163 }
b2731bff 164
c199c427 165 my-feed {
244e76a5
RK
166 margin-left: 5px;
167 margin-top: 1px;
168 }
169
1f788f20 170 .video-actions-rates {
8ff3f883 171 margin: 20px 0 10px 0;
2303a803 172 align-items: start;
09223546 173
1f788f20
C
174 .video-actions {
175 height: 40px; // Align with the title
1f788f20
C
176 display: flex;
177 align-items: center;
09223546 178
1f788f20
C
179 .action-button:not(:first-child), .action-more {
180 margin-left: 10px;
181 }
0727cab0 182
1f788f20
C
183 .action-button {
184 @include peertube-button;
185 @include grey-button;
457bb213
C
186 @include button-with-icon(21px, 0, -1px);
187 @include apply-svg-color($grey-foreground-color);
7b272fd7 188
1f788f20
C
189 font-size: 15px;
190 font-weight: $font-semibold;
191 display: inline-block;
192 padding: 0 10px 0 10px;
07fa4c97 193 white-space: nowrap;
7b272fd7 194
63347a0f
C
195 &::after {
196 display: none;
197 }
198
1f788f20 199 &.action-button-like.activated {
41a676db 200 background-color: $green;
4e1b0973 201
457bb213
C
202 my-global-icon {
203 @include apply-svg-color(#fff);
1f788f20 204 }
7b272fd7 205 }
6e33bf28 206
1f788f20 207 &.action-button-dislike.activated {
41a676db 208 background-color: $red;
d38b8281 209
457bb213
C
210 my-global-icon {
211 @include apply-svg-color(#fff);
1f788f20 212 }
7b272fd7 213 }
457bb213
C
214
215 .icon-text {
216 margin-left: 3px;
217 }
b1fa3eba 218 }
d38b8281 219
1f788f20
C
220 .action-more {
221 display: inline-block;
4f8c0eb0 222
1f788f20
C
223 .dropdown-menu .dropdown-item {
224 padding: 6px 24px;
7b272fd7 225
457bb213
C
226 my-global-icon {
227 width: 24px;
7b272fd7 228
1f788f20
C
229 margin-right: 10px;
230 position: relative;
457bb213 231 top: -2px;
5f0805d3 232 }
7b272fd7 233 }
b1fa3eba 234 }
4e1b0973 235 }
6a9e1d42 236
1f788f20 237 .video-info-likes-dislikes-bar {
2d9fea16
RK
238 $likes-bar-height: 2px;
239 height: $likes-bar-height;
240 margin-top: -$likes-bar-height;
1f788f20 241 width: 186px;
1d6587aa 242 background-color: $red;
2d9fea16
RK
243 position: relative;
244 top: 10px;
6a9e1d42 245
1f788f20
C
246 .likes-bar {
247 height: 100%;
1d6587aa 248 background-color: $green;
1f788f20 249 }
6a9e1d42
C
250 }
251 }
d1992b93
C
252 }
253
b1fa3eba
C
254 .video-info-description {
255 margin: 20px 0;
256 font-size: 15px;
d1992b93 257
54a932e8 258 .video-info-description-html {
7a14004b 259 @include peertube-word-wrap;
54a932e8
C
260 }
261
9e9afa45
C
262 .glyphicon, .description-loading {
263 margin-left: 3px;
264 }
265
80958c78
C
266 .description-loading {
267 display: inline-block;
268 }
269
b1fa3eba 270 .video-info-description-more {
2de96f4d 271 cursor: pointer;
b1fa3eba 272 font-weight: $font-semibold;
457bb213 273 color: $grey-foreground-color;
b1fa3eba 274 font-size: 14px;
2de96f4d
C
275
276 .glyphicon {
277 position: relative;
278 top: 2px;
279 }
280 }
09223546
C
281 }
282
1f788f20
C
283 .video-attributes .video-attribute {
284 font-size: 13px;
285 display: block;
286 margin-bottom: 12px;
287
288 .video-attribute-label {
adb115f5 289 min-width: 142px;
c6c357ac 290 padding-right: 5px;
1f788f20 291 display: inline-block;
457bb213 292 color: $grey-foreground-color;
1f788f20 293 font-weight: $font-bold;
3eeeb87f 294 }
4278710d
C
295
296 a.video-attribute-value {
297 @include disable-default-a-behaviour;
9a0fc840 298 color: var(--mainForegroundColor);
4278710d
C
299
300 &:hover {
301 opacity: 0.9;
302 }
303 }
304
305 &.video-attribute-tags {
306 .video-attribute-value:not(:nth-child(2)) {
307 &::before {
308 content: ', '
309 }
310 }
311 }
3eeeb87f 312 }
41c3dfac
C
313 }
314
9a2f7ea7 315 /deep/ .other-videos {
1c66c35c 316 padding-left: 15px;
19f22055 317 width: $other-videos-width;
f7ecffa4 318
41c3dfac 319 .title-page {
9a2f7ea7 320 margin-top: 0 !important;
41c3dfac
C
321 }
322
8ff3f883 323 .video-miniature {
41c3dfac
C
324 display: flex;
325 height: 100%;
326 margin-bottom: 20px;
9e01e510 327 flex-wrap: wrap;
a01f107b 328
41c3dfac 329 .video-miniature-information {
9e01e510 330 flex-grow: 1;
22a16e36
C
331 }
332
333 .video-thumbnail {
334 margin-right: 10px
41c3dfac
C
335 }
336 }
a01f107b 337 }
d1992b93 338}
41c3dfac 339
1d6587aa
C
340my-video-comments {
341 display: inline-block;
66467298 342 width: 100%;
1d6587aa
C
343 margin-bottom: 20px;
344}
345
2b3b76ab
C
346// If the view is not expanded, take into account the menu
347.privacy-concerns {
348 width: calc(100% - #{$menu-width});
349}
350
8ff3f883
C
351@media screen and (max-width: $small-view) {
352 .privacy-concerns {
353 margin-left: $menu-width;
354 }
355}
356
2b3b76ab
C
357:host-context(.expanded) {
358 .privacy-concerns {
359 width: 100%;
8ff3f883 360 margin-left: 0;
2b3b76ab
C
361 }
362}
363
364.privacy-concerns {
365 position: fixed;
366 bottom: 0;
367
368 padding: 5px 15px;
369
370 display: flex;
371 align-items: center;
372 justify-content: flex-start;
373 background-color: rgba(0, 0, 0, 0.9);
374 color: #fff;
375
376 .privacy-concerns-text {
377 margin: 0 5px;
378 }
379
380 a {
381 @include disable-default-a-behaviour;
382
9a0fc840 383 color: var(--mainColor);
2b3b76ab
C
384 transition: color 0.3s;
385
386 &:hover {
387 color: #fff;
388 }
389 }
390
391 .privacy-concerns-okay {
9a0fc840 392 background-color: var(--mainColor);
2b3b76ab
C
393 padding: 5px 8px 5px 7px;
394 margin-left: auto;
395 border-radius: 3px;
396 cursor: pointer;
397 transition: background-color 0.3s;
398 font-weight: $font-semibold;
399
400 &:hover {
401 background-color: #000;
402 }
403 }
404}
405
19f22055
C
406@media screen and (min-width: map-get($grid-breakpoints, xl)) {
407 .video-bottom .video-info {
408 max-width: calc(100% - #{$other-videos-width});
409 }
410}
b9828abe 411
07fa4c97 412@media screen and (max-width: 1600px) {
8ff3f883
C
413 .video-bottom .video-info .video-attributes .video-attribute {
414 margin-bottom: 5px;
b9828abe
C
415 }
416}
b2731bff 417
23f4c3d4 418@media screen and (max-width: 1300px) {
2b3b76ab
C
419 .privacy-concerns {
420 font-size: 12px;
421 padding: 2px 5px;
422
423 .privacy-concerns-text {
424 margin: 0;
425 }
426 }
07fa4c97
C
427}
428
1f788f20 429@media screen and (max-width: 600px) {
b2731bff
C
430 .video-bottom {
431 margin: 20px 0 0 0;
1f788f20
C
432
433 .video-info {
93ea9c47 434 padding: 0;
1f788f20
C
435
436 .video-info-first-row {
437
438 .video-info-name {
439 font-size: 20px;
440 height: auto;
441 }
442 }
443 }
b2731bff 444 }
2b3b76ab 445
2303a803 446 /deep/ .other-videos {
93ea9c47
C
447 padding-left: 0 !important;
448
a8981e0b
C
449 /deep/ .video-miniature {
450 flex-direction: column;
a8981e0b
C
451 }
452 }
453
2b3b76ab
C
454 .privacy-concerns {
455 width: 100%;
456
457 strong {
458 display: none;
459 }
460 }
b2731bff 461}
07fa4c97
C
462
463@media screen and (max-width: 450px) {
93ea9c47
C
464 .video-bottom {
465 .action-button .icon-text {
466 display: none !important;
467 }
468
469 .video-info .video-info-first-row {
470 .video-info-name {
471 font-size: 18px;
472 }
473
474 .video-info-date-views {
475 font-size: 14px;
476 }
477
478 .video-actions-rates {
479 margin-top: 10px;
480 }
481 }
482
483 .video-info-description {
484 font-size: 14px !important;
485 }
07fa4c97
C
486 }
487}