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.

162 lines
2.7 KiB

4 years ago
  1. @define-mixin menu {
  2. position: absolute;
  3. background: var(--background);
  4. box-shadow: var(--shadow);
  5. color: white;
  6. border: 2px solid;
  7. margin: 0;
  8. padding: 10px;
  9. list-style: none;
  10. z-index: 99;
  11. }
  12. .header {
  13. display: flex;
  14. flex-direction: column;
  15. position: relative;
  16. @media print {
  17. display: none;
  18. }
  19. &__inner {
  20. display: flex;
  21. align-items: center;
  22. justify-content: space-between;
  23. }
  24. &__logo {
  25. display: flex;
  26. flex: 1;
  27. &:after {
  28. content: '';
  29. background: repeating-linear-gradient(90deg, var(--accent), var(--accent) 2px, transparent 0, transparent 10px);
  30. display: block;
  31. width: 100%;
  32. right: 10px;
  33. }
  34. a {
  35. flex: 0 0 auto;
  36. max-width: 100%;
  37. text-decoration: none;
  38. }
  39. }
  40. .menu {
  41. --shadow-color: color-mod(var(--background) a(80%));
  42. --shadow: 0 10px var(--shadow-color), -10px 10px var(--shadow-color), 10px 10px var(--shadow-color);
  43. margin: 20px 0;
  44. @media (--phone) {
  45. @mixin menu;
  46. top: 50px;
  47. right: 0;
  48. }
  49. &__inner {
  50. display: flex;
  51. flex-wrap: wrap;
  52. list-style: none;
  53. margin: 0;
  54. padding: 0;
  55. &--desktop {
  56. @media (--phone) {
  57. display: none;
  58. }
  59. }
  60. &--mobile {
  61. display: none;
  62. @media (--phone) {
  63. display: block;
  64. }
  65. }
  66. li {
  67. &:not(:last-of-type) {
  68. margin-right: 20px;
  69. margin-bottom: 10px;
  70. flex: 0 0 auto;
  71. }
  72. }
  73. @media (--phone) {
  74. flex-direction: column;
  75. align-items: flex-start;
  76. padding: 0;
  77. li {
  78. margin: 0;
  79. padding: 5px;
  80. }
  81. }
  82. }
  83. &__sub-inner {
  84. position: relative;
  85. list-style: none;
  86. padding: 0;
  87. margin: 0;
  88. &:not(:only-child) {
  89. margin-left: 20px;
  90. }
  91. &-more {
  92. @mixin menu;
  93. top: 35px;
  94. left: 0;
  95. &-trigger {
  96. color: var(--accent);
  97. user-select: none;
  98. cursor: pointer;
  99. }
  100. li {
  101. margin: 0;
  102. padding: 5px;
  103. white-space: nowrap;
  104. }
  105. }
  106. }
  107. .spacer {
  108. flex-grow: 1;
  109. }
  110. .language-selector {
  111. position: relative;
  112. list-style: none;
  113. margin: 0;
  114. &-current {
  115. list-style-type: none;
  116. display: flex;
  117. flex-direction: row;
  118. color: var(--accent);
  119. cursor: pointer;
  120. margin: 0;
  121. }
  122. &__more {
  123. @mixin menu;
  124. top: 35px;
  125. right: 0;
  126. }
  127. }
  128. &-trigger {
  129. color: var(--accent);
  130. border: 2px solid;
  131. margin-left: 10px;
  132. height: 100%;
  133. padding: 3px 8px;
  134. position: relative;
  135. }
  136. }
  137. }