소스 검색

User Interface Refresh

This commit introduces the beginnings of a refreshed user interface for Hestia to make it look cleaner, more modern, and easier to use.
Kristan Kenney 7 년 전
부모
커밋
6f3d18b67f
100개의 변경된 파일4123개의 추가작업 그리고 272개의 파일을 삭제
  1. 0 0
      web/css/all.min.css
  2. 3623 0
      web/css/animate.css
  3. 315 126
      web/css/styles.min.css
  4. 31 31
      web/inc/i18n/en.php
  5. 1 1
      web/templates/admin/add_cron.html
  6. 1 1
      web/templates/admin/add_db.html
  7. 1 1
      web/templates/admin/add_dns.html
  8. 1 1
      web/templates/admin/add_dns_rec.html
  9. 1 1
      web/templates/admin/add_firewall.html
  10. 1 1
      web/templates/admin/add_firewall_banlist.html
  11. 1 1
      web/templates/admin/add_ip.html
  12. 1 1
      web/templates/admin/add_mail.html
  13. 1 1
      web/templates/admin/add_mail_acc.html
  14. 1 1
      web/templates/admin/add_package.html
  15. 1 1
      web/templates/admin/add_user.html
  16. 2 2
      web/templates/admin/add_web.html
  17. 1 1
      web/templates/admin/edit_backup_exclusions.html
  18. 1 1
      web/templates/admin/edit_cron.html
  19. 1 1
      web/templates/admin/edit_db.html
  20. 1 1
      web/templates/admin/edit_dns.html
  21. 1 1
      web/templates/admin/edit_dns_rec.html
  22. 1 1
      web/templates/admin/edit_firewall.html
  23. 1 1
      web/templates/admin/edit_ip.html
  24. 1 1
      web/templates/admin/edit_mail.html
  25. 1 1
      web/templates/admin/edit_mail_acc.html
  26. 1 1
      web/templates/admin/edit_package.html
  27. 1 1
      web/templates/admin/edit_server.html
  28. 1 1
      web/templates/admin/edit_server_bind9.html
  29. 1 1
      web/templates/admin/edit_server_dovecot.html
  30. 1 1
      web/templates/admin/edit_server_httpd.html
  31. 1 1
      web/templates/admin/edit_server_mysql.html
  32. 1 1
      web/templates/admin/edit_server_nginx.html
  33. 1 1
      web/templates/admin/edit_server_pgsql.html
  34. 1 1
      web/templates/admin/edit_server_php.html
  35. 1 1
      web/templates/admin/edit_server_service.html
  36. 1 1
      web/templates/admin/edit_user.html
  37. 1 1
      web/templates/admin/edit_web.html
  38. 1 1
      web/templates/admin/generate_ssl.html
  39. 3 3
      web/templates/admin/list_backup.html
  40. 1 1
      web/templates/admin/list_backup_detail.html
  41. 1 1
      web/templates/admin/list_backup_exclusions.html
  42. 3 3
      web/templates/admin/list_cron.html
  43. 3 3
      web/templates/admin/list_db.html
  44. 3 3
      web/templates/admin/list_dns.html
  45. 19 4
      web/templates/admin/list_dns_rec.html
  46. 19 4
      web/templates/admin/list_firewall.html
  47. 4 4
      web/templates/admin/list_firewall_banlist.html
  48. 1 1
      web/templates/admin/list_ip.html
  49. 2 2
      web/templates/admin/list_log.html
  50. 3 3
      web/templates/admin/list_mail.html
  51. 1 1
      web/templates/admin/list_mail_acc.html
  52. 1 1
      web/templates/admin/list_packages.html
  53. 1 1
      web/templates/admin/list_rrd.html
  54. 1 1
      web/templates/admin/list_search.html
  55. 1 1
      web/templates/admin/list_services.html
  56. 1 1
      web/templates/admin/list_ssl.html
  57. 1 1
      web/templates/admin/list_stats.html
  58. 1 1
      web/templates/admin/list_updates.html
  59. 3 3
      web/templates/admin/list_user.html
  60. 3 3
      web/templates/admin/list_web.html
  61. 10 12
      web/templates/admin/panel.html
  62. 2 0
      web/templates/header.html
  63. 2 2
      web/templates/login.html
  64. 1 1
      web/templates/user/edit_dns.html
  65. 1 1
      web/templates/user/edit_user.html
  66. 1 1
      web/templates/user/edit_web.html
  67. 1 1
      web/templates/user/list_cron.html
  68. 1 1
      web/templates/user/list_db.html
  69. 1 1
      web/templates/user/list_dns.html
  70. 10 1
      web/templates/user/list_dns_rec.html
  71. 1 1
      web/templates/user/list_mail.html
  72. 1 1
      web/templates/user/list_mail_acc.html
  73. 1 1
      web/templates/user/list_search.html
  74. 1 1
      web/templates/user/list_stats.html
  75. 1 1
      web/templates/user/list_user.html
  76. 8 8
      web/templates/user/panel.html
  77. BIN
      web/webfonts/exo-2-v5-latin-100.woff
  78. BIN
      web/webfonts/exo-2-v5-latin-100.woff2
  79. BIN
      web/webfonts/exo-2-v5-latin-100italic.woff
  80. BIN
      web/webfonts/exo-2-v5-latin-100italic.woff2
  81. BIN
      web/webfonts/exo-2-v5-latin-200.woff
  82. BIN
      web/webfonts/exo-2-v5-latin-200.woff2
  83. BIN
      web/webfonts/exo-2-v5-latin-200italic.woff
  84. BIN
      web/webfonts/exo-2-v5-latin-200italic.woff2
  85. BIN
      web/webfonts/exo-2-v5-latin-300.woff
  86. BIN
      web/webfonts/exo-2-v5-latin-300.woff2
  87. BIN
      web/webfonts/exo-2-v5-latin-300italic.woff
  88. BIN
      web/webfonts/exo-2-v5-latin-300italic.woff2
  89. BIN
      web/webfonts/exo-2-v5-latin-500.woff
  90. BIN
      web/webfonts/exo-2-v5-latin-500.woff2
  91. BIN
      web/webfonts/exo-2-v5-latin-500italic.woff
  92. BIN
      web/webfonts/exo-2-v5-latin-500italic.woff2
  93. BIN
      web/webfonts/exo-2-v5-latin-600.woff
  94. BIN
      web/webfonts/exo-2-v5-latin-600.woff2
  95. BIN
      web/webfonts/exo-2-v5-latin-600italic.woff
  96. BIN
      web/webfonts/exo-2-v5-latin-600italic.woff2
  97. BIN
      web/webfonts/exo-2-v5-latin-700.woff
  98. BIN
      web/webfonts/exo-2-v5-latin-700.woff2
  99. BIN
      web/webfonts/exo-2-v5-latin-700italic.woff
  100. BIN
      web/webfonts/exo-2-v5-latin-700italic.woff2

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
web/css/all.min.css


+ 3623 - 0
web/css/animate.css

@@ -0,0 +1,3623 @@
+@charset "UTF-8";
+
+/*!
+ * animate.css -http://daneden.me/animate
+ * Version - 3.7.0
+ * Licensed under the MIT license - http://opensource.org/licenses/MIT
+ *
+ * Copyright (c) 2018 Daniel Eden
+ */
+
+@-webkit-keyframes bounce {
+  from,
+  20%,
+  53%,
+  80%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  40%,
+  43% {
+    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    -webkit-transform: translate3d(0, -30px, 0);
+    transform: translate3d(0, -30px, 0);
+  }
+
+  70% {
+    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    -webkit-transform: translate3d(0, -15px, 0);
+    transform: translate3d(0, -15px, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(0, -4px, 0);
+    transform: translate3d(0, -4px, 0);
+  }
+}
+
+@keyframes bounce {
+  from,
+  20%,
+  53%,
+  80%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  40%,
+  43% {
+    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    -webkit-transform: translate3d(0, -30px, 0);
+    transform: translate3d(0, -30px, 0);
+  }
+
+  70% {
+    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+    -webkit-transform: translate3d(0, -15px, 0);
+    transform: translate3d(0, -15px, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(0, -4px, 0);
+    transform: translate3d(0, -4px, 0);
+  }
+}
+
+.bounce {
+  -webkit-animation-name: bounce;
+  animation-name: bounce;
+  -webkit-transform-origin: center bottom;
+  transform-origin: center bottom;
+}
+
+@-webkit-keyframes flash {
+  from,
+  50%,
+  to {
+    opacity: 1;
+  }
+
+  25%,
+  75% {
+    opacity: 0;
+  }
+}
+
+@keyframes flash {
+  from,
+  50%,
+  to {
+    opacity: 1;
+  }
+
+  25%,
+  75% {
+    opacity: 0;
+  }
+}
+
+.flash {
+  -webkit-animation-name: flash;
+  animation-name: flash;
+}
+
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes pulse {
+  from {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+
+  50% {
+    -webkit-transform: scale3d(1.05, 1.05, 1.05);
+    transform: scale3d(1.05, 1.05, 1.05);
+  }
+
+  to {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+@keyframes pulse {
+  from {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+
+  50% {
+    -webkit-transform: scale3d(1.05, 1.05, 1.05);
+    transform: scale3d(1.05, 1.05, 1.05);
+  }
+
+  to {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+.pulse {
+  -webkit-animation-name: pulse;
+  animation-name: pulse;
+}
+
+@-webkit-keyframes rubberBand {
+  from {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+
+  30% {
+    -webkit-transform: scale3d(1.25, 0.75, 1);
+    transform: scale3d(1.25, 0.75, 1);
+  }
+
+  40% {
+    -webkit-transform: scale3d(0.75, 1.25, 1);
+    transform: scale3d(0.75, 1.25, 1);
+  }
+
+  50% {
+    -webkit-transform: scale3d(1.15, 0.85, 1);
+    transform: scale3d(1.15, 0.85, 1);
+  }
+
+  65% {
+    -webkit-transform: scale3d(0.95, 1.05, 1);
+    transform: scale3d(0.95, 1.05, 1);
+  }
+
+  75% {
+    -webkit-transform: scale3d(1.05, 0.95, 1);
+    transform: scale3d(1.05, 0.95, 1);
+  }
+
+  to {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+@keyframes rubberBand {
+  from {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+
+  30% {
+    -webkit-transform: scale3d(1.25, 0.75, 1);
+    transform: scale3d(1.25, 0.75, 1);
+  }
+
+  40% {
+    -webkit-transform: scale3d(0.75, 1.25, 1);
+    transform: scale3d(0.75, 1.25, 1);
+  }
+
+  50% {
+    -webkit-transform: scale3d(1.15, 0.85, 1);
+    transform: scale3d(1.15, 0.85, 1);
+  }
+
+  65% {
+    -webkit-transform: scale3d(0.95, 1.05, 1);
+    transform: scale3d(0.95, 1.05, 1);
+  }
+
+  75% {
+    -webkit-transform: scale3d(1.05, 0.95, 1);
+    transform: scale3d(1.05, 0.95, 1);
+  }
+
+  to {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+.rubberBand {
+  -webkit-animation-name: rubberBand;
+  animation-name: rubberBand;
+}
+
+@-webkit-keyframes shake {
+  from,
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  10%,
+  30%,
+  50%,
+  70%,
+  90% {
+    -webkit-transform: translate3d(-10px, 0, 0);
+    transform: translate3d(-10px, 0, 0);
+  }
+
+  20%,
+  40%,
+  60%,
+  80% {
+    -webkit-transform: translate3d(10px, 0, 0);
+    transform: translate3d(10px, 0, 0);
+  }
+}
+
+@keyframes shake {
+  from,
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  10%,
+  30%,
+  50%,
+  70%,
+  90% {
+    -webkit-transform: translate3d(-10px, 0, 0);
+    transform: translate3d(-10px, 0, 0);
+  }
+
+  20%,
+  40%,
+  60%,
+  80% {
+    -webkit-transform: translate3d(10px, 0, 0);
+    transform: translate3d(10px, 0, 0);
+  }
+}
+
+.shake {
+  -webkit-animation-name: shake;
+  animation-name: shake;
+}
+
+@-webkit-keyframes headShake {
+  0% {
+    -webkit-transform: translateX(0);
+    transform: translateX(0);
+  }
+
+  6.5% {
+    -webkit-transform: translateX(-6px) rotateY(-9deg);
+    transform: translateX(-6px) rotateY(-9deg);
+  }
+
+  18.5% {
+    -webkit-transform: translateX(5px) rotateY(7deg);
+    transform: translateX(5px) rotateY(7deg);
+  }
+
+  31.5% {
+    -webkit-transform: translateX(-3px) rotateY(-5deg);
+    transform: translateX(-3px) rotateY(-5deg);
+  }
+
+  43.5% {
+    -webkit-transform: translateX(2px) rotateY(3deg);
+    transform: translateX(2px) rotateY(3deg);
+  }
+
+  50% {
+    -webkit-transform: translateX(0);
+    transform: translateX(0);
+  }
+}
+
+@keyframes headShake {
+  0% {
+    -webkit-transform: translateX(0);
+    transform: translateX(0);
+  }
+
+  6.5% {
+    -webkit-transform: translateX(-6px) rotateY(-9deg);
+    transform: translateX(-6px) rotateY(-9deg);
+  }
+
+  18.5% {
+    -webkit-transform: translateX(5px) rotateY(7deg);
+    transform: translateX(5px) rotateY(7deg);
+  }
+
+  31.5% {
+    -webkit-transform: translateX(-3px) rotateY(-5deg);
+    transform: translateX(-3px) rotateY(-5deg);
+  }
+
+  43.5% {
+    -webkit-transform: translateX(2px) rotateY(3deg);
+    transform: translateX(2px) rotateY(3deg);
+  }
+
+  50% {
+    -webkit-transform: translateX(0);
+    transform: translateX(0);
+  }
+}
+
+.headShake {
+  -webkit-animation-timing-function: ease-in-out;
+  animation-timing-function: ease-in-out;
+  -webkit-animation-name: headShake;
+  animation-name: headShake;
+}
+
+@-webkit-keyframes swing {
+  20% {
+    -webkit-transform: rotate3d(0, 0, 1, 15deg);
+    transform: rotate3d(0, 0, 1, 15deg);
+  }
+
+  40% {
+    -webkit-transform: rotate3d(0, 0, 1, -10deg);
+    transform: rotate3d(0, 0, 1, -10deg);
+  }
+
+  60% {
+    -webkit-transform: rotate3d(0, 0, 1, 5deg);
+    transform: rotate3d(0, 0, 1, 5deg);
+  }
+
+  80% {
+    -webkit-transform: rotate3d(0, 0, 1, -5deg);
+    transform: rotate3d(0, 0, 1, -5deg);
+  }
+
+  to {
+    -webkit-transform: rotate3d(0, 0, 1, 0deg);
+    transform: rotate3d(0, 0, 1, 0deg);
+  }
+}
+
+@keyframes swing {
+  20% {
+    -webkit-transform: rotate3d(0, 0, 1, 15deg);
+    transform: rotate3d(0, 0, 1, 15deg);
+  }
+
+  40% {
+    -webkit-transform: rotate3d(0, 0, 1, -10deg);
+    transform: rotate3d(0, 0, 1, -10deg);
+  }
+
+  60% {
+    -webkit-transform: rotate3d(0, 0, 1, 5deg);
+    transform: rotate3d(0, 0, 1, 5deg);
+  }
+
+  80% {
+    -webkit-transform: rotate3d(0, 0, 1, -5deg);
+    transform: rotate3d(0, 0, 1, -5deg);
+  }
+
+  to {
+    -webkit-transform: rotate3d(0, 0, 1, 0deg);
+    transform: rotate3d(0, 0, 1, 0deg);
+  }
+}
+
+.swing {
+  -webkit-transform-origin: top center;
+  transform-origin: top center;
+  -webkit-animation-name: swing;
+  animation-name: swing;
+}
+
+@-webkit-keyframes tada {
+  from {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+
+  10%,
+  20% {
+    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
+    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
+  }
+
+  30%,
+  50%,
+  70%,
+  90% {
+    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
+    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
+  }
+
+  40%,
+  60%,
+  80% {
+    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
+    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
+  }
+
+  to {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+@keyframes tada {
+  from {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+
+  10%,
+  20% {
+    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
+    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
+  }
+
+  30%,
+  50%,
+  70%,
+  90% {
+    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
+    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
+  }
+
+  40%,
+  60%,
+  80% {
+    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
+    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
+  }
+
+  to {
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+.tada {
+  -webkit-animation-name: tada;
+  animation-name: tada;
+}
+
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes wobble {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  15% {
+    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
+    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
+  }
+
+  30% {
+    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
+    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
+  }
+
+  45% {
+    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
+    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
+  }
+
+  60% {
+    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
+    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
+  }
+
+  75% {
+    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
+    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes wobble {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  15% {
+    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
+    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
+  }
+
+  30% {
+    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
+    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
+  }
+
+  45% {
+    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
+    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
+  }
+
+  60% {
+    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
+    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
+  }
+
+  75% {
+    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
+    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.wobble {
+  -webkit-animation-name: wobble;
+  animation-name: wobble;
+}
+
+@-webkit-keyframes jello {
+  from,
+  11.1%,
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  22.2% {
+    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
+    transform: skewX(-12.5deg) skewY(-12.5deg);
+  }
+
+  33.3% {
+    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
+    transform: skewX(6.25deg) skewY(6.25deg);
+  }
+
+  44.4% {
+    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
+    transform: skewX(-3.125deg) skewY(-3.125deg);
+  }
+
+  55.5% {
+    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
+    transform: skewX(1.5625deg) skewY(1.5625deg);
+  }
+
+  66.6% {
+    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
+    transform: skewX(-0.78125deg) skewY(-0.78125deg);
+  }
+
+  77.7% {
+    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
+    transform: skewX(0.390625deg) skewY(0.390625deg);
+  }
+
+  88.8% {
+    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
+    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
+  }
+}
+
+@keyframes jello {
+  from,
+  11.1%,
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  22.2% {
+    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
+    transform: skewX(-12.5deg) skewY(-12.5deg);
+  }
+
+  33.3% {
+    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
+    transform: skewX(6.25deg) skewY(6.25deg);
+  }
+
+  44.4% {
+    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
+    transform: skewX(-3.125deg) skewY(-3.125deg);
+  }
+
+  55.5% {
+    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
+    transform: skewX(1.5625deg) skewY(1.5625deg);
+  }
+
+  66.6% {
+    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
+    transform: skewX(-0.78125deg) skewY(-0.78125deg);
+  }
+
+  77.7% {
+    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
+    transform: skewX(0.390625deg) skewY(0.390625deg);
+  }
+
+  88.8% {
+    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
+    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
+  }
+}
+
+.jello {
+  -webkit-animation-name: jello;
+  animation-name: jello;
+  -webkit-transform-origin: center;
+  transform-origin: center;
+}
+
+@-webkit-keyframes heartBeat {
+  0% {
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+
+  14% {
+    -webkit-transform: scale(1.3);
+    transform: scale(1.3);
+  }
+
+  28% {
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+
+  42% {
+    -webkit-transform: scale(1.3);
+    transform: scale(1.3);
+  }
+
+  70% {
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+}
+
+@keyframes heartBeat {
+  0% {
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+
+  14% {
+    -webkit-transform: scale(1.3);
+    transform: scale(1.3);
+  }
+
+  28% {
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+
+  42% {
+    -webkit-transform: scale(1.3);
+    transform: scale(1.3);
+  }
+
+  70% {
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+}
+
+.heartBeat {
+  -webkit-animation-name: heartBeat;
+  animation-name: heartBeat;
+  -webkit-animation-duration: 1.3s;
+  animation-duration: 1.3s;
+  -webkit-animation-timing-function: ease-in-out;
+  animation-timing-function: ease-in-out;
+}
+
+@-webkit-keyframes bounceIn {
+  from,
+  20%,
+  40%,
+  60%,
+  80%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  0% {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+
+  20% {
+    -webkit-transform: scale3d(1.1, 1.1, 1.1);
+    transform: scale3d(1.1, 1.1, 1.1);
+  }
+
+  40% {
+    -webkit-transform: scale3d(0.9, 0.9, 0.9);
+    transform: scale3d(0.9, 0.9, 0.9);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(1.03, 1.03, 1.03);
+    transform: scale3d(1.03, 1.03, 1.03);
+  }
+
+  80% {
+    -webkit-transform: scale3d(0.97, 0.97, 0.97);
+    transform: scale3d(0.97, 0.97, 0.97);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+@keyframes bounceIn {
+  from,
+  20%,
+  40%,
+  60%,
+  80%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  0% {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+
+  20% {
+    -webkit-transform: scale3d(1.1, 1.1, 1.1);
+    transform: scale3d(1.1, 1.1, 1.1);
+  }
+
+  40% {
+    -webkit-transform: scale3d(0.9, 0.9, 0.9);
+    transform: scale3d(0.9, 0.9, 0.9);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(1.03, 1.03, 1.03);
+    transform: scale3d(1.03, 1.03, 1.03);
+  }
+
+  80% {
+    -webkit-transform: scale3d(0.97, 0.97, 0.97);
+    transform: scale3d(0.97, 0.97, 0.97);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: scale3d(1, 1, 1);
+    transform: scale3d(1, 1, 1);
+  }
+}
+
+.bounceIn {
+  -webkit-animation-duration: 0.75s;
+  animation-duration: 0.75s;
+  -webkit-animation-name: bounceIn;
+  animation-name: bounceIn;
+}
+
+@-webkit-keyframes bounceInDown {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  0% {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -3000px, 0);
+    transform: translate3d(0, -3000px, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 25px, 0);
+    transform: translate3d(0, 25px, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(0, -10px, 0);
+    transform: translate3d(0, -10px, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(0, 5px, 0);
+    transform: translate3d(0, 5px, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes bounceInDown {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  0% {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -3000px, 0);
+    transform: translate3d(0, -3000px, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 25px, 0);
+    transform: translate3d(0, 25px, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(0, -10px, 0);
+    transform: translate3d(0, -10px, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(0, 5px, 0);
+    transform: translate3d(0, 5px, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.bounceInDown {
+  -webkit-animation-name: bounceInDown;
+  animation-name: bounceInDown;
+}
+
+@-webkit-keyframes bounceInLeft {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  0% {
+    opacity: 0;
+    -webkit-transform: translate3d(-3000px, 0, 0);
+    transform: translate3d(-3000px, 0, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(25px, 0, 0);
+    transform: translate3d(25px, 0, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(-10px, 0, 0);
+    transform: translate3d(-10px, 0, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(5px, 0, 0);
+    transform: translate3d(5px, 0, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes bounceInLeft {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  0% {
+    opacity: 0;
+    -webkit-transform: translate3d(-3000px, 0, 0);
+    transform: translate3d(-3000px, 0, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(25px, 0, 0);
+    transform: translate3d(25px, 0, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(-10px, 0, 0);
+    transform: translate3d(-10px, 0, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(5px, 0, 0);
+    transform: translate3d(5px, 0, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.bounceInLeft {
+  -webkit-animation-name: bounceInLeft;
+  animation-name: bounceInLeft;
+}
+
+@-webkit-keyframes bounceInRight {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(3000px, 0, 0);
+    transform: translate3d(3000px, 0, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(-25px, 0, 0);
+    transform: translate3d(-25px, 0, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(10px, 0, 0);
+    transform: translate3d(10px, 0, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(-5px, 0, 0);
+    transform: translate3d(-5px, 0, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes bounceInRight {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(3000px, 0, 0);
+    transform: translate3d(3000px, 0, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(-25px, 0, 0);
+    transform: translate3d(-25px, 0, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(10px, 0, 0);
+    transform: translate3d(10px, 0, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(-5px, 0, 0);
+    transform: translate3d(-5px, 0, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.bounceInRight {
+  -webkit-animation-name: bounceInRight;
+  animation-name: bounceInRight;
+}
+
+@-webkit-keyframes bounceInUp {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 3000px, 0);
+    transform: translate3d(0, 3000px, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, -20px, 0);
+    transform: translate3d(0, -20px, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(0, 10px, 0);
+    transform: translate3d(0, 10px, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(0, -5px, 0);
+    transform: translate3d(0, -5px, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes bounceInUp {
+  from,
+  60%,
+  75%,
+  90%,
+  to {
+    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+  }
+
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 3000px, 0);
+    transform: translate3d(0, 3000px, 0);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, -20px, 0);
+    transform: translate3d(0, -20px, 0);
+  }
+
+  75% {
+    -webkit-transform: translate3d(0, 10px, 0);
+    transform: translate3d(0, 10px, 0);
+  }
+
+  90% {
+    -webkit-transform: translate3d(0, -5px, 0);
+    transform: translate3d(0, -5px, 0);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.bounceInUp {
+  -webkit-animation-name: bounceInUp;
+  animation-name: bounceInUp;
+}
+
+@-webkit-keyframes bounceOut {
+  20% {
+    -webkit-transform: scale3d(0.9, 0.9, 0.9);
+    transform: scale3d(0.9, 0.9, 0.9);
+  }
+
+  50%,
+  55% {
+    opacity: 1;
+    -webkit-transform: scale3d(1.1, 1.1, 1.1);
+    transform: scale3d(1.1, 1.1, 1.1);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+}
+
+@keyframes bounceOut {
+  20% {
+    -webkit-transform: scale3d(0.9, 0.9, 0.9);
+    transform: scale3d(0.9, 0.9, 0.9);
+  }
+
+  50%,
+  55% {
+    opacity: 1;
+    -webkit-transform: scale3d(1.1, 1.1, 1.1);
+    transform: scale3d(1.1, 1.1, 1.1);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+}
+
+.bounceOut {
+  -webkit-animation-duration: 0.75s;
+  animation-duration: 0.75s;
+  -webkit-animation-name: bounceOut;
+  animation-name: bounceOut;
+}
+
+@-webkit-keyframes bounceOutDown {
+  20% {
+    -webkit-transform: translate3d(0, 10px, 0);
+    transform: translate3d(0, 10px, 0);
+  }
+
+  40%,
+  45% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, -20px, 0);
+    transform: translate3d(0, -20px, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 2000px, 0);
+    transform: translate3d(0, 2000px, 0);
+  }
+}
+
+@keyframes bounceOutDown {
+  20% {
+    -webkit-transform: translate3d(0, 10px, 0);
+    transform: translate3d(0, 10px, 0);
+  }
+
+  40%,
+  45% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, -20px, 0);
+    transform: translate3d(0, -20px, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 2000px, 0);
+    transform: translate3d(0, 2000px, 0);
+  }
+}
+
+.bounceOutDown {
+  -webkit-animation-name: bounceOutDown;
+  animation-name: bounceOutDown;
+}
+
+@-webkit-keyframes bounceOutLeft {
+  20% {
+    opacity: 1;
+    -webkit-transform: translate3d(20px, 0, 0);
+    transform: translate3d(20px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(-2000px, 0, 0);
+    transform: translate3d(-2000px, 0, 0);
+  }
+}
+
+@keyframes bounceOutLeft {
+  20% {
+    opacity: 1;
+    -webkit-transform: translate3d(20px, 0, 0);
+    transform: translate3d(20px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(-2000px, 0, 0);
+    transform: translate3d(-2000px, 0, 0);
+  }
+}
+
+.bounceOutLeft {
+  -webkit-animation-name: bounceOutLeft;
+  animation-name: bounceOutLeft;
+}
+
+@-webkit-keyframes bounceOutRight {
+  20% {
+    opacity: 1;
+    -webkit-transform: translate3d(-20px, 0, 0);
+    transform: translate3d(-20px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(2000px, 0, 0);
+    transform: translate3d(2000px, 0, 0);
+  }
+}
+
+@keyframes bounceOutRight {
+  20% {
+    opacity: 1;
+    -webkit-transform: translate3d(-20px, 0, 0);
+    transform: translate3d(-20px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(2000px, 0, 0);
+    transform: translate3d(2000px, 0, 0);
+  }
+}
+
+.bounceOutRight {
+  -webkit-animation-name: bounceOutRight;
+  animation-name: bounceOutRight;
+}
+
+@-webkit-keyframes bounceOutUp {
+  20% {
+    -webkit-transform: translate3d(0, -10px, 0);
+    transform: translate3d(0, -10px, 0);
+  }
+
+  40%,
+  45% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 20px, 0);
+    transform: translate3d(0, 20px, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -2000px, 0);
+    transform: translate3d(0, -2000px, 0);
+  }
+}
+
+@keyframes bounceOutUp {
+  20% {
+    -webkit-transform: translate3d(0, -10px, 0);
+    transform: translate3d(0, -10px, 0);
+  }
+
+  40%,
+  45% {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 20px, 0);
+    transform: translate3d(0, 20px, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -2000px, 0);
+    transform: translate3d(0, -2000px, 0);
+  }
+}
+
+.bounceOutUp {
+  -webkit-animation-name: bounceOutUp;
+  animation-name: bounceOutUp;
+}
+
+@-webkit-keyframes fadeIn {
+  from {
+    opacity: 0;
+  }
+
+  to {
+    opacity: 1;
+  }
+}
+
+@keyframes fadeIn {
+  from {
+    opacity: 0;
+  }
+
+  to {
+    opacity: 1;
+  }
+}
+
+.fadeIn {
+  -webkit-animation-name: fadeIn;
+  animation-name: fadeIn;
+}
+
+@-webkit-keyframes fadeInDown {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInDown {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInDown {
+  -webkit-animation-name: fadeInDown;
+  animation-name: fadeInDown;
+}
+
+@-webkit-keyframes fadeInDownBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -2000px, 0);
+    transform: translate3d(0, -2000px, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInDownBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -2000px, 0);
+    transform: translate3d(0, -2000px, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInDownBig {
+  -webkit-animation-name: fadeInDownBig;
+  animation-name: fadeInDownBig;
+}
+
+@-webkit-keyframes fadeInLeft {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInLeft {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInLeft {
+  -webkit-animation-name: fadeInLeft;
+  animation-name: fadeInLeft;
+}
+
+@-webkit-keyframes fadeInLeftBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(-2000px, 0, 0);
+    transform: translate3d(-2000px, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInLeftBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(-2000px, 0, 0);
+    transform: translate3d(-2000px, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInLeftBig {
+  -webkit-animation-name: fadeInLeftBig;
+  animation-name: fadeInLeftBig;
+}
+
+@-webkit-keyframes fadeInRight {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInRight {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInRight {
+  -webkit-animation-name: fadeInRight;
+  animation-name: fadeInRight;
+}
+
+@-webkit-keyframes fadeInRightBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(2000px, 0, 0);
+    transform: translate3d(2000px, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInRightBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(2000px, 0, 0);
+    transform: translate3d(2000px, 0, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInRightBig {
+  -webkit-animation-name: fadeInRightBig;
+  animation-name: fadeInRightBig;
+}
+
+@-webkit-keyframes fadeInUp {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInUp {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInUp {
+  -webkit-animation-name: fadeInUp;
+  animation-name: fadeInUp;
+}
+
+@-webkit-keyframes fadeInUpBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 2000px, 0);
+    transform: translate3d(0, 2000px, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes fadeInUpBig {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 2000px, 0);
+    transform: translate3d(0, 2000px, 0);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.fadeInUpBig {
+  -webkit-animation-name: fadeInUpBig;
+  animation-name: fadeInUpBig;
+}
+
+@-webkit-keyframes fadeOut {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+  }
+}
+
+@keyframes fadeOut {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+  }
+}
+
+.fadeOut {
+  -webkit-animation-name: fadeOut;
+  animation-name: fadeOut;
+}
+
+@-webkit-keyframes fadeOutDown {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+  }
+}
+
+@keyframes fadeOutDown {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+  }
+}
+
+.fadeOutDown {
+  -webkit-animation-name: fadeOutDown;
+  animation-name: fadeOutDown;
+}
+
+@-webkit-keyframes fadeOutDownBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 2000px, 0);
+    transform: translate3d(0, 2000px, 0);
+  }
+}
+
+@keyframes fadeOutDownBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, 2000px, 0);
+    transform: translate3d(0, 2000px, 0);
+  }
+}
+
+.fadeOutDownBig {
+  -webkit-animation-name: fadeOutDownBig;
+  animation-name: fadeOutDownBig;
+}
+
+@-webkit-keyframes fadeOutLeft {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+  }
+}
+
+@keyframes fadeOutLeft {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+  }
+}
+
+.fadeOutLeft {
+  -webkit-animation-name: fadeOutLeft;
+  animation-name: fadeOutLeft;
+}
+
+@-webkit-keyframes fadeOutLeftBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(-2000px, 0, 0);
+    transform: translate3d(-2000px, 0, 0);
+  }
+}
+
+@keyframes fadeOutLeftBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(-2000px, 0, 0);
+    transform: translate3d(-2000px, 0, 0);
+  }
+}
+
+.fadeOutLeftBig {
+  -webkit-animation-name: fadeOutLeftBig;
+  animation-name: fadeOutLeftBig;
+}
+
+@-webkit-keyframes fadeOutRight {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+  }
+}
+
+@keyframes fadeOutRight {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+  }
+}
+
+.fadeOutRight {
+  -webkit-animation-name: fadeOutRight;
+  animation-name: fadeOutRight;
+}
+
+@-webkit-keyframes fadeOutRightBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(2000px, 0, 0);
+    transform: translate3d(2000px, 0, 0);
+  }
+}
+
+@keyframes fadeOutRightBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(2000px, 0, 0);
+    transform: translate3d(2000px, 0, 0);
+  }
+}
+
+.fadeOutRightBig {
+  -webkit-animation-name: fadeOutRightBig;
+  animation-name: fadeOutRightBig;
+}
+
+@-webkit-keyframes fadeOutUp {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+  }
+}
+
+@keyframes fadeOutUp {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+  }
+}
+
+.fadeOutUp {
+  -webkit-animation-name: fadeOutUp;
+  animation-name: fadeOutUp;
+}
+
+@-webkit-keyframes fadeOutUpBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -2000px, 0);
+    transform: translate3d(0, -2000px, 0);
+  }
+}
+
+@keyframes fadeOutUpBig {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(0, -2000px, 0);
+    transform: translate3d(0, -2000px, 0);
+  }
+}
+
+.fadeOutUpBig {
+  -webkit-animation-name: fadeOutUpBig;
+  animation-name: fadeOutUpBig;
+}
+
+@-webkit-keyframes flip {
+  from {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, -360deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
+    -webkit-animation-timing-function: ease-out;
+    animation-timing-function: ease-out;
+  }
+
+  40% {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -190deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -190deg);
+    -webkit-animation-timing-function: ease-out;
+    animation-timing-function: ease-out;
+  }
+
+  50% {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -170deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -170deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  80% {
+    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, 0deg);
+    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, 0deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  to {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, 0deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+}
+
+@keyframes flip {
+  from {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, -360deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
+    -webkit-animation-timing-function: ease-out;
+    animation-timing-function: ease-out;
+  }
+
+  40% {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -190deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -190deg);
+    -webkit-animation-timing-function: ease-out;
+    animation-timing-function: ease-out;
+  }
+
+  50% {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -170deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
+      rotate3d(0, 1, 0, -170deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  80% {
+    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, 0deg);
+    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, 0deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  to {
+    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
+      rotate3d(0, 1, 0, 0deg);
+    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+}
+
+.animated.flip {
+  -webkit-backface-visibility: visible;
+  backface-visibility: visible;
+  -webkit-animation-name: flip;
+  animation-name: flip;
+}
+
+@-webkit-keyframes flipInX {
+  from {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+    opacity: 0;
+  }
+
+  40% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  60% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
+    opacity: 1;
+  }
+
+  80% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
+  }
+
+  to {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+}
+
+@keyframes flipInX {
+  from {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+    opacity: 0;
+  }
+
+  40% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  60% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
+    opacity: 1;
+  }
+
+  80% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
+  }
+
+  to {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+}
+
+.flipInX {
+  -webkit-backface-visibility: visible !important;
+  backface-visibility: visible !important;
+  -webkit-animation-name: flipInX;
+  animation-name: flipInX;
+}
+
+@-webkit-keyframes flipInY {
+  from {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+    opacity: 0;
+  }
+
+  40% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  60% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
+    opacity: 1;
+  }
+
+  80% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
+  }
+
+  to {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+}
+
+@keyframes flipInY {
+  from {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+    opacity: 0;
+  }
+
+  40% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
+    -webkit-animation-timing-function: ease-in;
+    animation-timing-function: ease-in;
+  }
+
+  60% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
+    opacity: 1;
+  }
+
+  80% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
+  }
+
+  to {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+}
+
+.flipInY {
+  -webkit-backface-visibility: visible !important;
+  backface-visibility: visible !important;
+  -webkit-animation-name: flipInY;
+  animation-name: flipInY;
+}
+
+@-webkit-keyframes flipOutX {
+  from {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+
+  30% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    opacity: 0;
+  }
+}
+
+@keyframes flipOutX {
+  from {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+
+  30% {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
+    opacity: 0;
+  }
+}
+
+.flipOutX {
+  -webkit-animation-duration: 0.75s;
+  animation-duration: 0.75s;
+  -webkit-animation-name: flipOutX;
+  animation-name: flipOutX;
+  -webkit-backface-visibility: visible !important;
+  backface-visibility: visible !important;
+}
+
+@-webkit-keyframes flipOutY {
+  from {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+
+  30% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    opacity: 0;
+  }
+}
+
+@keyframes flipOutY {
+  from {
+    -webkit-transform: perspective(400px);
+    transform: perspective(400px);
+  }
+
+  30% {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
+    opacity: 0;
+  }
+}
+
+.flipOutY {
+  -webkit-animation-duration: 0.75s;
+  animation-duration: 0.75s;
+  -webkit-backface-visibility: visible !important;
+  backface-visibility: visible !important;
+  -webkit-animation-name: flipOutY;
+  animation-name: flipOutY;
+}
+
+@-webkit-keyframes lightSpeedIn {
+  from {
+    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
+    transform: translate3d(100%, 0, 0) skewX(-30deg);
+    opacity: 0;
+  }
+
+  60% {
+    -webkit-transform: skewX(20deg);
+    transform: skewX(20deg);
+    opacity: 1;
+  }
+
+  80% {
+    -webkit-transform: skewX(-5deg);
+    transform: skewX(-5deg);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes lightSpeedIn {
+  from {
+    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
+    transform: translate3d(100%, 0, 0) skewX(-30deg);
+    opacity: 0;
+  }
+
+  60% {
+    -webkit-transform: skewX(20deg);
+    transform: skewX(20deg);
+    opacity: 1;
+  }
+
+  80% {
+    -webkit-transform: skewX(-5deg);
+    transform: skewX(-5deg);
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.lightSpeedIn {
+  -webkit-animation-name: lightSpeedIn;
+  animation-name: lightSpeedIn;
+  -webkit-animation-timing-function: ease-out;
+  animation-timing-function: ease-out;
+}
+
+@-webkit-keyframes lightSpeedOut {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
+    transform: translate3d(100%, 0, 0) skewX(30deg);
+    opacity: 0;
+  }
+}
+
+@keyframes lightSpeedOut {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
+    transform: translate3d(100%, 0, 0) skewX(30deg);
+    opacity: 0;
+  }
+}
+
+.lightSpeedOut {
+  -webkit-animation-name: lightSpeedOut;
+  animation-name: lightSpeedOut;
+  -webkit-animation-timing-function: ease-in;
+  animation-timing-function: ease-in;
+}
+
+@-webkit-keyframes rotateIn {
+  from {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    -webkit-transform: rotate3d(0, 0, 1, -200deg);
+    transform: rotate3d(0, 0, 1, -200deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+@keyframes rotateIn {
+  from {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    -webkit-transform: rotate3d(0, 0, 1, -200deg);
+    transform: rotate3d(0, 0, 1, -200deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+.rotateIn {
+  -webkit-animation-name: rotateIn;
+  animation-name: rotateIn;
+}
+
+@-webkit-keyframes rotateInDownLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -45deg);
+    transform: rotate3d(0, 0, 1, -45deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+@keyframes rotateInDownLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -45deg);
+    transform: rotate3d(0, 0, 1, -45deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+.rotateInDownLeft {
+  -webkit-animation-name: rotateInDownLeft;
+  animation-name: rotateInDownLeft;
+}
+
+@-webkit-keyframes rotateInDownRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 45deg);
+    transform: rotate3d(0, 0, 1, 45deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+@keyframes rotateInDownRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 45deg);
+    transform: rotate3d(0, 0, 1, 45deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+.rotateInDownRight {
+  -webkit-animation-name: rotateInDownRight;
+  animation-name: rotateInDownRight;
+}
+
+@-webkit-keyframes rotateInUpLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 45deg);
+    transform: rotate3d(0, 0, 1, 45deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+@keyframes rotateInUpLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 45deg);
+    transform: rotate3d(0, 0, 1, 45deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+.rotateInUpLeft {
+  -webkit-animation-name: rotateInUpLeft;
+  animation-name: rotateInUpLeft;
+}
+
+@-webkit-keyframes rotateInUpRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -90deg);
+    transform: rotate3d(0, 0, 1, -90deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+@keyframes rotateInUpRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -90deg);
+    transform: rotate3d(0, 0, 1, -90deg);
+    opacity: 0;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+    opacity: 1;
+  }
+}
+
+.rotateInUpRight {
+  -webkit-animation-name: rotateInUpRight;
+  animation-name: rotateInUpRight;
+}
+
+@-webkit-keyframes rotateOut {
+  from {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    -webkit-transform: rotate3d(0, 0, 1, 200deg);
+    transform: rotate3d(0, 0, 1, 200deg);
+    opacity: 0;
+  }
+}
+
+@keyframes rotateOut {
+  from {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: center;
+    transform-origin: center;
+    -webkit-transform: rotate3d(0, 0, 1, 200deg);
+    transform: rotate3d(0, 0, 1, 200deg);
+    opacity: 0;
+  }
+}
+
+.rotateOut {
+  -webkit-animation-name: rotateOut;
+  animation-name: rotateOut;
+}
+
+@-webkit-keyframes rotateOutDownLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 45deg);
+    transform: rotate3d(0, 0, 1, 45deg);
+    opacity: 0;
+  }
+}
+
+@keyframes rotateOutDownLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 45deg);
+    transform: rotate3d(0, 0, 1, 45deg);
+    opacity: 0;
+  }
+}
+
+.rotateOutDownLeft {
+  -webkit-animation-name: rotateOutDownLeft;
+  animation-name: rotateOutDownLeft;
+}
+
+@-webkit-keyframes rotateOutDownRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -45deg);
+    transform: rotate3d(0, 0, 1, -45deg);
+    opacity: 0;
+  }
+}
+
+@keyframes rotateOutDownRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -45deg);
+    transform: rotate3d(0, 0, 1, -45deg);
+    opacity: 0;
+  }
+}
+
+.rotateOutDownRight {
+  -webkit-animation-name: rotateOutDownRight;
+  animation-name: rotateOutDownRight;
+}
+
+@-webkit-keyframes rotateOutUpLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -45deg);
+    transform: rotate3d(0, 0, 1, -45deg);
+    opacity: 0;
+  }
+}
+
+@keyframes rotateOutUpLeft {
+  from {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: left bottom;
+    transform-origin: left bottom;
+    -webkit-transform: rotate3d(0, 0, 1, -45deg);
+    transform: rotate3d(0, 0, 1, -45deg);
+    opacity: 0;
+  }
+}
+
+.rotateOutUpLeft {
+  -webkit-animation-name: rotateOutUpLeft;
+  animation-name: rotateOutUpLeft;
+}
+
+@-webkit-keyframes rotateOutUpRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 90deg);
+    transform: rotate3d(0, 0, 1, 90deg);
+    opacity: 0;
+  }
+}
+
+@keyframes rotateOutUpRight {
+  from {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform-origin: right bottom;
+    transform-origin: right bottom;
+    -webkit-transform: rotate3d(0, 0, 1, 90deg);
+    transform: rotate3d(0, 0, 1, 90deg);
+    opacity: 0;
+  }
+}
+
+.rotateOutUpRight {
+  -webkit-animation-name: rotateOutUpRight;
+  animation-name: rotateOutUpRight;
+}
+
+@-webkit-keyframes hinge {
+  0% {
+    -webkit-transform-origin: top left;
+    transform-origin: top left;
+    -webkit-animation-timing-function: ease-in-out;
+    animation-timing-function: ease-in-out;
+  }
+
+  20%,
+  60% {
+    -webkit-transform: rotate3d(0, 0, 1, 80deg);
+    transform: rotate3d(0, 0, 1, 80deg);
+    -webkit-transform-origin: top left;
+    transform-origin: top left;
+    -webkit-animation-timing-function: ease-in-out;
+    animation-timing-function: ease-in-out;
+  }
+
+  40%,
+  80% {
+    -webkit-transform: rotate3d(0, 0, 1, 60deg);
+    transform: rotate3d(0, 0, 1, 60deg);
+    -webkit-transform-origin: top left;
+    transform-origin: top left;
+    -webkit-animation-timing-function: ease-in-out;
+    animation-timing-function: ease-in-out;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 700px, 0);
+    transform: translate3d(0, 700px, 0);
+    opacity: 0;
+  }
+}
+
+@keyframes hinge {
+  0% {
+    -webkit-transform-origin: top left;
+    transform-origin: top left;
+    -webkit-animation-timing-function: ease-in-out;
+    animation-timing-function: ease-in-out;
+  }
+
+  20%,
+  60% {
+    -webkit-transform: rotate3d(0, 0, 1, 80deg);
+    transform: rotate3d(0, 0, 1, 80deg);
+    -webkit-transform-origin: top left;
+    transform-origin: top left;
+    -webkit-animation-timing-function: ease-in-out;
+    animation-timing-function: ease-in-out;
+  }
+
+  40%,
+  80% {
+    -webkit-transform: rotate3d(0, 0, 1, 60deg);
+    transform: rotate3d(0, 0, 1, 60deg);
+    -webkit-transform-origin: top left;
+    transform-origin: top left;
+    -webkit-animation-timing-function: ease-in-out;
+    animation-timing-function: ease-in-out;
+    opacity: 1;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 700px, 0);
+    transform: translate3d(0, 700px, 0);
+    opacity: 0;
+  }
+}
+
+.hinge {
+  -webkit-animation-duration: 2s;
+  animation-duration: 2s;
+  -webkit-animation-name: hinge;
+  animation-name: hinge;
+}
+
+@-webkit-keyframes jackInTheBox {
+  from {
+    opacity: 0;
+    -webkit-transform: scale(0.1) rotate(30deg);
+    transform: scale(0.1) rotate(30deg);
+    -webkit-transform-origin: center bottom;
+    transform-origin: center bottom;
+  }
+
+  50% {
+    -webkit-transform: rotate(-10deg);
+    transform: rotate(-10deg);
+  }
+
+  70% {
+    -webkit-transform: rotate(3deg);
+    transform: rotate(3deg);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+}
+
+@keyframes jackInTheBox {
+  from {
+    opacity: 0;
+    -webkit-transform: scale(0.1) rotate(30deg);
+    transform: scale(0.1) rotate(30deg);
+    -webkit-transform-origin: center bottom;
+    transform-origin: center bottom;
+  }
+
+  50% {
+    -webkit-transform: rotate(-10deg);
+    transform: rotate(-10deg);
+  }
+
+  70% {
+    -webkit-transform: rotate(3deg);
+    transform: rotate(3deg);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: scale(1);
+    transform: scale(1);
+  }
+}
+
+.jackInTheBox {
+  -webkit-animation-name: jackInTheBox;
+  animation-name: jackInTheBox;
+}
+
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes rollIn {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
+    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes rollIn {
+  from {
+    opacity: 0;
+    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
+    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
+  }
+
+  to {
+    opacity: 1;
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.rollIn {
+  -webkit-animation-name: rollIn;
+  animation-name: rollIn;
+}
+
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes rollOut {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
+    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
+  }
+}
+
+@keyframes rollOut {
+  from {
+    opacity: 1;
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
+    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
+  }
+}
+
+.rollOut {
+  -webkit-animation-name: rollOut;
+  animation-name: rollOut;
+}
+
+@-webkit-keyframes zoomIn {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+
+  50% {
+    opacity: 1;
+  }
+}
+
+@keyframes zoomIn {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+
+  50% {
+    opacity: 1;
+  }
+}
+
+.zoomIn {
+  -webkit-animation-name: zoomIn;
+  animation-name: zoomIn;
+}
+
+@-webkit-keyframes zoomInDown {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+@keyframes zoomInDown {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+.zoomInDown {
+  -webkit-animation-name: zoomInDown;
+  animation-name: zoomInDown;
+}
+
+@-webkit-keyframes zoomInLeft {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+@keyframes zoomInLeft {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+.zoomInLeft {
+  -webkit-animation-name: zoomInLeft;
+  animation-name: zoomInLeft;
+}
+
+@-webkit-keyframes zoomInRight {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+@keyframes zoomInRight {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+.zoomInRight {
+  -webkit-animation-name: zoomInRight;
+  animation-name: zoomInRight;
+}
+
+@-webkit-keyframes zoomInUp {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+@keyframes zoomInUp {
+  from {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  60% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+.zoomInUp {
+  -webkit-animation-name: zoomInUp;
+  animation-name: zoomInUp;
+}
+
+@-webkit-keyframes zoomOut {
+  from {
+    opacity: 1;
+  }
+
+  50% {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+
+  to {
+    opacity: 0;
+  }
+}
+
+@keyframes zoomOut {
+  from {
+    opacity: 1;
+  }
+
+  50% {
+    opacity: 0;
+    -webkit-transform: scale3d(0.3, 0.3, 0.3);
+    transform: scale3d(0.3, 0.3, 0.3);
+  }
+
+  to {
+    opacity: 0;
+  }
+}
+
+.zoomOut {
+  -webkit-animation-name: zoomOut;
+  animation-name: zoomOut;
+}
+
+@-webkit-keyframes zoomOutDown {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
+    -webkit-transform-origin: center bottom;
+    transform-origin: center bottom;
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+@keyframes zoomOutDown {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
+    -webkit-transform-origin: center bottom;
+    transform-origin: center bottom;
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+.zoomOutDown {
+  -webkit-animation-name: zoomOutDown;
+  animation-name: zoomOutDown;
+}
+
+@-webkit-keyframes zoomOutLeft {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
+    transform: scale(0.1) translate3d(-2000px, 0, 0);
+    -webkit-transform-origin: left center;
+    transform-origin: left center;
+  }
+}
+
+@keyframes zoomOutLeft {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
+    transform: scale(0.1) translate3d(-2000px, 0, 0);
+    -webkit-transform-origin: left center;
+    transform-origin: left center;
+  }
+}
+
+.zoomOutLeft {
+  -webkit-animation-name: zoomOutLeft;
+  animation-name: zoomOutLeft;
+}
+
+@-webkit-keyframes zoomOutRight {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
+    transform: scale(0.1) translate3d(2000px, 0, 0);
+    -webkit-transform-origin: right center;
+    transform-origin: right center;
+  }
+}
+
+@keyframes zoomOutRight {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
+    transform: scale(0.1) translate3d(2000px, 0, 0);
+    -webkit-transform-origin: right center;
+    transform-origin: right center;
+  }
+}
+
+.zoomOutRight {
+  -webkit-animation-name: zoomOutRight;
+  animation-name: zoomOutRight;
+}
+
+@-webkit-keyframes zoomOutUp {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
+    -webkit-transform-origin: center bottom;
+    transform-origin: center bottom;
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+@keyframes zoomOutUp {
+  40% {
+    opacity: 1;
+    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
+    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
+  }
+
+  to {
+    opacity: 0;
+    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
+    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
+    -webkit-transform-origin: center bottom;
+    transform-origin: center bottom;
+    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
+  }
+}
+
+.zoomOutUp {
+  -webkit-animation-name: zoomOutUp;
+  animation-name: zoomOutUp;
+}
+
+@-webkit-keyframes slideInDown {
+  from {
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes slideInDown {
+  from {
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.slideInDown {
+  -webkit-animation-name: slideInDown;
+  animation-name: slideInDown;
+}
+
+@-webkit-keyframes slideInLeft {
+  from {
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes slideInLeft {
+  from {
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.slideInLeft {
+  -webkit-animation-name: slideInLeft;
+  animation-name: slideInLeft;
+}
+
+@-webkit-keyframes slideInRight {
+  from {
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes slideInRight {
+  from {
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.slideInRight {
+  -webkit-animation-name: slideInRight;
+  animation-name: slideInRight;
+}
+
+@-webkit-keyframes slideInUp {
+  from {
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+@keyframes slideInUp {
+  from {
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+    visibility: visible;
+  }
+
+  to {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+}
+
+.slideInUp {
+  -webkit-animation-name: slideInUp;
+  animation-name: slideInUp;
+}
+
+@-webkit-keyframes slideOutDown {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+  }
+}
+
+@keyframes slideOutDown {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(0, 100%, 0);
+    transform: translate3d(0, 100%, 0);
+  }
+}
+
+.slideOutDown {
+  -webkit-animation-name: slideOutDown;
+  animation-name: slideOutDown;
+}
+
+@-webkit-keyframes slideOutLeft {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+  }
+}
+
+@keyframes slideOutLeft {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(-100%, 0, 0);
+    transform: translate3d(-100%, 0, 0);
+  }
+}
+
+.slideOutLeft {
+  -webkit-animation-name: slideOutLeft;
+  animation-name: slideOutLeft;
+}
+
+@-webkit-keyframes slideOutRight {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+  }
+}
+
+@keyframes slideOutRight {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(100%, 0, 0);
+    transform: translate3d(100%, 0, 0);
+  }
+}
+
+.slideOutRight {
+  -webkit-animation-name: slideOutRight;
+  animation-name: slideOutRight;
+}
+
+@-webkit-keyframes slideOutUp {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+  }
+}
+
+@keyframes slideOutUp {
+  from {
+    -webkit-transform: translate3d(0, 0, 0);
+    transform: translate3d(0, 0, 0);
+  }
+
+  to {
+    visibility: hidden;
+    -webkit-transform: translate3d(0, -100%, 0);
+    transform: translate3d(0, -100%, 0);
+  }
+}
+
+.slideOutUp {
+  -webkit-animation-name: slideOutUp;
+  animation-name: slideOutUp;
+}
+
+.animated {
+  -webkit-animation-duration: 1s;
+  animation-duration: 1s;
+  -webkit-animation-fill-mode: both;
+  animation-fill-mode: both;
+}
+
+.animated.infinite {
+  -webkit-animation-iteration-count: infinite;
+  animation-iteration-count: infinite;
+}
+
+.animated.delay-1s {
+  -webkit-animation-delay: 1s;
+  animation-delay: 1s;
+}
+
+.animated.delay-2s {
+  -webkit-animation-delay: 2s;
+  animation-delay: 2s;
+}
+
+.animated.delay-3s {
+  -webkit-animation-delay: 3s;
+  animation-delay: 3s;
+}
+
+.animated.delay-4s {
+  -webkit-animation-delay: 4s;
+  animation-delay: 4s;
+}
+
+.animated.delay-5s {
+  -webkit-animation-delay: 5s;
+  animation-delay: 5s;
+}
+
+.animated.fast {
+  -webkit-animation-duration: 800ms;
+  animation-duration: 800ms;
+}
+
+.animated.faster {
+  -webkit-animation-duration: 500ms;
+  animation-duration: 500ms;
+}
+
+.animated.slow {
+  -webkit-animation-duration: 2s;
+  animation-duration: 2s;
+}
+
+.animated.slower {
+  -webkit-animation-duration: 3s;
+  animation-duration: 3s;
+}
+
+@media (print), (prefers-reduced-motion) {
+  .animated {
+    -webkit-animation: unset !important;
+    animation: unset !important;
+    -webkit-transition: none !important;
+    transition: none !important;
+  }
+}

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 315 - 126
web/css/styles.min.css


+ 31 - 31
web/inc/i18n/en.php

@@ -14,16 +14,16 @@ $LANG['en'] = array(
     'Services'  => 'Services',
     'Firewall' => 'Firewall',
     'Updates'  => 'Updates',
-    'Log in'  => 'Login',
-    'Log out'  => 'Logout',
+    'Log in'  => 'Log in',
+    'Log out'  => 'Log out',
 
-    'USER'  => 'USER',
+    'USER'  => 'USERS',
     'WEB'  => 'WEB',
     'DNS'  => 'DNS',
     'MAIL'  => 'MAIL',
-    'DB'  => 'DB',
-    'CRON'  => 'CRON',
-    'BACKUP'  => 'BACKUP',
+    'DB'  => 'SQL',
+    'CRON'  => 'TASKS',
+    'BACKUP'  => 'BACKUPS',
 
     'LOGIN'  => 'LOGIN',
     'RESET PASSWORD'  => 'RESET PASSWORD',
@@ -44,13 +44,13 @@ $LANG['en'] = array(
 
     'Add User'  => 'Add User',
     'Add Domain'  => 'Add Domain',
-    'Add Web Domain'  => 'Add Website',
+    'Add Web Domain'  => 'Add Web Domain',
     'Add DNS Domain'  => 'Add DNS Zone',
     'Add DNS Record'  => 'Add DNS Record',
     'Add Mail Domain'  => 'Add Mail Domain',
     'Add Mail Account'  => 'Add Mail Account',
     'Add Database'  => 'Add Database',
-    'Add Cron Job'  => 'Add Cron Job',
+    'Add Cron Job'  => 'Add Task',
     'Create Backup'  => 'Create Backup',
     'Configure'  => 'Configure',
     'Restore All'  => 'Restore All',
@@ -59,7 +59,7 @@ $LANG['en'] = array(
     'Add Rule' => 'Add Rule',
     'Ban IP Address' => 'Ban IP Address',
     'Search'  => 'Search',
-    'Add one more FTP Account' => 'Add another FTP Account',
+    'Add one more FTP Account' => 'Add FTP Account',
     'Overall Statistics'  => 'Overall Statistics',
     'Daily'  => 'Daily',
     'Weekly'  => 'Weekly',
@@ -73,11 +73,11 @@ $LANG['en'] = array(
     'toggle all'  => 'Toggle all',
     'apply to selected'  => 'Apply to selected',
     'rebuild'  => 'Rebuild',
-    'rebuild web'  => 'Rebuild Websites',
+    'rebuild web'  => 'Rebuild Web Domains',
     'rebuild dns'  => 'Rebuild DNS Zones',
     'rebuild mail'  => 'Rebuild Mail Accounts',
     'rebuild db'  => 'Rebuild Databases',
-    'rebuild cron'  => 'Rebuild Cron Jobs',
+    'rebuild cron'  => 'Rebuild Scheduled Tasks',
     'update counters'  => 'Refresh Usage Counters',
     'suspend'  => 'Suspend',
     'unsuspend'  => 'Unsuspend',
@@ -108,7 +108,7 @@ $LANG['en'] = array(
     'enable autoupdate' => 'Enable Automatic Updates',
     'disable autoupdate' => 'Disable Automatic Updates',
     'turn on notifications' => 'Enable Notifications',
-    'turn off notifications' => 'Disable notifications',
+    'turn off notifications' => 'Disable Notifications',
     'configure' => 'Configure',
 
     'Adding User'  => 'Add User',
@@ -124,8 +124,8 @@ $LANG['en'] = array(
     'Adding Mail Account'  => 'Add Mail Account',
     'Editing Mail Account'  => 'Edit Mail Account',
     'Adding database'  => 'Add Database',
-    'Editing Cron Job'  => 'Edit Cron Job',
-    'Adding Cron Job'  => 'Add Cron Job',
+    'Editing Cron Job'  => 'Edit Task',
+    'Adding Cron Job'  => 'Add Task',
     'Editing Database'  => 'Edit Database',
     'Adding Package'  => 'Add Package',
     'Editing Package'  => 'Edit Package',
@@ -173,8 +173,8 @@ $LANG['en'] = array(
     'Backend Template'  => 'Backend Template',
     'Proxy Template' =>'Proxy Template',
     'DNS Template'  => 'DNS Template',
-    'Web Domains'  => 'Websites',
-    'SSL Domains'  => 'SSL Websites',
+    'Web Domains'  => 'Web Domains',
+    'SSL Domains'  => 'SSL Web Domains',
     'Web Aliases'  => 'Web Aliases',
     'per domain'  => 'Per Domain',
     'DNS Domains'  => 'DNS Zones',
@@ -183,7 +183,7 @@ $LANG['en'] = array(
     'Name Servers'  => 'Name Servers',
     'Mail Domains'  => 'Mail Domains',
     'Mail Accounts'  => 'Mail Accounts',
-    'Cron Jobs'  => 'Cron Jobs',
+    'Cron Jobs'  => 'Tasks',
     'SSH Access'  => 'SSH Access',
     'IP Address'  => 'IP Address',
     'IP Addresses'  => 'IP Addresses',
@@ -199,7 +199,7 @@ $LANG['en'] = array(
     'Proxy Support'  => 'Proxy Support',
     'Proxy Extensions'  => 'Proxy Extensions',
     'Web Statistics'  => 'Web Statistics',
-    'Additional FTP Account'  => 'Additional FTP Account',
+    'Additional FTP Account'  => 'Additional FTP Account(s)',
     'Path'  => 'Path',
     'SOA'  => 'SOA',
     'TTL'  => 'TTL',
@@ -207,9 +207,9 @@ $LANG['en'] = array(
     'Records'  => 'Records',
     'Serial'  => 'Serial',
     'Catchall email'  => 'Catch-All Email',
-    'AntiVirus Support'  => 'Antivirus',
+    'AntiVirus Support'  => 'Anti-Virus',
     'AntiSpam Support'  => 'Spam Filter',
-    'DKIM Support'  => 'Enable DKIM',
+    'DKIM Support'  => 'DKIM',
     'Accounts'  => 'Accounts',
     'Quota'  => 'Quota',
     'Autoreply'  => 'Auto Reply',
@@ -265,7 +265,7 @@ $LANG['en'] = array(
     'email antispam'  => 'Spam Filter',
     'database server'  => 'Database Server',
     'ftp server'  => 'FTP Server',
-    'job scheduler'  => 'Cron',
+    'job scheduler'  => 'Task Scheduler',
     'firewall'  => 'Firewall',
     'brute-force monitor'  => 'Failed Access Monitor',
     'CPU'  => 'CPU',
@@ -285,12 +285,12 @@ $LANG['en'] = array(
     'Language'  => 'Language',
     'First Name'  => 'First Name',
     'Last Name'  => 'Last Name',
-    'Send login credentials to email address'  => 'Send login credentials to:',
+    'Send login credentials to email address'  => 'Email login credentials to:',
     'Default Template'  => 'Default Template',
     'Default Name Servers'  => 'Default Name Servers',
     'Domain'  => 'Domain',
-    'DNS Support'  => 'DNS Support',
-    'Mail Support'  => 'Mail Support',
+    'DNS Support'  => 'Create DNS zone',
+    'Mail Support'  => 'Enable email services',
     'Advanced options'  => 'Advanced Options',
     'Basic options'  => 'Basic Options',
     'Aliases'  => 'Aliases',
@@ -304,7 +304,7 @@ $LANG['en'] = array(
     'Statistics Auth'  => 'Statistics Authorisation',
     'Account'  => 'Account',
     'Prefix will be automaticaly added to username'  => 'Prefix %s will be automatically added to username',
-    'Send FTP credentials to email'  => 'Send FTP login credentials to:',
+    'Send FTP credentials to email'  => 'Email FTP login credentials to:',
     'Expiration Date'  => 'Expiration Date',
     'YYYY-MM-DD'  => 'YYYY-MM-DD',
     'Name servers'  => 'Name Servers',
@@ -316,7 +316,7 @@ $LANG['en'] = array(
     'Message'  => 'Message',
     'use local-part'  => 'Use Local-Part',
     'one or more email addresses'  => 'One or more email addresses',
-    'Prefix will be automaticaly added to database name and database user'  => 'Prefix %s will be automatically added to the database name and database user',
+    'Prefix will be automaticaly added to database name and database user'  => 'Prefix %s will be automatically added to the database name and user',
     'Database'  => 'Database',
     'Type'  => 'Type',
     'Minute'  => 'Minute',
@@ -329,7 +329,7 @@ $LANG['en'] = array(
     'Assigned domain'  => 'Assigned Domain',
     'NAT IP association' => 'NAT IP Association',
     'shell'  => 'Shell',
-    'web domains'  => 'Websites',
+    'web domains'  => 'Web Domains',
     'web aliases'  => 'Web Aliases',
     'dns records'  => 'DNS Records',
     'mail domains'  => 'Mail Domains',
@@ -397,9 +397,9 @@ $LANG['en'] = array(
     'SSH' => 'SSH',
     'FTP' => 'FTP',
     'HESTIA' => 'Hestia',
-    'Add one more Name Server' => 'Add another Name Server',
+    'Add one more Name Server' => 'Add Name Server',
 
-    'web domain' => 'Website',
+    'web domain' => 'Web Domain',
     'dns domain' => 'DNS Zone',
     'dns record' => 'DNS Record',
     'mail domain' => 'Mail Domain',
@@ -416,8 +416,8 @@ $LANG['en'] = array(
     '%s domains'  => '%s domains',
     '1 record'  => '1 record',
     '%s records'  => '%s records',
-    '1 mail account'  => '1 mailbox',
-    '%s mail accounts'  => '%s mailboxes',
+    '1 mail account'  => '1 mail account',
+    '%s mail accounts'  => '%s mail accounts',
     '1 database'  => '1 database',
     '%s databases'  => '%s databases',
     '1 cron job'  => '1 cron job',

+ 1 - 1
web/templates/admin/add_cron.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_db.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_dns.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_dns_rec.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_firewall.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_firewall_banlist.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_ip.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_mail.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_mail_acc.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_package.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 1 - 1
web/templates/admin/add_user.html

@@ -20,7 +20,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
         <?php
           $back = $_SESSION['back'];
           if (empty($back)) {

+ 2 - 2
web/templates/admin/add_web.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {
@@ -83,7 +83,7 @@
                         </tr><?php } ?>
                         <tr>
                             <td class="step-top vst-text" style="/*padding: 32px 0 20px 0;*/">
-                                <a href="javascript:elementHideShow('advtable');" class="vst-advanced"><?php print __('Advanced options');?></a>
+                                <a href="javascript:elementHideShow('advtable');" class="vst-advanced"><?php print __('Advanced options');?>&nbsp;<i class="fas fa-arrow-circle-right"></i></a>
                             </td>
                         </tr>
                     </table>

+ 1 - 1
web/templates/admin/edit_backup_exclusions.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center edit">
+    <div class="l-center edit animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_cron.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_db.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_dns.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_dns_rec.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_firewall.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_ip.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_mail.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_mail_acc.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_package.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = "location.href='/list/package/'";
       ?>

+ 1 - 1
web/templates/admin/edit_server.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_bind9.html

@@ -27,7 +27,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_dovecot.html

@@ -26,7 +26,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_httpd.html

@@ -27,7 +27,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_mysql.html

@@ -26,7 +26,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_nginx.html

@@ -27,7 +27,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_pgsql.html

@@ -26,7 +26,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_php.html

@@ -27,7 +27,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_server_service.html

@@ -26,7 +26,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_user.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/edit_web.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/generate_ssl.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 3 - 3
web/templates/admin/list_backup.html

@@ -40,7 +40,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
           ++$i;
@@ -156,9 +156,9 @@
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 archive');
+                echo __('1 backup');
               } else {
-                echo __('%s archives',$i);
+                echo __('%s backups',$i);
               }
             ?>
           </div>

+ 1 - 1
web/templates/admin/list_backup_detail.html

@@ -38,7 +38,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
     <div class="l-unit header">
       <div class="subtitle"><?=__('Listing')?>  <?=htmlentities($_GET['backup'])?></div>
     </div>

+ 1 - 1
web/templates/admin/list_backup_exclusions.html

@@ -37,7 +37,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
       ?>

+ 3 - 3
web/templates/admin/list_cron.html

@@ -60,7 +60,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
           ++$i;
@@ -163,9 +163,9 @@ sort-star="<? if($_SESSION['favourites']['CRON'][$key] == 1) echo '1'; else echo
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 cron job');
+                echo __('1 task');
               } else {
-                echo __('%s cron jobs',$i);
+                echo __('%s tasks',$i);
               }
             ?>
           </div>

+ 3 - 3
web/templates/admin/list_db.html

@@ -81,7 +81,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         list($http_host, $port) = explode(':', $_SERVER["HTTP_HOST"].":");
         foreach ($data as $key => $value) {
@@ -235,9 +235,9 @@ sort-user="<?=$data[$key]['DBUSER']?>" sort-server="<?=$data[$key]['HOST']?>" so
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 database');
+                echo __('1 SQL database');
               } else {
-                echo __('%s databases',$i);
+                echo __('%s SQL databases',$i);
               }
             ?>
           </div>

+ 3 - 3
web/templates/admin/list_dns.html

@@ -50,7 +50,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
           ++$i;
@@ -212,9 +212,9 @@ sort-expire="<?=strtotime($data[$key]['EXP'])?>" sort-records="<?=(int)$data[$ke
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 domain');
+                echo __('1 DNS zone');
               } else {
-                echo __('%s domains',$i);
+                echo __('%s DNS zones',$i);
               }
             ?>
           </div>

+ 19 - 4
web/templates/admin/list_dns_rec.html

@@ -43,11 +43,26 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
 
     <div class="l-unit header">
       <div class="subtitle"><?=__('Listing')?>  <?=htmlentities($_GET['domain'])?></div>
     </div>
+    
+    <div class="l-unit header">
+      <div class="l-unit__col l-unit__col--left clearfix">
+        <div class="text-center jump-small-top"></div>
+      </div>
+
+      <div class="l-unit__col l-unit__col--right step-top">
+        <div style="margin-bottom: 40px;">
+          <div class="clearfix l-unit__stat-col--left small"><b><?php print __('Record');?></b></div>
+          <div class="clearfix l-unit__stat-col--left compact"><b><?php print __('Type');?></b></div>
+          <div class="clearfix l-unit__stat-col--left compact"><b><?php print __('Priority');?></b></div>
+          <div class="clearfix l-unit__stat-col--left wide-4"><b><?php print __('IP or Value');?></b></div>
+        </div>
+      </div>
+    </div>
 
       <?php
         foreach ($data as $key => $value) {
@@ -105,7 +120,7 @@ v_unit_id="<?=$key?>" v_section="dns_rec">
             <div class="clearfix l-unit__stat-col--left small"><b><? echo substr($data[$key]['RECORD'], 0, 12); if(strlen($data[$key]['RECORD']) > 12 ) echo '...'; ?></b></div>
             <div class="clearfix l-unit__stat-col--left compact"><b><?=$data[$key]['TYPE']?></b></div>
             <div class="clearfix l-unit__stat-col--left compact"><?=$data[$key]['PRIORITY']?>&nbsp;</div>
-            <div class="clearfix l-unit__stat-col--left wide-4"><b><?=htmlspecialchars($data[$key]['VALUE'], ENT_QUOTES, 'UTF-8')?></b></div>
+            <div class="clearfix l-unit__stat-col--left wide-4"><?=htmlspecialchars($data[$key]['VALUE'], ENT_QUOTES, 'UTF-8')?></div>
           </div>
           <!-- /.l-unit__stats -->
         </div>
@@ -128,9 +143,9 @@ v_unit_id="<?=$key?>" v_section="dns_rec">
           <div class="data-count l-unit__col l-unit__col--right total clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 record');
+                echo __('1 DNS record');
               } else {
-                echo __('%s records',$i);
+                echo __('%s DNS records',$i);
               }
             ?>
           </div>

+ 19 - 4
web/templates/admin/list_firewall.html

@@ -52,8 +52,23 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
+    <div class="l-center units compact animated fadeIn">         
+          <div class="l-unit header">
+            <div class="l-unit__col l-unit__col--left clearfix">
+              <div class="text-center jump-small-top"></div>
+            </div>
+      
+            <div class="l-unit__col l-unit__col--right step-top">
+              <div style="margin-bottom: 40px;">
+                  <div class="clearfix l-unit__stat-col--left"><b><?php print __('Action');?></b></div>
+                  <div class="clearfix l-unit__stat-col--left compact"><b><?php print __('Protocol');?></b></div>
+                  <div class="clearfix l-unit__stat-col--left wide"><b><?php print __('Port');?></b></div>
+                  <div class="clearfix l-unit__stat-col--left"><b><?php print __('IP address');?></b></div>
+                  <div class="clearfix l-unit__stat-col--left wide-2"><b><?php print __('Comment');?></b></div>   
+              </div>
+            </div>
+          </div>
 
-    <div class="l-center units compact">
       <?php
         foreach ($data as $key => $value) {
           ++$i;
@@ -119,9 +134,9 @@ sort-ip="<?=str_replace('.', '', $data[$key]['IP'])?>" sort-comment="<?=$data[$k
           <div class="l-unit__stats">
             <div class="clearfix l-unit__stat-col--left"><b><?=__($data[$key]['ACTION'])?></b></div>
             <div class="clearfix l-unit__stat-col--left compact"><b><?=__($data[$key]['PROTOCOL'])?></b></div>
-            <div class="clearfix l-unit__stat-col--left wide-2"><? if(!empty($data[$key]['COMMENT'])) echo '/ ' . $data[$key]['COMMENT']; else echo "&nbsp;"; ?></div>
             <div class="clearfix l-unit__stat-col--left wide"><b><?=$data[$key]['PORT']?></b></div>
             <div class="clearfix l-unit__stat-col--left"><b><?=$data[$key]['IP']?></b></div>
+            <div class="clearfix l-unit__stat-col--left wide-2"><? if(!empty($data[$key]['COMMENT'])) echo '' . $data[$key]['COMMENT']; else echo "&nbsp;"; ?></div>
           </div>
           <!-- /.l-unit__stats -->
         </div>
@@ -144,9 +159,9 @@ sort-ip="<?=str_replace('.', '', $data[$key]['IP'])?>" sort-comment="<?=$data[$k
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 rule');
+                echo __('1 firewall rule');
               } else {
-                echo __('%s rules',$i);
+                echo __('%s firewall rules',$i);
               }
             ?>
           </div>

+ 4 - 4
web/templates/admin/list_firewall_banlist.html

@@ -38,7 +38,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
           ++$i;
@@ -103,13 +103,13 @@
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 0) {
-                echo __('There are no currently banned IP');
+                echo __('There are currently no banned IP addresses.');
               }
               if ( $i == 1) {
-                echo __('1 IP address');
+                echo __('1 banned IP address');
               }
               if ( $i > 1) {
-                echo __('%s IP addresses',$i);
+                echo __('%s banned IP addresses',$i);
               }
             ?>
           </div>

+ 1 - 1
web/templates/admin/list_ip.html

@@ -50,7 +50,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
            ++$i;

+ 2 - 2
web/templates/admin/list_log.html

@@ -21,7 +21,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
            ++$i;
@@ -78,7 +78,7 @@
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?
               if ( $i == 1) {
-                echo __('one log record');
+                echo __('1 log record');
               } else {
                 echo __('%s log records',$i);
               }

+ 3 - 3
web/templates/admin/list_mail.html

@@ -59,7 +59,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         list($http_host, $port) = explode(':', $_SERVER["HTTP_HOST"].":");
         $webmail = "http://".$http_host."/webmail/";
@@ -228,9 +228,9 @@ sort-accounts="<?=$data[$key]['ACCOUNTS']?>" sort-star="<? if($_SESSION['favouri
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 domain');
+                echo __('1 mail domain');
               } else {
-                echo __('%s domains',$i);
+                echo __('%s mail domains',$i);
               }
             ?>
           </div>

+ 1 - 1
web/templates/admin/list_mail_acc.html

@@ -58,7 +58,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <div class="l-unit header">
         <div class="subtitle"><?=__('Listing')?>  <?=htmlentities($_GET['domain'])?></div>
       </div>

+ 1 - 1
web/templates/admin/list_packages.html

@@ -45,7 +45,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
            ++$i;

+ 1 - 1
web/templates/admin/list_rrd.html

@@ -48,7 +48,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         if (empty($_GET['period'])) {
           $period='daily';

+ 1 - 1
web/templates/admin/list_search.html

@@ -32,7 +32,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
           ++$i;

+ 1 - 1
web/templates/admin/list_services.html

@@ -43,7 +43,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <div class="l-unit <? if($status == 'suspended') echo 'l-unit--suspended';?>">
         <div class="l-unit-toolbar clearfix">
           <div class="l-unit-toolbar__col l-unit-toolbar__col--left">

+ 1 - 1
web/templates/admin/list_ssl.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/admin/list_stats.html

@@ -45,7 +45,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
            ++$i;

+ 1 - 1
web/templates/admin/list_updates.html

@@ -43,7 +43,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
           ++$i;

+ 3 - 3
web/templates/admin/list_user.html

@@ -62,7 +62,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
           ++$i;
@@ -333,9 +333,9 @@ sort-bandwidth="<?=$data[$key]['U_BANDWIDTH']?>" sort-disk="<?=$data[$key]['U_DI
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 account');
+                echo __('1 user account');
               } else {
-                echo __('%s accounts',$i);
+                echo __('%s user accounts',$i);
               }
             ?>
           </div>

+ 3 - 3
web/templates/admin/list_web.html

@@ -55,7 +55,7 @@
 
 
 
-    <div class="l-center units narrow">
+    <div class="l-center units narrow animated fadeIn">
                 <?php
                     foreach ($data as $key => $value) {
                         ++$i;
@@ -348,9 +348,9 @@ sort-name="<?=$key?>"  sort-bandwidth="<?=$data[$key]['U_BANDWIDTH']?>" sort-dis
           <div class="data-count l-unit__col l-unit__col--right clearfix">
             <?php
               if ( $i == 1) {
-                echo __('1 domain');
+                echo __('1 web domain');
               } else {
-                echo __('%s domains',$i);
+                echo __('%s web domains',$i);
               }
             ?>
           </div>

+ 10 - 12
web/templates/admin/panel.html

@@ -23,9 +23,9 @@
       <!-- /.l-menu -->
       <div class="l-profile noselect">
         <a class="l-profile__notifications <? if($panel[$user]['NOTIFICATIONS'] == 'yes') echo " updates"; ?>">&nbsp;</a>
-        <a class="l-profile__username" href="/edit/user/?user=<?php echo $user; ?>"><?=$user?></a>
-        <a class="l-profile__logout" href="/logout/"> <?=__('Log out')?> </a>
-	<a class="l-profile__server"><? echo gethostname(); ?></a>
+				<a class="l-profile__server"><? echo gethostname(); ?></a>
+				<a class="l-profile__username" href="/edit/user/?user=<?php echo $user; ?>"><?=$user?></a>
+				<a class="l-profile__logout" href="/logout/"> <?=__('Log out')?> <i class="fas fa-sign-out-alt"></i></a>
       </div>
       <!-- /.l-profile -->
     </div>
@@ -34,14 +34,12 @@
 
   <!-- /.l-header -->
 
-
-
   <div class="l-content">
     <div class="l-center">
       <div class="l-stat">
         <div class="l-stat__col <?php if($TAB == 'USER' ) echo 'l-stat__col--active' ?>">
           <a href="/list/user/">
-            <div class="l-stat__col-title"><?=__('USER')?></div>
+            <div class="l-stat__col-title"><?=__('USER')?>&nbsp;&nbsp;<i class="fas fa-users"></i></div>
             <ul>
               <li><?=__('users')?>: <span><?=$panel[$user]['U_USERS']?></span></li>
               <li><?=__('spnd');?>: <span><?=$panel[$user]['SUSPENDED_USERS']?></span></li>
@@ -51,7 +49,7 @@
 		<?php if($panel[$user]['WEB_DOMAINS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'WEB' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/web/">
-	            <div class="l-stat__col-title"><?=__('WEB')?></div>
+	            <div class="l-stat__col-title"><?=__('WEB')?>&nbsp;&nbsp;<i class="fas fa-globe-americas"></i></div>
 	            <ul>
 	              <li><?=__('domains')?>: <span><?=$panel[$user]['U_WEB_DOMAINS']?></span></li>
 	              <li><?=__('aliases')?>: <span><?=$panel[$user]['U_WEB_ALIASES']?></span></li>
@@ -63,7 +61,7 @@
 		<?php if($panel[$user]['DNS_DOMAINS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'DNS' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/dns/">
-	            <div class="l-stat__col-title"><?=__('DNS')?></div>
+	            <div class="l-stat__col-title"><?=__('DNS')?>&nbsp;&nbsp;<i class="fas fa-at"></i></div>
 	            <ul>
 	              <li><?=__('zones')?>: <span><?=$panel[$user]['U_DNS_DOMAINS']?></span></li>
 	              <li><?=__('records')?>: <span><?=$panel[$user]['U_DNS_RECORDS']?></span></li>
@@ -75,7 +73,7 @@
 		<?php if($panel[$user]['MAIL_DOMAINS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'MAIL' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/mail/">
-	            <div class="l-stat__col-title"><?=__('MAIL')?></div>
+	            <div class="l-stat__col-title"><?=__('MAIL')?>&nbsp;&nbsp;<i class="fas fa-mail-bulk"></i></div>
 	            <ul>
 	              <li><?=__('domains')?>: <span><?=$panel[$user]['U_MAIL_DOMAINS']?></span></li>
 	              <li><?=__('accounts')?>: <span><?=$panel[$user]['U_MAIL_ACCOUNTS']?></span></li>
@@ -87,7 +85,7 @@
 		<?php if($panel[$user]['DATABASES'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'DB' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/db/">
-	            <div class="l-stat__col-title"><?=__('DB')?></div>
+	            <div class="l-stat__col-title"><?=__('DB')?>&nbsp;&nbsp;<i class="fas fa-database"></i></div>
 	            <ul>
 	              <li><?=__('databases')?>: <span><?=$panel[$user]['U_DATABASES']?></span></li>
 	              <li><?=__('spnd')?>: <span><?=$panel[$user]['SUSPENDED_DB']?></span></li>
@@ -98,7 +96,7 @@
 		<?php if($panel[$user]['CRON_JOBS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'CRON' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/cron/">
-	            <div class="l-stat__col-title"><?=__('CRON')?></div>
+	            <div class="l-stat__col-title"><?=__('CRON')?>&nbsp;&nbsp;<i class="fas fa-clock"></i></div>
 	            <ul>
 	              <li><?=__('jobs')?>: <span><?=$panel[$user]['U_CRON_JOBS']?></span></li>
 	              <li><?=__('spnd')?>: <span><?=$panel[$user]['SUSPENDED_CRON']?></span></li>
@@ -109,7 +107,7 @@
 		<?php if($panel[$user]['BACKUPS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'BACKUP' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/backup/">
-	            <div class="l-stat__col-title"><?=__('BACKUP')?></div>
+	            <div class="l-stat__col-title"><?=__('BACKUP')?>&nbsp;&nbsp;<i class="fas fa-undo"></i></div>
 	            <ul>
 	              <li><?=__('backups')?>: <span><?=$panel[$user]['U_BACKUPS']?></span></li>
 	            </ul>

+ 2 - 0
web/templates/header.html

@@ -5,7 +5,9 @@
   <link rel="icon" href="/images/favicon.ico" type="image/x-icon">
   <title>Hestia - <?=__($TAB)?></title>
   <link rel="stylesheet" href="/css/styles.min.css?1446554103">
+  <link type="text/css" href="/css/animate.css?1446554103" rel="stylesheet" />
   <link type="text/css" href="/css/jquery-custom-dialogs.css?1446554103" rel="stylesheet" />
+  <link type="text/css" href="/css/all.min.css?1446554103" rel="stylesheet" />
   <script src="/inc/jquery/jquery-3.3.1.min.js"></script>
   <script>
     //

+ 2 - 2
web/templates/login.html

@@ -1,5 +1,5 @@
         <center>
-            <table class="login">
+            <table class="login animated fadeIn">
                 <tr>
                     <td>
                         <table>
@@ -88,7 +88,7 @@
                             <td colspan=2>
                                 <div class="login-bottom">
                                     <div style="height:20px"><?php if (isset($ERROR)) echo $ERROR ?></div>
-                                    <a class="hestiacp" href="https://www.hestiacp.com" >hestiacp.com</a>
+                                    <a class="hestiacp" href="https://www.hestiacp.com" >Hestia Control Panel</a>
                                 </div>
                             </td>
                         </tr>

+ 1 - 1
web/templates/user/edit_dns.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/user/edit_user.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/user/edit_web.html

@@ -18,7 +18,7 @@
     <div class="l-separator"></div>
     <!-- /.l-separator -->
 
-    <div class="l-center">
+    <div class="l-center animated fadeIn">
       <?php
         $back = $_SESSION['back'];
         if (empty($back)) {

+ 1 - 1
web/templates/user/list_cron.html

@@ -58,7 +58,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
           ++$i;

+ 1 - 1
web/templates/user/list_db.html

@@ -80,7 +80,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         list($http_host, $port) = explode(':', $_SERVER["HTTP_HOST"].":");
         foreach ($data as $key => $value) {

+ 1 - 1
web/templates/user/list_dns.html

@@ -48,7 +48,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
           ++$i;

+ 10 - 1
web/templates/user/list_dns_rec.html

@@ -41,12 +41,21 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
 
     <div class="l-unit header">
       <div class="subtitle"><?=__('Listing')?>  <?=htmlentities($_GET['domain'])?></div>
     </div>
 
+    <div class="l-unit__col l-unit__col--right step-top">
+      <div style="margin-bottom: 40px;">
+        <div class="clearfix l-unit__stat-col--left small"><b><?php print __('Record');?></b></div>
+        <div class="clearfix l-unit__stat-col--left compact"><b><?php print __('Type');?></b></div>
+        <div class="clearfix l-unit__stat-col--left compact"><b><?php print __('Priority');?></b></div>
+        <div class="clearfix l-unit__stat-col--left wide-4"><b><?php print __('IP or Value');?></b></div>
+      </div>
+    </div>
+
       <?php
         foreach ($data as $key => $value) {
           ++$i;

+ 1 - 1
web/templates/user/list_mail.html

@@ -57,7 +57,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         list($http_host, $port) = explode(':', $_SERVER["HTTP_HOST"].":");
         $webmail = "http://".$http_host."/webmail/";

+ 1 - 1
web/templates/user/list_mail_acc.html

@@ -56,7 +56,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <div class="l-unit header">
         <div class="subtitle"><?=__('Listing')?>  <?=htmlentities($_GET['domain'])?></div>
       </div>

+ 1 - 1
web/templates/user/list_search.html

@@ -32,7 +32,7 @@
 
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?
         foreach ($data as $key => $value) {
           ++$i;

+ 1 - 1
web/templates/user/list_stats.html

@@ -45,7 +45,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
            ++$i;

+ 1 - 1
web/templates/user/list_user.html

@@ -60,7 +60,7 @@
     <!-- /.l-separator -->
 
 
-    <div class="l-center units">
+    <div class="l-center units animated fadeIn">
       <?php
         foreach ($data as $key => $value) {
           ++$i;

+ 8 - 8
web/templates/user/panel.html

@@ -18,7 +18,7 @@
       <div class="l-profile">
         <a class="l-profile__notifications <? if($panel[$user]['NOTIFICATIONS'] == 'yes') echo " updates"; ?>">&nbsp;</a>
         <a class="l-profile__username" href="/edit/user/?user=<?php echo $user; ?>"><? if(($_SESSION['user'] == 'admin') && ($user != 'admin')) echo 'admin → ' ?><?=$user?></a>
-        <a class="l-profile__logout" href="/logout/"> <?=__('Log out')?> </a>
+        <a class="l-profile__logout" href="/logout/"> <?=__('Log out')?> <i class="fas fa-sign-out-alt"></i></a>
       </div>
       <!-- /.l-profile -->
     </div>
@@ -33,7 +33,7 @@
       <div class="l-stat">
         <div class="l-stat__col <?php if($TAB == 'USER' ) echo 'l-stat__col--active' ?>">
           <a href="/list/user/">
-            <div class="l-stat__col-title"><?=__('USER')?></div>
+            <div class="l-stat__col-title"><?=__('USER')?>&nbsp;&nbsp;<i class="fas fa-users"></i></div>
             <ul>
               <li><?=__('Disk')?>: <span><?=humanize_usage_size($panel[$user]['U_DISK'])?> <?=humanize_usage_measure($panel[$user]['U_DISK'])?></span></li>
               <li><?=__('Bandwidth');?>: <span> <?=humanize_usage_size($panel[$user]['U_BANDWIDTH'])?> <?=humanize_usage_measure($panel[$user]['U_BANDWIDTH'])?></span></li>
@@ -43,7 +43,7 @@
 		<?php if($panel[$user]['WEB_DOMAINS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'WEB' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/web/">
-	            <div class="l-stat__col-title"><?=__('WEB')?></div>
+	            <div class="l-stat__col-title"><?=__('WEB')?>&nbsp;&nbsp;<i class="fas fa-globe-americas"></i></div>
 	            <ul>
 	              <li><?=__('domains')?>: <span><?=$panel[$user]['U_WEB_DOMAINS']?></span></li>
 	              <li><?=__('aliases')?>: <span><?=$panel[$user]['U_WEB_ALIASES']?></span></li>
@@ -55,7 +55,7 @@
 		<?php if($panel[$user]['DNS_DOMAINS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'DNS' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/dns/">
-	            <div class="l-stat__col-title"><?=__('DNS')?></div>
+	            <div class="l-stat__col-title"><?=__('DNS')?>&nbsp;&nbsp;<i class="fas fa-at"></i></div>
 	            <ul>
 	              <li><?=__('domains')?>: <span><?=$panel[$user]['U_DNS_DOMAINS']?></span></li>
 	              <li><?=__('records')?>: <span><?=$panel[$user]['U_DNS_RECORDS']?></span></li>
@@ -67,7 +67,7 @@
 		<?php if($panel[$user]['MAIL_DOMAINS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'MAIL' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/mail/">
-	            <div class="l-stat__col-title"><?=__('MAIL')?></div>
+	            <div class="l-stat__col-title"><?=__('MAIL')?>&nbsp;&nbsp;<i class="fas fa-mail-bulk"></i></div>
 	            <ul>
 	              <li><?=__('domains')?>: <span><?=$panel[$user]['U_MAIL_DOMAINS']?></span></li>
 	              <li><?=__('accounts')?>: <span><?=$panel[$user]['U_MAIL_ACCOUNTS']?></span></li>
@@ -79,7 +79,7 @@
 		<?php if($panel[$user]['DATABASES'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'DB' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/db/">
-	            <div class="l-stat__col-title"><?=__('DB')?></div>
+	            <div class="l-stat__col-title"><?=__('DB')?>&nbsp;&nbsp;<i class="fas fa-database"></i></div>
 	            <ul>
 	              <li><?=__('databases')?>: <span><?=$panel[$user]['U_DATABASES']?></span></li>
 	              <li><?=__('spnd')?>: <span><?=$panel[$user]['SUSPENDED_DB']?></span></li>
@@ -90,7 +90,7 @@
 		<?php if($panel[$user]['CRON_JOBS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'CRON' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/cron/">
-	            <div class="l-stat__col-title"><?=__('CRON')?></div>
+	            <div class="l-stat__col-title"><?=__('CRON')?>&nbsp;&nbsp;<i class="fas fa-clock"></i></div>
 	            <ul>
 	              <li><?=__('jobs')?>: <span><?=$panel[$user]['U_CRON_JOBS']?></span></li>
 	              <li><?=__('spnd')?>: <span><?=$panel[$user]['SUSPENDED_CRON']?></span></li>
@@ -101,7 +101,7 @@
 		<?php if($panel[$user]['BACKUPS'] != "0") { ?>
 	        <div class="l-stat__col <?php if($TAB == 'BACKUP' ) echo 'l-stat__col--active' ?>">
 	          <a href="/list/backup/">
-	            <div class="l-stat__col-title"><?=__('BACKUP')?></div>
+	            <div class="l-stat__col-title"><?=__('BACKUP')?>&nbsp;&nbsp;<i class="fas fa-undo"></i></div>
 	            <ul>
 	              <li><?=__('backups')?>: <span><?=$panel[$user]['U_BACKUPS']?></span></li>
 	            </ul>

BIN
web/webfonts/exo-2-v5-latin-100.woff


BIN
web/webfonts/exo-2-v5-latin-100.woff2


BIN
web/webfonts/exo-2-v5-latin-100italic.woff


BIN
web/webfonts/exo-2-v5-latin-100italic.woff2


BIN
web/webfonts/exo-2-v5-latin-200.woff


BIN
web/webfonts/exo-2-v5-latin-200.woff2


BIN
web/webfonts/exo-2-v5-latin-200italic.woff


BIN
web/webfonts/exo-2-v5-latin-200italic.woff2


BIN
web/webfonts/exo-2-v5-latin-300.woff


BIN
web/webfonts/exo-2-v5-latin-300.woff2


BIN
web/webfonts/exo-2-v5-latin-300italic.woff


BIN
web/webfonts/exo-2-v5-latin-300italic.woff2


BIN
web/webfonts/exo-2-v5-latin-500.woff


BIN
web/webfonts/exo-2-v5-latin-500.woff2


BIN
web/webfonts/exo-2-v5-latin-500italic.woff


BIN
web/webfonts/exo-2-v5-latin-500italic.woff2


BIN
web/webfonts/exo-2-v5-latin-600.woff


BIN
web/webfonts/exo-2-v5-latin-600.woff2


BIN
web/webfonts/exo-2-v5-latin-600italic.woff


BIN
web/webfonts/exo-2-v5-latin-600italic.woff2


BIN
web/webfonts/exo-2-v5-latin-700.woff


BIN
web/webfonts/exo-2-v5-latin-700.woff2


BIN
web/webfonts/exo-2-v5-latin-700italic.woff


BIN
web/webfonts/exo-2-v5-latin-700italic.woff2


이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.