You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

164 lines
3.2 KiB

  1. @font-face{
  2. font-family:'digital-clock-font';
  3. src: url('/static/fonts/digital-7 (mono).ttf');
  4. }
  5. @font-face{
  6. font-family:'vt-323';
  7. src: url('/static/fonts/VT323-Regular.ttf');
  8. }
  9. #clockdiv > div{
  10. padding: 6px;
  11. border-radius: 3px;
  12. /* background: #00BF96; */
  13. display: inline-block;
  14. }
  15. #clockdiv div > span{
  16. padding: 8px;
  17. border-radius: 3px;
  18. /* background: #00816A; */
  19. display: inline-block;
  20. width: 100%;
  21. text-align: center;
  22. font-family: digital-clock-font;
  23. font-size: 32px;
  24. vertical-align: middle;
  25. }
  26. @media (min-width: 350px) {
  27. #clockdiv div > span{
  28. font-size: 40px;
  29. }
  30. }
  31. #trip-name {
  32. font-size: 16px;
  33. text-align: center;
  34. }
  35. .glitch {
  36. color: rgb(223, 191, 191);
  37. position: relative;
  38. font-size: 9vw;
  39. // margin: 70px 200px;
  40. animation: glitch 5s 5s infinite;
  41. }
  42. .glitch::before {
  43. content: attr(data-text);
  44. position: absolute;
  45. left: -2px;
  46. text-shadow: -5px 0 magenta;
  47. background: black;
  48. overflow: hidden;
  49. top: 0;
  50. animation: noise-1 3s linear infinite alternate-reverse, glitch 5s 5.05s infinite;
  51. }
  52. .glitch::after {
  53. content: attr(data-text);
  54. position: absolute;
  55. left: 2px;
  56. text-shadow: -5px 0 lightgreen;
  57. background: black;
  58. overflow: hidden;
  59. top: 0;
  60. animation: noise-2 3s linear infinite alternate-reverse, glitch 5s 5s infinite;
  61. }
  62. @keyframes glitch {
  63. 1%{
  64. transform: rotateX(10deg) skewX(90deg);
  65. }
  66. 2%{
  67. transform: rotateX(0deg) skewX(0deg);
  68. }
  69. }
  70. @keyframes noise-1 {
  71. $steps: 30;
  72. @for $i from 1 through $steps {
  73. #{percentage($i*(1/$steps))} {
  74. $top: random(100);
  75. $bottom: random(101 - $top);
  76. clip-path: inset(#{$top}px 0 #{$bottom}px 0);
  77. }
  78. }
  79. }
  80. @keyframes noise-2 {
  81. $steps: 30;
  82. @for $i from 0 through $steps {
  83. #{percentage($i*(1/$steps))} {
  84. $top: random(100);
  85. $bottom: random(101 - $top);
  86. clip-path: inset(#{$top}px 0 #{$bottom}px 0);
  87. }
  88. }
  89. }
  90. .scanlines {
  91. overflow: hidden;
  92. mix-blend-mode: difference;
  93. }
  94. .scanlines::before {
  95. content: "";
  96. position: absolute;
  97. width: 100%;
  98. height: 100%;
  99. top: 0;
  100. left: 0;
  101. background: repeating-linear-gradient(
  102. to bottom,
  103. transparent 0%,
  104. rgba(255, 255, 255, 0.05) .5%,
  105. transparent 1%
  106. );
  107. animation: fudge 7s ease-in-out alternate infinite;
  108. }
  109. @keyframes fudge {
  110. from {
  111. transform: translate(0px, 0px);
  112. }
  113. to {
  114. transform: translate(0px, 2%);
  115. }
  116. }
  117. .glow {
  118. @extend .glitch;
  119. text-shadow: 0 0 1000px rgb(223, 191, 191);
  120. color: transparent;
  121. position: absolute;
  122. top: 0;
  123. }
  124. .subtitle {
  125. font-family: Arial, Helvetica, sans-serif;
  126. font-weight: 100;
  127. font-size: .8vw;
  128. color: rgba(165, 141, 141, .4);
  129. text-transform: uppercase;
  130. letter-spacing: 1em;
  131. text-align: center;
  132. position: absolute;
  133. left: 17%;
  134. animation: glitch-2 5s 5.02s infinite;
  135. }
  136. @keyframes glitch-2 {
  137. 1%{
  138. transform: rotateX(10deg) skewX(70deg);
  139. }
  140. 2%{
  141. transform: rotateX(0deg) skewX(0deg);
  142. }
  143. }