]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/sass/application.scss
Translated using Weblate (Kabyle)
[github/Chocobozzz/PeerTube.git] / client / src / sass / application.scss
CommitLineData
161b061d 1$icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
63c4db6d 2
9b8a7aa8 3@import '_bootstrap-variables';
dcbc29d5
C
4@import '_variables';
5@import '_mixins';
6
fa40cbc3 7@import '_fonts';
63c4db6d 8
d592e0a9 9@import '~video.js/dist/video-js.css';
c893d451 10
583eb04b 11$assets-path: '../../assets/';
b335ccec 12@import './player/index';
e31f6ad6 13
2f4c784a 14@import './bootstrap';
bbe0f064 15@import './primeng-custom';
02c01341 16@import './ng-select.scss';
bbe0f064 17
100d9ce2
C
18@import './classes.scss';
19
383bfc83
C
20[hidden] {
21 display: none !important;
22}
a64668c0 23
b33f657c 24body {
dcbc29d5 25 /*** theme ***/
4f926722 26 // now beware sass requires interpolation
dcbc29d5 27 // for css custom properties #{$var}
680b5496
RK
28 --mainColor: #{$main-color};
29 --mainColorLighter: #{$main-color-lighter};
a6d5ff76 30 --mainColorLightest: #{$main-color-lightest};
680b5496 31 --mainHoverColor: #{$main-hover-color};
dcbc29d5
C
32 --mainBackgroundColor: #{$bg-color};
33 --mainForegroundColor: #{$fg-color};
680b5496 34 --secondaryColor: #{$secondary-color};
2fcc2294 35
c123027f 36 --greyForegroundColor: #{$grey-foreground-color};
441e453a 37 --greyBackgroundColor: #{$grey-background-color};
c123027f 38
1d9d9cfd
RK
39 --menuBackgroundColor: #{$menu-background};
40 --menuForegroundColor: #{$menu-color};
60c35932 41
218f730c 42 --submenuBackgroundColor: #{$sub-menu-background-color};
60c35932 43 --channelBackgroundColor: #{$channel-background-color};
2fcc2294 44
3bf07dd8 45 --inputForegroundColor: #{$input-foreground-color};
14aa8556 46 --inputBackgroundColor: #{$input-background-color};
dcbc29d5
C
47 --inputPlaceholderColor: #{$input-placeholder-color};
48
3bf07dd8 49 --textareaForegroundColor: #{$textarea-foreground-color};
b15fe00f 50 --textareaBackgroundColor: #{$textarea-background-color};
f33dc6ab 51 --markdownTextareaBackgroundColor: #{$markdown-textarea-background-color};
b15fe00f 52
0240da5c
RK
53 --actionButtonColor: #{$grey-foreground-color};
54 --supportButtonBackgroundColor: #{transparent};
e66883b3 55 --supportButtonColor: #{pvar(--actionButtonColor)};
0240da5c 56 --supportButtonHeartColor: #{$support-button-heart};
2fcc2294 57
5f57df54
C
58 --activatedActionButtonColor: #{$activated-action-button-color};
59
d7941370 60 --horizontalMarginContent: #{$not-expanded-horizontal-margins};
0f7407d9 61 --videosHorizontalMarginContent: 6vw;
d7941370 62 --mainColWidth: calc(100vw - #{$menu-width});
10846ef6 63
8a8e02a4 64 font-family: $main-fonts;
b33f657c 65 font-weight: $font-regular;
e66883b3
RK
66 color: pvar(--mainForegroundColor);
67 background-color: pvar(--mainBackgroundColor);
b34a444e 68 font-size: 14px;
8110705d 69 // On desktop browsers, make sure vertical scroll bar is always visible
70 // Allow to disable the scrollbar instead of hide it when the content fit the body
71 // And not move the content and header horizontally sticked to right when the content is updating
72 overflow-y: scroll;
b33f657c
C
73}
74
52cc0d54 75::selection {
e66883b3
RK
76 color: pvar(--mainBackgroundColor);
77 background-color: pvar(--mainHoverColor);
52cc0d54
RK
78}
79
2ca72354 80noscript,
73e09f27 81#incompatible-browser {
2ca72354
CE
82 display: block;
83 font-size: 1.2rem;
84 max-width: 600px;
85 margin: 1rem auto;
73e09f27
C
86}
87
07fa4c97
C
88strong {
89 font-weight: $font-semibold;
90}
91
383bfc83
C
92input.readonly {
93 /* Force blank on readonly inputs */
e66883b3 94 background-color: pvar(--inputBackgroundColor) !important;
0ac5edd9 95}
96
63347a0f
C
97input, textarea {
98 outline: none;
84065945 99 color: pvar(--inputForegroundColor);
63347a0f
C
100}
101
adcf9212
CC
102button {
103 background: unset;
104 @include disable-outline;
105}
106
d235f6b0
C
107label {
108 font-weight: $font-bold;
109 font-size: 15px;
09223546
C
110}
111
fd9c3c8d 112code {
113 background-color: pvar(--greyBackgroundColor);
a742b4b0 114 color: pvar(--greyForegroundColor);
fd9c3c8d 115 border-radius: 3px;
116 padding: .2em .4em;
117 margin: auto .4em;
118 font-size: 75%;
119 display: inline-block;
120 vertical-align: middle;
121}
122
a2b817d3
C
123.form-error {
124 display: block;
41a676db 125 color: $red;
a2b817d3
C
126 margin-top: 5px;
127}
128
f8b530e0
RK
129.input-error
130my-input-toggle-hidden ::ng-deep input {
41a676db 131 border-color: $red !important;
a2b817d3
C
132}
133
2d9fea16
RK
134.fullWidth {
135 width: 100%;
136 margin-left: auto;
137 margin-right: auto;
138 max-width: initial;
139}
140
383bfc83
C
141.glyphicon-black {
142 color: black;
143}
144
c4741804 145.row {
947d0102 146 margin: 0 !important;
c4741804
RK
147}
148
383bfc83 149.main-col {
c30745f3 150 margin-left: $menu-width;
c4741804 151 width: calc(100% - #{$menu-width});
a6d5ff76 152 outline: none;
9bf9d2a5 153
c30745f3 154 .margin-content {
d7941370
C
155 margin-left: pvar(--horizontalMarginContent);
156 margin-right: pvar(--horizontalMarginContent);
b34a444e 157 flex-grow: 1;
c30745f3
C
158 }
159
160 .sub-menu {
218f730c 161 background-color: pvar(--submenuBackgroundColor);
c30745f3 162 width: 100%;
c30745f3
C
163 display: flex;
164 align-items: center;
d7941370
C
165 padding-left: pvar(--horizontalMarginContent);
166 padding-right: pvar(--horizontalMarginContent);
7034b3c9 167 height: $sub-menu-height;
168 margin-bottom: $sub-menu-margin-bottom;
d7941370 169 overflow-x: auto;
ae2dd046
C
170
171 &.sub-menu-fixed {
ae2dd046 172 position: fixed;
d6eace77 173 z-index: #{z('sub-menu') - 1};
d7941370 174 max-width: pvar(--mainColWidth);
a949f676 175 }
c30745f3
C
176 }
177
7034b3c9 178 // Use an appropriate offset top when sub-menu fixed
179 .margin-content.offset-content {
180 padding-top: $sub-menu-height + $sub-menu-margin-bottom;
181 }
182
c30745f3
C
183 // Override some properties if the main content is expanded (no menu on the left)
184 &.expanded {
d7941370
C
185 --horizontalMarginContent: #{$expanded-horizontal-margins};
186 --mainColWidth: 100vw;
187
c30745f3 188 margin-left: 0;
c4741804 189 width: 100%;
602eb142 190 }
b15fe00f
K
191
192 &.lock-scroll .main-row > router-outlet + * {
193 // Lock and hide body scrollbars
194 position: fixed;
195
196 // Lock and hide sub-menu scrollbars
197 .sub-menu {
198 overflow-x: hidden;
199 }
200 }
383bfc83 201}
602eb142 202
59aa1e5e 203.title-page {
ed5bb517 204 opacity: 0.6;
e66883b3 205 color: pvar(--mainForegroundColor);
59aa1e5e
C
206 font-size: 16px;
207 display: inline-block;
208 margin-right: 55px;
209 font-weight: $font-semibold;
210 @include disable-default-a-behaviour;
211
ed5bb517
K
212 border-bottom: 2px solid transparent;
213
214 &.title-page-single {
59aa1e5e
C
215 margin-top: 30px;
216 margin-bottom: 25px;
217 }
cadb46d8 218
d6ed9ccc 219 &.active {
ed5bb517 220 border-bottom-color: pvar(--mainColor);
d6ed9ccc
RK
221 }
222
223 &.title-page-single {
224 font-size: 125%;
225 }
226
cadb46d8 227 &:hover, &:active, &:focus {
e66883b3 228 color: pvar(--mainForegroundColor);
04e0fc48 229 }
1952a538 230
ed5bb517
K
231 &.active, &:hover, &:active, &:focus, &.title-page-single {
232 opacity: 1;
233 outline: 0px hidden !important;
234 }
235
ece3029b 236 @media screen and (max-width: $mobile-view) {
2c3abc4f 237 margin-right: 15px;
1952a538 238 }
cadb46d8 239}
04e0fc48 240
482fa503
RK
241.title-page-about,
242.title-page-settings {
e61151b0 243 white-space: nowrap;
482fa503 244 font-size: 115%;
482fa503
RK
245}
246
cd83ea1b
C
247.admin-sub-header {
248 display: flex;
249 align-items: center;
250 margin-bottom: 30px;
251
08c1efbe 252 .form-sub-title {
cd83ea1b
C
253 flex-grow: 1;
254 }
65b247dd
C
255
256 .admin-sub-nav a {
257 @include disable-default-a-behaviour;
258
259 font-size: 16px;
e66883b3 260 color: pvar(--mainForegroundColor);
65b247dd
C
261 padding: 5px 15px;
262 border-radius: 0.25rem;
ed5bb517
K
263 font-weight: $font-semibold;
264 opacity: 0.6;
65b247dd
C
265
266 &.active {
218f730c 267 background-color: pvar(--submenuBackgroundColor);
ed5bb517
K
268 }
269
270 &.active, &:hover, &:active, &:focus {
271 opacity: 1;
65b247dd
C
272 }
273 }
cd83ea1b
C
274}
275
08c1efbe 276.form-sub-title {
04e0fc48
C
277 font-size: 20px;
278 font-weight: bold;
59aa1e5e
C
279}
280
fb4fd623
C
281// In tables, don't have a hover different background
282table {
283 .action-button-edit, .action-button-delete {
284 &:hover, &:active, &:focus, &[disabled], &.disabled {
457bb213 285 background-color: $grey-background-color !important;
fb4fd623
C
286 }
287 }
288}
289
2d3741d6
C
290.no-results {
291 height: 40vh;
22839330
RK
292 max-height: 500px;
293
2d3741d6 294 display: flex;
82f443de 295 flex-direction: column;
2d3741d6
C
296 align-items: center;
297 justify-content: center;
298 font-size: 16px;
299 font-weight: $font-semibold;
300}
301
eb7c7a51
RK
302.dropdown-item {
303 @include dropdown-with-icon-item;
304
305 my-global-icon {
306 width: 22px;
307 height: 22px;
308 }
309}
310
7034b3c9 311/* offsetTop for scrollToAnchor */
312
45e0d669
RK
313.anchor {
314 position: relative;
7034b3c9 315 top: #{-($header-height + 20px)};
316}
317
318.offset-content { // if sub-menu fixed
319 .anchor {
320 top: #{-($header-height + $sub-menu-height + 20px)};
321 }
45e0d669
RK
322}
323
c29039e7
C
324.form-group-description {
325 @extend .text-muted;
326
327 font-size: 90%;
328 margin-top: 10px;
329}
330
4872e946
C
331ngx-loading-bar {
332 z-index: z(header) + 1 !important;
333}
334
165ee292 335@media screen and (max-width: #{breakpoint(xxl)}) {
0f7407d9
C
336 .main-col {
337 & {
338 --horizontalMarginContent: #{$not-expanded-horizontal-margins / 2};
339 }
340
341 &.expanded {
342 --horizontalMarginContent: #{$expanded-horizontal-margins / 2};
343 }
344
0a6785d1 345 --videosHorizontalMarginContent: 30px;
2303a803
RK
346 }
347}
348
165ee292 349@media screen and (max-width: #{breakpoint(lg)}) {
0a6785d1
C
350 .main-col {
351 --videosHorizontalMarginContent: #{pvar(--horizontalMarginContent)};
352 }
353
1def3c52 354 /* the following applies from 500px to 900px and is partially overriden from 500px to 800px by changes below to $small-view */
d7941370
C
355 .main-col,
356 .main-col.expanded {
0f7407d9 357 --horizontalMarginContent: #{$expanded-horizontal-margins / 3};
dd778941 358
d7941370
C
359 .sub-menu {
360 padding-left: 50px;
361 padding-right: 50px;
22a16e36 362
d7941370
C
363 .title-page {
364 font-size: 17px;
dd778941 365 }
1f788f20
C
366 }
367 }
368}
369
1f6d2449 370@media screen and (min-width: $mobile-view) and (max-width: $small-view) {
ac6ac4e2 371 .main-col {
372 width: 100%;
373 }
374}
375
8ff3f883 376@media screen and (max-width: $small-view) {
d7941370
C
377 .main-col,
378 .main-col.expanded {
379 --horizontalMarginContent: 15px;
b15fe00f 380
d7941370 381 margin-left: 0;
7a03209d 382
d7941370
C
383 .sub-menu {
384 width: 100vw;
385 padding-left: 15px;
386 padding-right: 15px;
387 margin-bottom: $sub-menu-margin-bottom-small-view;
388 overflow-x: auto;
165ee292
K
389 }
390
d7941370
C
391 // Use an appropriate offset top when sub-menu fixed
392 .margin-content.offset-content {
393 padding-top: $sub-menu-height + $sub-menu-margin-bottom-small-view;
165ee292 394 }
165ee292 395
d7941370
C
396 .admin-sub-header {
397 @include admin-sub-header-responsive;
165ee292
K
398 }
399
d7941370
C
400 my-markdown-textarea {
401 .root {
402 max-width: 100% !important;
403 }
165ee292 404 }
165ee292 405
d7941370
C
406 input[type=text],
407 input[type=password],
408 input[type=email],
409 textarea,
410 .peertube-select-container {
411 flex-grow: 1;
165ee292 412 }
8544d8f5 413
d7941370
C
414 .caption input[type=text] {
415 width: unset !important;
416 flex-grow: 1;
7a03209d
K
417 }
418 }
419}