Background orange on sorted columns
[oweals/peertube.git] / client / src / sass / application.scss
1 $FontPathSourceSansPro: "../fonts/source-sans-pro";
2 @import '~source-sans-pro/source-sans-pro';
3 @import '~primeng/resources/themes/bootstrap/theme.css';
4 @import '~primeng/resources/primeng.css';
5 @import '~video.js/dist/video-js.css';
6 @import './video-js-custom.scss';
7
8 [hidden] {
9   display: none !important;
10 }
11
12 body {
13   font-family: 'Source Sans Pro';
14   font-weight: $font-regular;
15   color: #000;
16 }
17
18 input.readonly {
19   /* Force blank on readonly inputs */
20   background-color: #fff !important;
21 }
22
23 label {
24   font-weight: $font-bold;
25   font-size: 15px;
26 }
27
28 .form-error {
29   display: block;
30   color: $red-error;
31   margin-top: 5px;
32 }
33
34 .input-error {
35   border-color: $red-error !important;
36 }
37
38 .glyphicon-black {
39   color: black;
40 }
41
42 .main-col {
43   margin-left: $menu-width;
44
45   .margin-content {
46     margin-left: $not-expanded-horizontal-margins;
47     margin-right: $not-expanded-horizontal-margins;
48   }
49
50   .sub-menu {
51     background-color: #F7F7F7;
52     width: 100%;
53     height: 81px;
54     margin-bottom: 30px;
55     display: flex;
56     align-items: center;
57     padding-left: $not-expanded-horizontal-margins;
58   }
59
60   // Override some properties if the main content is expanded (no menu on the left)
61   &.expanded {
62     margin-left: 0;
63
64     .margin-content {
65       margin-left: $expanded-horizontal-margins;
66       margin-right: $expanded-horizontal-margins;
67     }
68
69     .sub-menu {
70       padding-left: $expanded-horizontal-margins;
71     }
72   }
73 }
74
75 .title-page {
76   color: #000;
77   font-size: 16px;
78   display: inline-block;
79   margin-right: 55px;
80   font-weight: $font-semibold;
81   @include disable-default-a-behaviour;
82
83   &.active, &.title-page-single {
84     border-bottom: 2px solid $orange-color;
85     font-weight: $font-bold;
86     margin-top: 30px;
87     margin-bottom: 25px;
88   }
89
90   &:hover, &:active, &:focus {
91     color: #000;
92   }
93 }
94
95 .admin-sub-header {
96   display: flex;
97   align-items: center;
98   margin-bottom: 30px;
99
100   .admin-sub-title {
101     flex-grow: 1;
102   }
103 }
104
105 .admin-sub-title {
106   font-size: 20px;
107   font-weight: bold;
108 }
109
110 // Thanks https://gist.github.com/alexandrevicenzi/680147013e902a4eaa5d
111 .glyphicon-refresh-animate {
112   -animation: spin .7s infinite linear;
113   -ms-animation: spin .7s infinite linear;
114   -webkit-animation: spinw .7s infinite linear;
115   -moz-animation: spinm .7s infinite linear;
116 }
117
118 @keyframes spin {
119   from { transform: scale(1) rotate(0deg);}
120   to { transform: scale(1) rotate(360deg);}
121 }
122
123 @-webkit-keyframes spinw {
124   from { -webkit-transform: rotate(0deg);}
125   to { -webkit-transform: rotate(360deg);}
126 }
127
128 @-moz-keyframes spinm {
129   from { -moz-transform: rotate(0deg);}
130   to { -moz-transform: rotate(360deg);}
131 }
132
133 // ngprime data table customizations
134 p-datatable {
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;
151     padding-left: 15px !important;
152   }
153
154   tr {
155     background-color: #fff !important;
156     height: 46px;
157
158     &:hover {
159       background-color: #f0f0f0 !important;
160     }
161
162     &:not(:hover) {
163       .action-cell * {
164         display: none !important;
165       }
166     }
167
168     &:first-child td {
169       border-top: none !important;
170     }
171
172     &:last-child td {
173       border-bottom: none !important;
174     }
175   }
176
177   th {
178     border: none !important;
179     border-bottom: 1px solid #f0f0f0 !important;
180     text-align: left !important;
181     padding: 5px 0 5px 15px !important;
182     font-weight: $font-semibold !important;
183     color: #000 !important;
184
185     &.ui-sortable-column:hover:not(.ui-state-active) {
186       background-color: #f0f0f0 !important;
187       border: 1px solid #f0f0f0 !important;
188       border-width: 0 1px !important;
189     }
190
191     &.ui-state-active {
192       color: #fff !important;
193       background-color: $orange-color !important;
194       border: 1px solid $orange-color !important;
195       border-width: 0 1px !important;
196     }
197   }
198
199   .action-cell {
200     width: 250px !important;
201     padding: 0 !important;
202     text-align: center;
203   }
204
205   p-paginator {
206     .ui-paginator-bottom {
207       position: relative;
208       border: none !important;
209       border: 1px solid #f0f0f0 !important;
210       height: 40px;
211       display: flex;
212       justify-content: center;
213       align-items: center;
214
215       a {
216         color: #000 !important;
217         font-weight: $font-semibold !important;
218         margin-right: 20px !important;
219         outline: 0 !important;
220         border-radius: 3px !important;
221         padding: 5px 2px !important;
222
223         &.ui-state-active {
224           &, &:hover, &:active, &:focus {
225             color: #fff !important;
226             background-color: $orange-color !important;
227           }
228         }
229       }
230     }
231   }
232 }
233
234 // Bootstrap customizations
235 .dropdown-menu {
236   border-radius: 3px;
237   box-shadow: 0 3px 6px;
238   font-size: 15px;
239
240   .dropdown-item {
241     padding: 3px 15px;
242   }
243
244   a {
245     color: #000 !important;
246   }
247 }
248
249 .modal {
250   .modal-header {
251     border-bottom: none;
252
253     .title-page-single {
254       margin: 0;
255     }
256   }
257 }
258
259 .nav {
260   font-size: 16px !important;
261   border: none !important;
262
263   .nav-item .nav-link {
264     margin-right: 30px;
265     padding: 0;
266     border-radius: 3px;
267     border: none !important;
268
269     .tab-link {
270       display: flex !important;
271       align-items: center;
272       height: 30px !important;
273       padding: 0 15px;
274     }
275
276     &, & a {
277       color: #000 !important;
278       @include disable-default-a-behaviour;
279     }
280
281     &.active, &:hover {
282       background-color: #F0F0F0;
283     }
284
285     &.active {
286       font-weight: $font-semibold !important;
287     }
288   }
289 }
290
291 .orange-button {
292   @include peertube-button;
293   @include orange-button;
294 }
295
296 .orange-button-link {
297   @include peertube-button-link;
298   @include orange-button;
299 }
300
301 .grey-button {
302   @include peertube-button;
303   @include grey-button;
304 }
305
306 .grey-button-link {
307   @include peertube-button-link;
308   @include grey-button;
309 }
310
311 // On small screen, menu is absolute
312 @media screen and (max-width: 800px) {
313   .title-menu-left {
314     width: 150px !important;
315     position: absolute !important;
316     z-index: 10000;
317   }
318
319   .main-col {
320     margin-left: 0;
321
322     &, &.expanded {
323       .margin-content {
324         margin-left: 10px;
325         margin-right: 10px;
326       }
327
328       .sub-menu {
329         padding-left: 10px;
330         margin-bottom: 10px;
331       }
332
333       input[type=text], input[type=password] {
334         width: 100% !important;
335       }
336     }
337   }
338 }