_theme-xbox-sm.scss 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. /* ------------------------------------------------------------------------------
  2. *
  3. * # Pace. Xbox theme
  4. *
  5. * Xbox css spinner theme for Pace. Default size
  6. *
  7. * ---------------------------------------------------------------------------- */
  8. // Check if component is enabled
  9. @if $enable-pace {
  10. // Define variables
  11. $pace-show-text: true;
  12. $pace-overlay-color: $color-slate-900;
  13. $pace-loader-color: $white;
  14. $pace-loader-size: 2.75rem;
  15. $pace-loader-border-width: 0.0625rem;
  16. $pace-loader-border-spacer: 0.3125rem;
  17. // Pace theme styles
  18. // ------------------------------
  19. // Overlay
  20. .pace-running {
  21. position: fixed;
  22. top: 0;
  23. left: 0;
  24. width: 100%;
  25. height: 100%;
  26. background-color: $pace-overlay-color;
  27. // Hide all content
  28. > *:not(.pace) {
  29. opacity: 0;
  30. }
  31. }
  32. // Base
  33. .pace {
  34. position: fixed;
  35. left: 50%;
  36. top: 50%;
  37. margin-left: -($pace-loader-size / 2);
  38. margin-top: -($pace-loader-size / 2);
  39. z-index: 9999;
  40. user-select: none;
  41. pointer-events: none;
  42. @include size($pace-loader-size);
  43. // Change colors on light/dark backgrounds
  44. @if (lightness($pace-overlay-color) < 75) {
  45. color: $white;
  46. }
  47. }
  48. // Progress
  49. .pace-progress {
  50. width: 100% !important;
  51. }
  52. // Activity
  53. .pace-activity {
  54. position: absolute;
  55. top: 0;
  56. // left: 0;
  57. animation: rotation 1.5s ease-in-out infinite;
  58. @include size($pace-loader-size);
  59. // Circles
  60. &,
  61. &:before,
  62. &:after {
  63. border: $pace-loader-border-width solid transparent;
  64. border-top-color: $pace-loader-color;
  65. border-radius: $border-radius-circle;
  66. }
  67. &:before {
  68. content: "";
  69. position: absolute;
  70. top: -($pace-loader-border-spacer + ($pace-loader-border-width * 2));
  71. left: -($pace-loader-border-spacer + ($pace-loader-border-width * 2));
  72. right: -($pace-loader-border-spacer + ($pace-loader-border-width * 2));
  73. bottom: -($pace-loader-border-spacer + ($pace-loader-border-width * 2));
  74. animation: rotation 2s ease-in-out infinite;
  75. }
  76. &:after {
  77. content: "";
  78. position: absolute;
  79. top: $pace-loader-border-spacer;
  80. left: $pace-loader-border-spacer;
  81. right: $pace-loader-border-spacer;
  82. bottom: $pace-loader-border-spacer;
  83. animation: rotation 1s ease-in-out infinite;
  84. }
  85. }
  86. // Hide inactive
  87. .pace-inactive {
  88. display: none;
  89. }
  90. // Progress text
  91. @if $pace-show-text {
  92. .pace-progress:after {
  93. content: attr(data-progress-text);
  94. text-align: center;
  95. width: 100%;
  96. display: inline-block;
  97. white-space: nowrap;
  98. margin-top: ($pace-loader-size + $pace-loader-border-width + $pace-loader-border-spacer + ($spacer / 1.5));
  99. }
  100. }
  101. }