blob: e665aae8c0918fe38b3cb3a28935d58dfe2340a8 [file] [log] [blame]
Matteo Scandolo6c6b9282015-12-15 14:37:27 -08001#xosCeilometerDashboard{
2 position: relative;
3}
Matteo Scandolo1d8627f2015-12-05 18:44:45 -08004
Matteo Scandolo6c6b9282015-12-15 14:37:27 -08005/* Panel Layout */
6.panel {
7 margin-top: 10px;
8}
9
10.panel-body:not(:first-child) {
11 border-top: 1px solid #e3e3e3;
12}
13
14.panel-body .row {
15 margin-top: 10px;
16}
17
18/* Chart details */
19.chart {
20 width: 100%;
21 height: 300px;
22}
23
24.btn-chart, .btn-chart:hover {
25 color: #fff;
26}
27
28.side-container {
29 position: relative;
30}
31
32.service-list {
33 margin-top: -10px;
34}
35
36.service-list h3 {
37 margin-top: 0px;
38 margin-bottom: 0px;
39}
40
41.service-list a {
42 text-decoration: none;
43 color: #333;
44}
45
46.meters, .stats {
47 margin-top: 25px;
48 position: absolute;
49 top: 0;
50 left: 0;
51 width: 100%;
52}
53
54/* LOADER */
55.loader {
56 font-size: 10px;
57 margin: 150px auto;
58 text-indent: -9999em;
59 width: 11em;
60 height: 11em;
61 border-radius: 50%;
62 background: #ffffff;
63 background: -moz-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
64 background: -webkit-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
65 background: -o-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
66 background: -ms-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
67 background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
68 position: relative;
69 -webkit-animation: load3 1.4s infinite linear;
70 animation: load3 1.4s infinite linear;
71 -webkit-transform: translateZ(0);
72 -ms-transform: translateZ(0);
73 transform: translateZ(0);
74}
75.loader:before {
76 width: 50%;
77 height: 50%;
78 background: #105E9E;
79 border-radius: 100% 0 0 0;
80 position: absolute;
81 top: 0;
82 left: 0;
83 content: '';
84}
85.loader:after {
86 background: #fff;
87 width: 75%;
88 height: 75%;
89 border-radius: 50%;
90 content: '';
91 margin: auto;
92 position: absolute;
93 top: 0;
94 left: 0;
95 bottom: 0;
96 right: 0;
97}
98@-webkit-keyframes load3 {
99 0% {
100 -webkit-transform: rotate(0deg);
101 transform: rotate(0deg);
102 }
103 100% {
104 -webkit-transform: rotate(360deg);
105 transform: rotate(360deg);
106 }
107}
108@keyframes load3 {
109 0% {
110 -webkit-transform: rotate(0deg);
111 transform: rotate(0deg);
112 }
113 100% {
114 -webkit-transform: rotate(360deg);
115 transform: rotate(360deg);
116 }
117}
118
119/* VIEW ANIMATION */
120
121[ui-view] {
122 position: absolute;
123 top: 0;
Matteo Scandolo918f0a52015-12-17 16:26:09 -0800124 left: 0;
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800125 width: 100%;
Matteo Scandolo918f0a52015-12-17 16:26:09 -0800126 margin-bottom: 100px;
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800127}
128
129/* FROM DASHBOARD TO DETAIL */
130
131/* dash out */
132[ui-view].ceilometerDashboard.ng-leave {
133 animation:1s bounceOutLeft ease;
134}
135/* samples in */
136[ui-view].samples.ng-enter {
137 animation:1s bounceInRight ease;
138}
139
140/* FROM DETAIL TO DASHBOARD */
141
142/* samples out */
143[ui-view].samples.ng-leave {
144 animation:1s bounceOutRight ease;
145}
146/* dash in */
147[ui-view].ceilometerDashboard.ng-enter {
148 animation:1s bounceInLeft ease;
149}
150
151/* COLUMS ANIMATION */
152/* when showing the thing */
153.animate .animate-slide-left.ng-hide-remove {
154 animation:0.5s bounceInRight ease;
155}
156
157/* when hiding the picture */
158.animate .animate-slide-left.ng-hide-add {
159 animation:0.5s bounceOutRight ease;
160}
161
162/* ANIMATIONS */
163
164@keyframes bounceInRight {
165 from, 60%, 75%, 90%, to {
166 animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
Matteo Scandolo83869332015-12-14 14:26:20 -0800167 }
168
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800169 from {
170 opacity: 0;
171 transform: translate3d(3000px, 0, 0);
Matteo Scandolo68c2e722015-12-04 10:14:40 -0800172 }
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800173
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800174 60% {
175 opacity: 1;
176 transform: translate3d(-25px, 0, 0);
Matteo Scandolo68c2e722015-12-04 10:14:40 -0800177 }
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800178
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800179 75% {
180 transform: translate3d(10px, 0, 0);
Matteo Scandolo68c2e722015-12-04 10:14:40 -0800181 }
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800182
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800183 90% {
184 transform: translate3d(-5px, 0, 0);
Matteo Scandolo68c2e722015-12-04 10:14:40 -0800185 }
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800186
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800187 to {
188 transform: none;
189 }
190}
191
192@keyframes bounceInLeft {
193 from, 60%, 75%, 90%, to {
194 animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
Matteo Scandolo324df092015-12-08 16:39:57 -0800195 }
196
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800197 0% {
198 opacity: 0;
199 transform: translate3d(-3000px, 0, 0);
Matteo Scandolo41f5c152015-12-09 17:09:55 -0800200 }
201
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800202 60% {
203 opacity: 1;
204 transform: translate3d(25px, 0, 0);
Matteo Scandoloc0582112015-12-09 16:09:59 -0800205 }
206
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800207 75% {
208 transform: translate3d(-10px, 0, 0);
Matteo Scandoloc0582112015-12-09 16:09:59 -0800209 }
210
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800211 90% {
212 transform: translate3d(5px, 0, 0);
Matteo Scandoloc0582112015-12-09 16:09:59 -0800213 }
214
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800215 to {
216 transform: none;
217 }
218}
219
220@keyframes slideInUp {
221 from {
222 transform: translate3d(0, 100%, 0);
223 visibility: visible;
Matteo Scandoloc0582112015-12-09 16:09:59 -0800224 }
225
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800226 to {
227 transform: translate3d(0, 0, 0);
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800228 }
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800229}
230
231@keyframes bounceOutRight {
232 20% {
233 opacity: 1;
234 transform: translate3d(-20px, 0, 0);
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800235 }
236
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800237 to {
238 opacity: 0;
239 transform: translate3d(2000px, 0, 0);
240 }
241}
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800242
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800243@keyframes bounceOutLeft {
244 20% {
245 opacity: 1;
246 transform: translate3d(20px, 0, 0);
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800247 }
248
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800249 to {
250 opacity: 0;
251 transform: translate3d(-2000px, 0, 0);
Matteo Scandolo68856082015-12-08 14:35:55 -0800252 }
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800253}
254
255@keyframes slideOutDown {
256 from {
257 transform: translate3d(0, 0, 0);
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800258 }
259
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800260 to {
261 visibility: hidden;
262 transform: translate3d(0, 100%, 0);
Matteo Scandolo1d8627f2015-12-05 18:44:45 -0800263 }
Matteo Scandolo6c6b9282015-12-15 14:37:27 -0800264}