]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/sass/application.scss
Throttle infinite scroller
[github/Chocobozzz/PeerTube.git] / client / src / sass / application.scss
CommitLineData
63c4db6d
C
1@import '_variables';
2@import '_mixins';
3
4$icon-font-path: '../../node_modules/bootstrap-sass/assets/fonts/bootstrap/';
e203f2e0 5@import '_bootstrap';
63c4db6d
C
6
7$FontPathSourceSansPro: '../../node_modules/npm-font-source-sans-pro/fonts';
8@import '~npm-font-source-sans-pro/source-sans-pro';
9
d592e0a9
C
10@import '~primeng/resources/themes/bootstrap/theme.css';
11@import '~primeng/resources/primeng.css';
12@import '~video.js/dist/video-js.css';
c893d451
C
13
14@import './video-js-custom';
15@import './loading-bar';
e31f6ad6 16
383bfc83
C
17[hidden] {
18 display: none !important;
19}
a64668c0 20
b33f657c 21body {
ecb4e35f 22 font-family: 'Source Sans Pro', sans-serif;
b33f657c
C
23 font-weight: $font-regular;
24 color: #000;
25}
26
07fa4c97
C
27strong {
28 font-weight: $font-semibold;
29}
30
383bfc83
C
31input.readonly {
32 /* Force blank on readonly inputs */
33 background-color: #fff !important;
0ac5edd9 34}
35
d235f6b0
C
36label {
37 font-weight: $font-bold;
38 font-size: 15px;
09223546
C
39}
40
a2b817d3
C
41.form-error {
42 display: block;
43 color: $red-error;
44 margin-top: 5px;
45}
46
47.input-error {
48 border-color: $red-error !important;
49}
50
383bfc83
C
51.glyphicon-black {
52 color: black;
53}
54
383bfc83 55.main-col {
c30745f3 56 margin-left: $menu-width;
9bf9d2a5 57
c30745f3 58 .margin-content {
d178b5c1
C
59 margin-left: $not-expanded-horizontal-margins;
60 margin-right: $not-expanded-horizontal-margins;
c30745f3
C
61 }
62
63 .sub-menu {
64 background-color: #F7F7F7;
65 width: 100%;
66 height: 81px;
67 margin-bottom: 30px;
68 display: flex;
69 align-items: center;
d178b5c1 70 padding-left: $not-expanded-horizontal-margins;
c30745f3
C
71 }
72
73 // Override some properties if the main content is expanded (no menu on the left)
74 &.expanded {
75 margin-left: 0;
76
77 .margin-content {
78 margin-left: $expanded-horizontal-margins;
79 margin-right: $expanded-horizontal-margins;
80 }
81
82 .sub-menu {
83 padding-left: $expanded-horizontal-margins;
84 }
602eb142 85 }
383bfc83 86}
602eb142 87
59aa1e5e
C
88.title-page {
89 color: #000;
90 font-size: 16px;
91 display: inline-block;
92 margin-right: 55px;
93 font-weight: $font-semibold;
94 @include disable-default-a-behaviour;
95
96 &.active, &.title-page-single {
97 border-bottom: 2px solid $orange-color;
98 font-weight: $font-bold;
99 margin-top: 30px;
100 margin-bottom: 25px;
101 }
cadb46d8
C
102
103 &:hover, &:active, &:focus {
104 color: #000;
04e0fc48 105 }
cadb46d8 106}
04e0fc48 107
cd83ea1b
C
108.admin-sub-header {
109 display: flex;
110 align-items: center;
111 margin-bottom: 30px;
112
113 .admin-sub-title {
114 flex-grow: 1;
115 }
116}
117
04e0fc48
C
118.admin-sub-title {
119 font-size: 20px;
120 font-weight: bold;
59aa1e5e
C
121}
122
315cc0cc
C
123// Thanks https://gist.github.com/alexandrevicenzi/680147013e902a4eaa5d
124.glyphicon-refresh-animate {
4635f59d 125 animation: spin .7s infinite linear;
315cc0cc
C
126}
127
128@keyframes spin {
129 from { transform: scale(1) rotate(0deg);}
130 to { transform: scale(1) rotate(360deg);}
131}
132
04e0fc48 133// ngprime data table customizations
d592e0a9 134p-datatable {
cd83ea1b
C
135 font-size: 15px !important;
136
137 .ui-datatable-scrollable-header {
138 background-color: #fff !important;
139 }
140
141 .ui-widget-content {
142 border: none !important;
143 }
144
145 .ui-datatable-virtual-table {
146 border-top: none !important;
147 }
148
149 td {
150 border: 1px solid #E5E5E5 !important;
f595d394 151 padding-left: 15px !important;
fb4fd623
C
152 overflow: hidden !important;
153 text-overflow: ellipsis !important;
154 white-space: nowrap !important;
cd83ea1b
C
155 }
156
157 tr {
158 background-color: #fff !important;
159 height: 46px;
160
161 &:hover {
162 background-color: #f0f0f0 !important;
163 }
164
165 &:not(:hover) {
166 .action-cell * {
167 display: none !important;
168 }
169 }
170
171 &:first-child td {
172 border-top: none !important;
173 }
f595d394
C
174
175 &:last-child td {
176 border-bottom: none !important;
177 }
cd83ea1b
C
178 }
179
180 th {
181 border: none !important;
182 border-bottom: 1px solid #f0f0f0 !important;
183 text-align: left !important;
184 padding: 5px 0 5px 15px !important;
185 font-weight: $font-semibold !important;
186 color: #000 !important;
187
fb4fd623 188 &.ui-sortable-column:hover {
cd83ea1b
C
189 background-color: #f0f0f0 !important;
190 border: 1px solid #f0f0f0 !important;
f595d394 191 border-width: 0 1px !important;
fb4fd623
C
192
193 &:first-child {
194 border-width: 0 1px 0 0 !important;
195 }
cd83ea1b 196 }
c2830fa8
C
197
198 &.ui-state-active {
fb4fd623
C
199 background-color: #fff !important;
200
201 .fa {
202 @extend .glyphicon;
203 font-size: 11px;
204
205 &.fa-sort-asc {
206 @extend .glyphicon-triangle-top;
207 }
208
209 &.fa-sort-desc {
210 @extend .glyphicon-triangle-bottom;
211 }
212 }
c2830fa8 213 }
cd83ea1b
C
214 }
215
d592e0a9 216 .action-cell {
cd83ea1b
C
217 width: 250px !important;
218 padding: 0 !important;
d592e0a9 219 text-align: center;
cd83ea1b 220 }
28798b5d 221
cd83ea1b 222 p-paginator {
cd83ea1b
C
223 .ui-paginator-bottom {
224 position: relative;
225 border: none !important;
f595d394 226 border: 1px solid #f0f0f0 !important;
cd83ea1b
C
227 height: 40px;
228 display: flex;
229 justify-content: center;
230 align-items: center;
231
232 a {
233 color: #000 !important;
234 font-weight: $font-semibold !important;
235 margin-right: 20px !important;
236 outline: 0 !important;
237 border-radius: 3px !important;
238 padding: 5px 2px !important;
239
240 &.ui-state-active {
241 &, &:hover, &:active, &:focus {
242 color: #fff !important;
243 background-color: $orange-color !important;
244 }
245 }
246 }
d592e0a9 247 }
ad42bea3 248 }
21496304 249}
7b272fd7 250
04e0fc48 251// Bootstrap customizations
7b272fd7
C
252.dropdown-menu {
253 border-radius: 3px;
254 box-shadow: 0 3px 6px;
255 font-size: 15px;
256
257 .dropdown-item {
258 padding: 3px 15px;
259 }
260
261 a {
262 color: #000 !important;
263 }
264}
0727cab0
C
265
266.modal {
267 .modal-header {
268 border-bottom: none;
5f0805d3 269 margin-bottom: 5px;
0727cab0 270
5f0805d3
C
271 .modal-title {
272 font-size: 20px;
273 font-weight: $font-semibold;
274 }
275
276 .close {
277 @include icon(24px);
278
279 position: relative;
280 right: -1px;
281 float: right;
282 background-image: url('../assets/images/global/cross.svg');
283 }
284 }
285
286 .inputs {
287 margin-top: 40px;
288 margin-bottom: 0;
289 text-align: right;
290
291 .action-button-cancel {
292 @include peertube-button;
293 @include grey-button;
294
295 display: inline-block;
296 margin-right: 10px;
297 }
298
299 .action-button-submit {
300 @include peertube-button;
301 @include orange-button;
0727cab0
C
302 }
303 }
304}
305
6de36768
C
306tabset:not(.bootstrap) {
307 .nav {
308 font-size: 16px !important;
04e0fc48
C
309 border: none !important;
310
6de36768
C
311 .nav-item .nav-link {
312 margin-right: 30px;
313 padding: 0;
314 border-radius: 3px;
315 border: none !important;
e600e1fe 316
6de36768
C
317 .tab-link {
318 display: flex !important;
319 align-items: center;
320 min-height: 30px !important;
321 padding: 0 15px;
322 }
04e0fc48 323
6de36768
C
324 &, & a {
325 color: #000 !important;
326 @include disable-default-a-behaviour;
327 }
328
329 &.active, &:hover {
330 background-color: #F0F0F0;
331 }
332
333 &.active {
334 font-weight: $font-semibold !important;
335 }
04e0fc48 336 }
6de36768
C
337 }
338}
04e0fc48 339
6de36768
C
340tabset.bootstrap {
341 .nav-item .nav-link {
342 &, & a {
343 color: #000;
344 @include disable-default-a-behaviour;
04e0fc48
C
345 }
346 }
04e0fc48
C
347}
348
0727cab0
C
349.orange-button {
350 @include peertube-button;
351 @include orange-button;
352}
353
354.orange-button-link {
355 @include peertube-button-link;
356 @include orange-button;
357}
358
359.grey-button {
360 @include peertube-button;
361 @include grey-button;
362}
363
364.grey-button-link {
365 @include peertube-button-link;
366 @include grey-button;
367}
20206dfb 368
fb4fd623
C
369// In tables, don't have a hover different background
370table {
371 .action-button-edit, .action-button-delete {
372 &:hover, &:active, &:focus, &[disabled], &.disabled {
373 background-color: $grey-color !important;
374 }
375 }
376}
377
1f788f20
C
378@media screen and (max-width: 900px) {
379 .main-col {
380 &, &.expanded {
381 .margin-content {
382 margin-left: 50px;
383 margin-right: 50px;
384 }
dd778941
C
385
386 .sub-menu {
387 padding-left: 50px;
388 }
1f788f20
C
389 }
390 }
391}
392
20206dfb 393// On small screen, menu is absolute
c8cf5952 394@media screen and (max-width: 600px) {
20206dfb 395 .title-menu-left {
c8cf5952 396 width: 100% !important;
20206dfb
C
397 position: absolute !important;
398 z-index: 10000;
399 }
400
401 .main-col {
402 margin-left: 0;
403
404 &, &.expanded {
405 .margin-content {
6693df9d
C
406 margin-left: 15px;
407 margin-right: 15px;
20206dfb
C
408 }
409
410 .sub-menu {
dd778941 411 padding-left: 15px;
20206dfb
C
412 margin-bottom: 10px;
413 }
414
415 input[type=text], input[type=password] {
416 width: 100% !important;
417 }
418 }
419 }
c8cf5952
C
420
421 bs-dropdown-container {
422 z-index: 10000;
423 }
20206dfb 424}