index.scss 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. ---
  2. ---
  3. :root {
  4. --profile-picture-size: 120px;
  5. }
  6. h1 {
  7. font-size: x-large;
  8. font-weight: bold;
  9. }
  10. #intro {
  11. position: relative;
  12. display: flex;
  13. flex-direction: column;
  14. align-content: center;
  15. padding-top: calc(var(--profile-picture-size) / 2 + var(--margin));
  16. margin-top: calc(var(--profile-picture-size) / 2 + var(--margin) * 2);
  17. }
  18. #profile-picture-wrapper {
  19. position: absolute;
  20. width: var(--profile-picture-size);
  21. height: var(--profile-picture-size);
  22. align-self: center;
  23. margin-bottom: var(--margin);
  24. top: calc(-0.5 * var(--profile-picture-size));
  25. }
  26. #profile-picture-frame {
  27. position: relative;
  28. border-radius: 50%;
  29. width: 100%;
  30. height: 100%;
  31. overflow: hidden;
  32. border: 1px solid black;
  33. background-color: var(--color-container);
  34. }
  35. #profile-picture-shadow {
  36. width: 100%;
  37. height: 100%;
  38. border-radius: 50%;
  39. }
  40. #profile-picture {
  41. width: 100%;
  42. height: 100%;
  43. }
  44. #profile-name {
  45. text-align: center;
  46. padding-bottom: var(--margin);
  47. }
  48. .category {
  49. margin-top: calc(var(--margin) * 2);
  50. }
  51. .contribution-graph {
  52. width: 100%;
  53. overflow: visible;
  54. aspect-ratio: 800 / 215.117;
  55. .placeholder {
  56. position: relative;
  57. display: flex;
  58. flex-direction: column;
  59. height: 100%;
  60. width: 100%;
  61. span {
  62. margin: auto;
  63. }
  64. }
  65. .js-calendar-graph-svg {
  66. overflow: visible;
  67. & > g {
  68. transform: translate(0, 0) !important;
  69. .ContributionCalendar-label {
  70. display: none;
  71. }
  72. }
  73. }
  74. .contrib-column {
  75. animation-name: appear-from-blur;
  76. animation-duration: 1s;
  77. animation-fill-mode: forwards;
  78. will-change: filter;
  79. }
  80. }
  81. @keyframes calendar-day {
  82. to {
  83. opacity: 100%;
  84. transform: translateY(0px);
  85. }
  86. }
  87. @for $week from 1 through 53 {
  88. @for $day from 1 through 7 {
  89. .contribution-graph g > g:nth-child(#{$week}) .ContributionCalendar-day:nth-child(#{$day}) {
  90. opacity: 0;
  91. transform: translateY(-15px);
  92. position: relative;
  93. animation-name: calendar-day;
  94. animation-duration: 0.5s;
  95. animation-delay: #{($week + $day) * 0.01}s;
  96. animation-fill-mode: forwards;
  97. will-change: opacity, filter, transform;
  98. }
  99. }
  100. }
  101. @media screen and (max-width: 700px) {
  102. .contribution-graph {
  103. display: flex;
  104. flex-direction: column;
  105. width: 105%;
  106. transform: translateX(-2.5%);
  107. .contrib-column {
  108. width: 100%;
  109. padding-right: 0;
  110. padding-left: 0;
  111. padding-bottom: 0;
  112. }
  113. .contrib-column-first {
  114. padding-top: 0;
  115. }
  116. }
  117. }