]> BookStack Code Mirror - bookstack/blob - resources/assets/sass/styles.scss
Merge branch 'master' of https://github.com/Abijeet/BookStack
[bookstack] / resources / assets / sass / styles.scss
1 @import "reset";
2 @import "variables";
3 @import "fonts";
4 @import "mixins";
5 @import "html";
6 @import "text";
7 @import "grid";
8 @import "blocks";
9 @import "buttons";
10 @import "tables";
11 @import "forms";
12 @import "animations";
13 @import "tinymce";
14 @import "highlightjs";
15 @import "simplemde";
16 @import "components";
17 @import "header";
18 @import "lists";
19 @import "pages";
20 @import "comments";
21
22 [v-cloak], [v-show] {
23   display: none; opacity: 0;
24   animation-name: none !important;
25 }
26
27
28 [ng\:cloak], [ng-cloak], .ng-cloak {
29   display: none !important;
30   user-select: none;
31 }
32
33 [ng-click] {
34   cursor: pointer;
35 }
36
37 // Jquery Sortable Styles
38 .dragged {
39   position: absolute;
40   opacity: 0.5;
41   z-index: 2000;
42 }
43 body.dragging, body.dragging * {
44   cursor: move !important;
45 }
46
47 // User Avatar Images
48 .avatar {
49   border-radius: 100%;
50   background-color: #EEE;
51   width: 30px;
52   height: 30px;
53   &.med {
54     width: 40px;
55     height: 40px;
56   }
57   &.large {
58     width: 80px;
59     height: 80px;
60   }
61   &.huge {
62     width: 120px;
63     height: 120px;
64   }
65   &.square {
66     border-radius: 3px;
67   }
68 }
69
70 // System wide notifications
71 .notification {
72   position: fixed;
73   top: 0;
74   right: 0;
75   margin: $-xl*2 $-xl;
76   padding: $-l $-xl;
77   background-color: #EEE;
78   border-radius: 3px;
79   box-shadow: $bs-med;
80   z-index: 999999;
81   display: block;
82   cursor: pointer;
83   max-width: 480px;
84   i, span {
85     display: table-cell;
86   }
87   i {
88     font-size: 2em;
89     padding-right: $-l;
90   }
91   span {
92     vertical-align: middle;
93   }
94   &.pos {
95     background-color: $positive;
96     color: #EEE;
97   }
98   &.neg {
99     background-color: $negative;
100     color: #EEE;
101   }
102   &.warning {
103     background-color: $secondary;
104     color: #EEE;
105   }
106 }
107
108 // Loading icon
109 $loadingSize: 10px;
110 .loading-container {
111   position: relative;
112   display: block;
113   height: $loadingSize;
114   margin: $-xl auto;
115   > div {
116     width: $loadingSize;
117     height: $loadingSize;
118     border-radius: $loadingSize;
119     display: inline-block;
120     vertical-align: top;
121     transform: translate3d(0, 0, 0);
122     animation-name: loadingBob;
123     animation-duration: 1.4s;
124     animation-iteration-count: infinite;
125     animation-timing-function: cubic-bezier(.62, .28, .23, .99);
126     margin-right: 4px;
127     background-color: $color-page;
128     animation-delay: 0.3s;
129   }
130   > div:first-child {
131       left: -($loadingSize+$-xs);
132       background-color: $color-book;
133       animation-delay: 0s;
134   }
135   > div:last-child {
136     left: $loadingSize+$-xs;
137     background-color: $color-chapter;
138     animation-delay: 0.6s;
139   }
140 }
141
142
143 // Search results
144 .search-results > h3 a {
145   font-size: 0.66em;
146   color: $primary;
147   padding-left: $-m;
148   i {
149     padding-right: $-s;
150   }
151 }
152
153 // Back to top link
154 $btt-size: 40px;
155 #back-to-top {
156   background-color: $primary;
157   position: fixed;
158   bottom: $-m;
159   right: $-l;
160   padding: $-xs $-s;
161   cursor: pointer;
162   color: #FFF;
163   width: $btt-size;
164   height: $btt-size;
165   border-radius: $btt-size;
166   transition: all ease-in-out 180ms;
167   opacity: 0;
168   z-index: 999;
169   overflow: hidden;
170   &:hover {
171     width: $btt-size*3.4;
172     opacity: 1 !important;
173     span {
174       display: inline-block;
175     }
176   }
177   .inner {
178     width: $btt-size*3.4;
179   }
180   i {
181     margin: 0;
182     font-size: 28px;
183     padding: 0 $-s 0 0;
184   }
185   span {
186     line-height: 12px;
187     position: relative;
188     top: -5px;
189   }
190 }
191
192 .contained-search-box {
193   display: flex;
194   input, button {
195     border-radius: 0;
196     border: 1px solid #DDD;
197     margin-left: -1px;
198   }
199   input {
200     flex: 5;
201     &:focus, &:active {
202       outline: 0;
203     }
204   }
205   button {
206     width: 60px;
207   }
208   button i {
209     padding: 0;
210   }
211   button.cancel.active {
212     background-color: $negative;
213     color: #EEE;
214   }
215 }
216
217 .entity-selector {
218   border: 1px solid #DDD;
219   border-radius: 3px;
220   overflow: hidden;
221   font-size: 0.8em;
222   input[type="text"] {
223     width: 100%;
224     display: block;
225     border-radius: 0;
226     border: 0;
227     border-bottom: 1px solid #DDD;
228     font-size: 16px;
229     padding: $-s $-m;
230   }
231   .entity-list {
232     overflow-y: scroll;
233     height: 400px;
234     background-color: #EEEEEE;
235   }
236   .loading {
237     height: 400px;
238     padding-top: $-l;
239   }
240   .entity-list > p {
241     text-align: center;
242     padding-top: $-l;
243     font-size: 1.333em;
244   }
245   .entity-list > div {
246     padding-left: $-m;
247     padding-right: $-m;
248     background-color: #FFF;
249     transition: all ease-in-out 120ms;
250     cursor: pointer;
251   }
252 }
253
254 .entity-list-item.selected {
255   h3, i, p ,a, span {
256     color: #EEE;
257   }
258 }
259
260 .center-box {
261   margin: $-xl auto 0 auto;
262   padding: $-m $-xxl $-xl $-xxl;
263   width: 420px;
264   max-width: 100%;
265   display: inline-block;
266   text-align: left;
267   vertical-align: top;
268   //border: 1px solid #DDD;
269   input {
270     width: 100%;
271   }
272   &.login {
273     background-color: #EEE;
274     box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1);
275     border: 1px solid #DDD;
276   }
277 }
278
279
280