swiftfire-jekyll-theme 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (138) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +23 -0
  3. data/README.md +107 -0
  4. data/_data/cblocks.yml +31 -0
  5. data/_data/setup.yml +135 -0
  6. data/_data/text-for.yml +53 -0
  7. data/_includes/account-menus.html +82 -0
  8. data/_includes/banner-area.html +57 -0
  9. data/_includes/banner-icon.html +23 -0
  10. data/_includes/banner-title-area.html +30 -0
  11. data/_includes/cblock-row.html +18 -0
  12. data/_includes/cblock.html +20 -0
  13. data/_includes/disqus-comments.html +39 -0
  14. data/_includes/footer.html +16 -0
  15. data/_includes/google-analytics.html +21 -0
  16. data/_includes/head.html +74 -0
  17. data/_includes/menubar-icon.html +23 -0
  18. data/_includes/menubar.html +487 -0
  19. data/_includes/secondary-column.html +37 -0
  20. data/_includes/tertiary-column.html +8 -0
  21. data/_includes/vertical-menu.html +378 -0
  22. data/_includes/widgets/browser-info.html +16 -0
  23. data/_includes/widgets/categories.html +32 -0
  24. data/_includes/widgets/cookie-consent.html +21 -0
  25. data/_includes/widgets/older-posts.html +71 -0
  26. data/_includes/widgets/recent-posts.html +24 -0
  27. data/_includes/widgets/social-media-res/icon-github.html +7 -0
  28. data/_includes/widgets/social-media-res/icon-github.svg +1 -0
  29. data/_includes/widgets/social-media-res/icon-twitter.html +7 -0
  30. data/_includes/widgets/social-media-res/icon-twitter.svg +1 -0
  31. data/_includes/widgets/social-media.html +29 -0
  32. data/_includes/widgets/subscribe.html +18 -0
  33. data/_includes/widgets/youtube-player.html +38 -0
  34. data/_layouts/banner-layout.html +1 -0
  35. data/_layouts/category-page.html +51 -0
  36. data/_layouts/content-blocks.html +6 -0
  37. data/_layouts/default.html +152 -0
  38. data/_layouts/home.html +22 -0
  39. data/_layouts/page.html +30 -0
  40. data/_layouts/post.html +20 -0
  41. data/_sass/classic-jekyll-theme.scss +1178 -0
  42. data/_sass/classic/_banner-area.scss +552 -0
  43. data/_sass/classic/_body.scss +15 -0
  44. data/_sass/classic/_columns.scss +122 -0
  45. data/_sass/classic/_custom.scss +138 -0
  46. data/_sass/classic/_footer.scss +31 -0
  47. data/_sass/classic/_menubar.scss +530 -0
  48. data/_sass/classic/_normalize-override.scss +22 -0
  49. data/_sass/classic/_normalize.scss +447 -0
  50. data/_sass/classic/_page.scss +12 -0
  51. data/_sass/classic/_post.scss +10 -0
  52. data/_sass/classic/_swiftfire.scss +54 -0
  53. data/_sass/classic/_syntax-highlighting.scss +71 -0
  54. data/_sass/classic/_theme-internal.scss +37 -0
  55. data/_sass/classic/_theme-library.scss +85 -0
  56. data/_sass/classic/_vertical-menu.scss +252 -0
  57. data/_sass/classic/_widgets.scss +88 -0
  58. data/assets/img/banner-area-layout.png +0 -0
  59. data/assets/img/cog-wheels-120x68.png +0 -0
  60. data/assets/img/cog-wheels-240x135.png +0 -0
  61. data/assets/img/cog-wheels-30x17.png +0 -0
  62. data/assets/img/cog-wheels-60x43.png +0 -0
  63. data/assets/img/column-panel-layout.png +0 -0
  64. data/assets/img/test-pattern-110x83.png +0 -0
  65. data/assets/img/test-pattern-1280x800.png +0 -0
  66. data/assets/img/test-pattern-220x165.png +0 -0
  67. data/assets/img/test-pattern-55x42.png +0 -0
  68. data/assets/img/test-pattern-640x400.png +0 -0
  69. data/assets/img/top-level-layout.png +0 -0
  70. data/assets/js/cookieconsent.min.js +1 -0
  71. data/assets/main.scss +9 -0
  72. data/assets/templates/comment-section.sf.html +137 -0
  73. data/assets/templates/email-verification-text.sf.html +6 -0
  74. data/assets/templates/request-new-password-text.sf.txt +7 -0
  75. data/icons/android-chrome-192x192.png +0 -0
  76. data/icons/apple-touch-icon.png +0 -0
  77. data/icons/browserconfig.xml +9 -0
  78. data/icons/favicon-16x16.png +0 -0
  79. data/icons/favicon-32x32.png +0 -0
  80. data/icons/favicon.ico +0 -0
  81. data/icons/manifest.json +13 -0
  82. data/icons/mstile-150x150.png +0 -0
  83. data/icons/safari-pinned-tab.svg +14 -0
  84. data/pages/about/about.md +15 -0
  85. data/pages/account/comment-edit.sf.md +60 -0
  86. data/pages/account/comment-review.sf.md +80 -0
  87. data/pages/account/email-verification-failed.sf.md +11 -0
  88. data/pages/account/email-verification-success.sf.md +7 -0
  89. data/pages/account/error.sf.md +13 -0
  90. data/pages/account/forgot-password-continue.sf.md +9 -0
  91. data/pages/account/forgot-password.sf.md +25 -0
  92. data/pages/account/login.sf.md +19 -0
  93. data/pages/account/not-allowed.sf.md +7 -0
  94. data/pages/account/register-continue.sf.md +11 -0
  95. data/pages/account/register.sf.md +30 -0
  96. data/pages/account/request-new-password-failed.sf.md +13 -0
  97. data/pages/account/set-new-password-success.sf.md +7 -0
  98. data/pages/account/set-new-password.sf.md +25 -0
  99. data/pages/categories/classic.md +10 -0
  100. data/pages/categories/example.md +10 -0
  101. data/pages/categories/jekyll.md +10 -0
  102. data/pages/categories/update.md +10 -0
  103. data/pages/classic/01-features.md +36 -0
  104. data/pages/classic/02-setup.md +113 -0
  105. data/pages/classic/03-pages-and-posts.md +25 -0
  106. data/pages/classic/04-posts.md +18 -0
  107. data/pages/classic/05-menus.md +118 -0
  108. data/pages/classic/06-categories.md +38 -0
  109. data/pages/classic/07-terminology.md +35 -0
  110. data/pages/classic/08-versioning.md +23 -0
  111. data/pages/classic/09-problems.md +25 -0
  112. data/pages/contact/contact.md +18 -0
  113. data/pages/cookie-consent/cookie-consent.md +7 -0
  114. data/pages/download/download.md +10 -0
  115. data/pages/jekyll/01-jekyll.md +42 -0
  116. data/pages/jekyll/02-speed.md +88 -0
  117. data/pages/jekyll/03-ruby.md +19 -0
  118. data/pages/jekyll/04-cron-job.md +163 -0
  119. data/pages/layouts/banner-main.md +36 -0
  120. data/pages/layouts/blocks.md +11 -0
  121. data/pages/layouts/landing-page.md +21 -0
  122. data/pages/layouts/no-sec-no-ter.md +28 -0
  123. data/pages/layouts/sec-left-no-ter.md +28 -0
  124. data/pages/layouts/sec-left-ter-right.md +28 -0
  125. data/pages/layouts/sec-right-no-ter.md +28 -0
  126. data/pages/layouts/sec-right-ter-left.md +28 -0
  127. data/pages/menus/external-url.md +28 -0
  128. data/pages/menus/landing-page.md +8 -0
  129. data/pages/menus/submenu-subsections.md +72 -0
  130. data/pages/menus/submenu1.md +22 -0
  131. data/pages/menus/submenu2.md +21 -0
  132. data/pages/menus/submenu3.md +47 -0
  133. data/pages/menus/submenu4.md +36 -0
  134. data/pages/menus/subsubmenu3-1.md +21 -0
  135. data/pages/menus/subsubmenu3-2.md +21 -0
  136. data/pages/menus/subsubmenu4-1.md +31 -0
  137. data/pages/menus/subsubmenu4-2.md +31 -0
  138. metadata +269 -0
@@ -0,0 +1,12 @@
1
+ // SCCS for the page design.
2
+
3
+ .page-meta {
4
+ color: $grey-color;
5
+ font-size: $small-1-font-size;
6
+ }
7
+
8
+ .page-title {
9
+ text-align: center;
10
+ margin-top: 2 * $vspacing-unit;
11
+ margin-bottom: 2 * $vspacing-unit;
12
+ }
@@ -0,0 +1,10 @@
1
+ // SCCS for the post design.
2
+
3
+ .post-meta {
4
+ color: $grey-color;
5
+ font-size: $small-1-font-size;
6
+ }
7
+
8
+ .post-title {
9
+ text-align: center;
10
+ }
@@ -0,0 +1,54 @@
1
+ // This file contains class definitions for swiftfire extension
2
+ // to the classic-jekyll-theme.
3
+ //
4
+ // ===============================================================
5
+
6
+
7
+ // Fix the layout of the domain menu subitem labels
8
+
9
+ .menubar {
10
+ @include narrow-layout {
11
+ .item .dropdown .subitem .title .text form button {
12
+ display: flex;
13
+ justify-content: start;
14
+ align-items: center;
15
+ padding-left: $menubar-subitem-indent-narrow;
16
+ }
17
+ }
18
+ @include medium-and-widest-layout {
19
+ .item .dropdown .subitem .title .text form button {
20
+ @include medium-layout { font: $menubar-subitem-font-medium; }
21
+ @include widest-layout { font: $menubar-subitem-font-widest; }
22
+ @include medium-layout { color: $menubar-subitem-color-medium; }
23
+ @include widest-layout { color: $menubar-subitem-color-widest; }
24
+ @include medium-layout { padding: $menubar-subitem-padding-medium; }
25
+ @include widest-layout { padding: $menubar-subitem-padding-widest; }
26
+ }
27
+ }
28
+ }
29
+
30
+
31
+ // Swiftfire items
32
+
33
+ .sf-loginlogout {
34
+ display: flex;
35
+ flex-direction: row;
36
+ justify-content: flex-end;
37
+ padding-right: $hspacing-unit/2;
38
+ width: 100%;
39
+ font-size: $small-2-font-size;
40
+ .sf-loginlogout-firstoption {
41
+ margin: 0 $hspacing-unit/2 0 0;
42
+ }
43
+ .sf-loginlogout-secondoption {
44
+ margin: 0 $hspacing-unit/2 0 $hspacing-unit/2;
45
+ }
46
+ p {
47
+ margin: 0 0 0 0;
48
+ }
49
+ button {
50
+ margin: 0 0 0 0;
51
+ font-size: $small-2-font-size;
52
+ color: black;
53
+ }
54
+ }
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Syntax highlighting styles
3
+ */
4
+ .highlight {
5
+ background: #fff;
6
+ margin-bottom: $vspacing-unit / 2; // Replaces : @extend %vertical-rhythm;
7
+
8
+ .highlighter-rouge & {
9
+ background: #eef;
10
+ }
11
+
12
+ .c { color: #998; font-style: italic } // Comment
13
+ .err { color: #a61717; background-color: #e3d2d2 } // Error
14
+ .k { font-weight: bold } // Keyword
15
+ .o { font-weight: bold } // Operator
16
+ .cm { color: #998; font-style: italic } // Comment.Multiline
17
+ .cp { color: #999; font-weight: bold } // Comment.Preproc
18
+ .c1 { color: #998; font-style: italic } // Comment.Single
19
+ .cs { color: #999; font-weight: bold; font-style: italic } // Comment.Special
20
+ .gd { color: #000; background-color: #fdd } // Generic.Deleted
21
+ .gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific
22
+ .ge { font-style: italic } // Generic.Emph
23
+ .gr { color: #a00 } // Generic.Error
24
+ .gh { color: #999 } // Generic.Heading
25
+ .gi { color: #000; background-color: #dfd } // Generic.Inserted
26
+ .gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific
27
+ .go { color: #888 } // Generic.Output
28
+ .gp { color: #555 } // Generic.Prompt
29
+ .gs { font-weight: bold } // Generic.Strong
30
+ .gu { color: #aaa } // Generic.Subheading
31
+ .gt { color: #a00 } // Generic.Traceback
32
+ .kc { font-weight: bold } // Keyword.Constant
33
+ .kd { font-weight: bold } // Keyword.Declaration
34
+ .kp { font-weight: bold } // Keyword.Pseudo
35
+ .kr { font-weight: bold } // Keyword.Reserved
36
+ .kt { color: #458; font-weight: bold } // Keyword.Type
37
+ .m { color: #099 } // Literal.Number
38
+ .s { color: #d14 } // Literal.String
39
+ .na { color: #008080 } // Name.Attribute
40
+ .nb { color: #0086B3 } // Name.Builtin
41
+ .nc { color: #458; font-weight: bold } // Name.Class
42
+ .no { color: #008080 } // Name.Constant
43
+ .ni { color: #800080 } // Name.Entity
44
+ .ne { color: #900; font-weight: bold } // Name.Exception
45
+ .nf { color: #900; font-weight: bold } // Name.Function
46
+ .nn { color: #555 } // Name.Namespace
47
+ .nt { color: #000080 } // Name.Tag
48
+ .nv { color: #008080 } // Name.Variable
49
+ .ow { font-weight: bold } // Operator.Word
50
+ .w { color: #bbb } // Text.Whitespace
51
+ .mf { color: #099 } // Literal.Number.Float
52
+ .mh { color: #099 } // Literal.Number.Hex
53
+ .mi { color: #099 } // Literal.Number.Integer
54
+ .mo { color: #099 } // Literal.Number.Oct
55
+ .sb { color: #d14 } // Literal.String.Backtick
56
+ .sc { color: #d14 } // Literal.String.Char
57
+ .sd { color: #d14 } // Literal.String.Doc
58
+ .s2 { color: #d14 } // Literal.String.Double
59
+ .se { color: #d14 } // Literal.String.Escape
60
+ .sh { color: #d14 } // Literal.String.Heredoc
61
+ .si { color: #d14 } // Literal.String.Interpol
62
+ .sx { color: #d14 } // Literal.String.Other
63
+ .sr { color: #009926 } // Literal.String.Regex
64
+ .s1 { color: #d14 } // Literal.String.Single
65
+ .ss { color: #990073 } // Literal.String.Symbol
66
+ .bp { color: #999 } // Name.Builtin.Pseudo
67
+ .vc { color: #008080 } // Name.Variable.Class
68
+ .vg { color: #008080 } // Name.Variable.Global
69
+ .vi { color: #008080 } // Name.Variable.Instance
70
+ .il { color: #099 } // Literal.Number.Integer.Long
71
+ }
@@ -0,0 +1,37 @@
1
+ // *********************************************************************************************************************
2
+ // Internals
3
+ // ---------------------------------------------------------------------------------------------------------------------
4
+ // Do not change these definitions
5
+ //
6
+
7
+ // Caculate the width ranges where the layout changes take place
8
+ //
9
+ $widest-min-width: $primary-column-min-width + $secondary-column-width + $tertiary-column-width;
10
+ $medium-max-width: $widest-min-width - 1;
11
+ $medium-min-width: $primary-column-min-width + $secondary-column-width;
12
+ $narrow-max-width: $medium-min-width - 1;
13
+
14
+
15
+ @mixin narrow-layout {
16
+ @media screen and (min-width: 0px) and (max-width: $narrow-max-width) {
17
+ @content
18
+ }
19
+ }
20
+
21
+ @mixin medium-layout {
22
+ @media screen and (min-width: $medium-min-width) and (max-width: $medium-max-width) {
23
+ @content
24
+ }
25
+ }
26
+
27
+ @mixin widest-layout {
28
+ @media screen and (min-width: $widest-min-width) {
29
+ @content
30
+ }
31
+ }
32
+
33
+ @mixin medium-and-widest-layout {
34
+ @media screen and (min-width: $medium-min-width) {
35
+ @content
36
+ }
37
+ }
@@ -0,0 +1,85 @@
1
+ // *********************************************************************************************************************
2
+ // Insets
3
+ // ---------------------------------------------------------------------------------------------------------------------
4
+ // Defines the insets used in the columns and the footer-panel. I.e the empty spaces between text and separators.
5
+ //
6
+ .theme-insets {
7
+ padding-top: $vspacing-unit;
8
+ padding-right: $hspacing-unit;
9
+ padding-bottom: $vspacing-unit;
10
+ padding-left: $hspacing-unit;
11
+ }
12
+
13
+
14
+ // *********************************************************************************************************************
15
+ // Overlay
16
+ // ---------------------------------------------------------------------------------------------------------------------
17
+ // Will place an element over its parent and make it the exact same size.
18
+ //
19
+ // The parent must have its css 'position' property set to 'relative'.
20
+ //
21
+ .overlay {
22
+ position: absolute;
23
+ top: 0;
24
+ left: 0;
25
+ height: 100%;
26
+ width: 100%;
27
+ }
28
+
29
+
30
+ // *********************************************************************************************************************
31
+ // display-flex-...
32
+ // ---------------------------------------------------------------------------------------------------------------------
33
+ // Will switch a display property to 'flex' for the narrow, medium resp wide layout and 'none' for all others.
34
+ //
35
+ // Can be used in custom html code to enable/disable elements.
36
+ //
37
+ .display-flex-narrow {
38
+ @include narrow-layout { display: flex; }
39
+ @include medium-layout { display: none; }
40
+ @include widest-layout { display: none; }
41
+ }
42
+ .display-flex-medium {
43
+ @include narrow-layout { display: none; }
44
+ @include medium-layout { display: flex; }
45
+ @include widest-layout { display: none; }
46
+ }
47
+ .display-flex-widest {
48
+ @include narrow-layout { display: none; }
49
+ @include medium-layout { display: none; }
50
+ @include widest-layout { display: flex; }
51
+ }
52
+ .display-flex-medium-and-wide {
53
+ @include narrow-layout { display: none; }
54
+ @include medium-layout { display: flex; }
55
+ @include widest-layout { display: flex; }
56
+ }
57
+
58
+
59
+ // *********************************************************************************************************************
60
+ // display-block-...
61
+ // ---------------------------------------------------------------------------------------------------------------------
62
+ // Will switch a display property to 'block' for the narrow, medium resp wide layout and 'none' for all others.
63
+ //
64
+ // Can be used in custom html code to enable/disable elements.
65
+ //
66
+ .display-block-narrow {
67
+ @include narrow-layout { display: block; }
68
+ @include medium-layout { display: none; }
69
+ @include widest-layout { display: none; }
70
+ }
71
+ .display-block-medium {
72
+ @include narrow-layout { display: none; }
73
+ @include medium-layout { display: block; }
74
+ @include widest-layout { display: none; }
75
+ }
76
+ .display-block-widest {
77
+ @include narrow-layout { display: none; }
78
+ @include medium-layout { display: none; }
79
+ @include widest-layout { display: block; }
80
+ }
81
+ .display-block-medium-and-wide {
82
+ @include narrow-layout { display: none; }
83
+ @include medium-layout { display: block; }
84
+ @include widest-layout { display: block; }
85
+ }
@@ -0,0 +1,252 @@
1
+ // For the vertical menu that can be used on top of the secondary column (wide & mediaum layout) or the
2
+ // primary column (narrow layout).
3
+ //
4
+ // This menu is shown when site.data.setup.navbanner-drop-down-menu is set to 'no'.
5
+ //
6
+ .vmenu-container {
7
+
8
+ // Enable disable
9
+ @include medium-layout { @if $vmenu-enable-medium { display: flex; } @else { display: none; } }
10
+ @include widest-layout { @if $vmenu-enable-widest { display: flex; } @else { display: none; } }
11
+
12
+ // Ordering vertical
13
+ flex-direction: column;
14
+
15
+ // Border of the entire vmenu
16
+ @include medium-layout { border: $vmenu-border-medium; }
17
+ @include widest-layout { border: $vmenu-border-widest; }
18
+
19
+ // Backgound for the entire vmenu
20
+ @include medium-layout { background: $vmenu-background-medium; }
21
+ @include widest-layout { background: $vmenu-background-widest; }
22
+
23
+ // Box appearance for the entire vmenu
24
+ @include medium-layout { box-shadow: $vmenu-box-shadow-medium; }
25
+ @include widest-layout { box-shadow: $vmenu-box-shadow-widest; }
26
+ }
27
+
28
+ .vmenu-container .topTitle {
29
+
30
+ @include medium-layout { @if $vmenu-topTitle-enable-medium { display: flex; } @else { display: none; } }
31
+ @include widest-layout { @if $vmenu-topTitle-enable-widest { display: flex; } @else { display: none; } }
32
+
33
+ @include medium-layout { justify-content: $vmenu-topTitle-justify-content-medium; }
34
+ @include widest-layout { justify-content: $vmenu-topTitle-justify-content-widest; }
35
+
36
+ @include medium-layout { font: $vmenu-topTitle-font-medium; }
37
+ @include widest-layout { font: $vmenu-topTitle-font-widest; }
38
+
39
+ @include medium-layout { color: $vmenu-topTitle-color-medium; }
40
+ @include widest-layout { color: $vmenu-topTitle-color-widest; }
41
+
42
+ @include medium-layout { background: $vmenu-topTitle-background-medium; }
43
+ @include widest-layout { background: $vmenu-topTitle-background-widest; }
44
+
45
+ padding: 0;
46
+ margin: 0;
47
+ width: 100%;
48
+
49
+ @include medium-layout { h1 { padding: $vmenu-topTitle-padding-medium; } }
50
+ @include widest-layout { h1 { padding: $vmenu-topTitle-padding-widest; } }
51
+
52
+ @include medium-layout { h1 { margin: $vmenu-topTitle-margin-medium; } }
53
+ @include widest-layout { h1 { margin: $vmenu-topTitle-margin-widest; } }
54
+ }
55
+
56
+ .vmenu-container .vmenu {
57
+
58
+ // Stack the child elements on top of each other (the child elements are of class 'item')
59
+ display: flex;
60
+ flex-direction: column;
61
+
62
+ // The p's should not drive the display, make them as small as possible
63
+ p { margin: 0px; }
64
+
65
+ a {
66
+ // Remove link underline
67
+ text-decoration: none;
68
+
69
+ // Make sure the whole width and height of the link area is clickable
70
+ display: block;
71
+ }
72
+
73
+ // Make sure the title takes up available space (and since the link is displayed as block, this makes the
74
+ // entire area clickable.
75
+ .title { flex-grow: 1; }
76
+
77
+
78
+ .subitem {
79
+
80
+ // Make the input checkbox invisible
81
+ input { display: none }
82
+
83
+ // Place the components below each other.
84
+ display: flex;
85
+ flex-direction: column;
86
+
87
+ input:checked ~ {
88
+
89
+ // Show the correct symbol for this state.
90
+ .sub,
91
+ .sub-hasLink,
92
+ .sub-isActivePage {
93
+ label .symbol:after { content: $vmenu-subitem-disclosure-symbol-open; }
94
+ }
95
+
96
+ // Show the subsub's
97
+ .subsub,
98
+ .subsub-hasLink,
99
+ .subsub-isActivePage { display: flex }
100
+ }
101
+
102
+ input:disabled ~ {
103
+
104
+ // Show the correct symbol for this state.
105
+ .sub,
106
+ .sub-hasLink,
107
+ .sub-isActivePage {
108
+ label .symbol:after { content: $vmenu-subitem-disclosure-symbol-closed; }
109
+ }
110
+
111
+ // Show the subsub's
112
+ .subsub,
113
+ .subsub-hasLink,
114
+ .subsub-isActivePage { display: none }
115
+ }
116
+
117
+ .sub-isActivePage {
118
+ @include medium-layout { background: $vmenu-subitem-title-background-selected-medium; }
119
+ @include widest-layout { background: $vmenu-subitem-title-background-selected-widest; }
120
+ }
121
+
122
+ .sub,
123
+ .sub-hasLink {
124
+ // Background of the entire subitem
125
+ @include medium-layout { background: $vmenu-subitem-background-medium; }
126
+ @include widest-layout { background: $vmenu-subitem-background-widest; }
127
+ }
128
+
129
+ .sub-hasLink:hover {
130
+ @include medium-layout { background: $vmenu-subitem-title-background-hover-medium; }
131
+ @include widest-layout { background: $vmenu-subitem-title-background-hover-widest; }
132
+ }
133
+
134
+ .sub,
135
+ .sub-hasLink,
136
+ .sub-isActivePage {
137
+
138
+ // Place the components next to each other
139
+ display: flex;
140
+
141
+ .disclosure {
142
+
143
+ // Center the disclosure symbol
144
+ display: flex;
145
+ justify-content: center;
146
+ align-items: center;
147
+
148
+ // Display the proper disclosure symbol
149
+ .symbol:after { content: $vmenu-subitem-disclosure-symbol-closed; }
150
+ }
151
+
152
+ // Border of the entire subitem
153
+ @include medium-layout { border: $vmenu-subitem-border-medium; }
154
+ @include widest-layout { border: $vmenu-subitem-border-widest; }
155
+
156
+
157
+ .disclosure {
158
+ // Create a small separator between symbol and title
159
+ @include medium-layout { border-right: $vmenu-subitem-disclosure-area-border-right-medium; }
160
+ @include widest-layout { border-right: $vmenu-subitem-disclosure-area-border-right-widest; }
161
+
162
+ // Create an indent that can be filled with a disclosure symbol
163
+ @include medium-layout { width: $vmenu-subitem-disclosure-area-width-medium; }
164
+ @include widest-layout { width: $vmenu-subitem-disclosure-area-width-widest; }
165
+ }
166
+
167
+ .title {
168
+
169
+ // The show-hover class is used to show hovering for non-link subitems
170
+ a:hover, .show-hover:hover {
171
+ @include medium-layout { color: $vmenu-subitem-color-hover-medium; }
172
+ @include widest-layout { color: $vmenu-subitem-color-hover-widest; }
173
+ }
174
+
175
+ p {
176
+ // Allow for some padding to position and change the size of this element
177
+ @include medium-layout { padding: $vmenu-subitem-title-padding-medium; }
178
+ @include widest-layout { padding: $vmenu-subitem-title-padding-widest; }
179
+
180
+ // Font for the sub menu title
181
+ @include medium-layout { font: $vmenu-subitem-font-medium; }
182
+ @include widest-layout { font: $vmenu-subitem-font-widest; }
183
+
184
+ // Color for the sub menu title
185
+ @include medium-layout { color: $vmenu-subitem-color-medium; }
186
+ @include widest-layout { color: $vmenu-subitem-color-widest; }
187
+ }
188
+ }
189
+ }
190
+
191
+ .subsub-isActivePage {
192
+ @include medium-layout { background: $vmenu-subsubitem-background-selected-medium; }
193
+ @include widest-layout { background: $vmenu-subsubitem-background-selected-widest; }
194
+ }
195
+
196
+ .subsub,
197
+ .subsub-hasLink {
198
+ @include medium-layout { background: $vmenu-subsubitem-background-medium; }
199
+ @include widest-layout { background: $vmenu-subsubitem-background-widest; }
200
+ }
201
+
202
+ .subsub-hasLink:hover {
203
+ @include medium-layout { background: $vmenu-subsubitem-background-hover-medium; }
204
+ @include widest-layout { background: $vmenu-subsubitem-background-hover-widest; }
205
+ }
206
+
207
+ .subsub,
208
+ .subsub-hasLink,
209
+ .subsub-isActivePage {
210
+
211
+ // Not visible unless the checkbox is active
212
+ display: none;
213
+
214
+ // Set border and background
215
+ @include medium-layout { border: $vmenu-subsubitem-border-medium; }
216
+ @include widest-layout { border: $vmenu-subsubitem-border-widest; }
217
+
218
+ .disclosure {
219
+
220
+ // Create a small separator between symbol and title
221
+ @include medium-layout { border-right: $vmenu-subsubitem-disclosure-area-border-right-medium; }
222
+ @include widest-layout { border-right: $vmenu-subsubitem-disclosure-area-border-right-widest; }
223
+
224
+ // Create an indent that can be filled with a disclosure symbol
225
+ @include medium-layout { width: $vmenu-subsubitem-disclosure-area-width-medium; }
226
+ @include widest-layout { width: $vmenu-subsubitem-disclosure-area-width-widest; }
227
+ }
228
+
229
+ .title {
230
+
231
+ a:hover {
232
+ @include medium-layout { color: $vmenu-subsubitem-color-hover-medium; }
233
+ @include widest-layout { color: $vmenu-subsubitem-color-hover-widest; }
234
+ }
235
+
236
+ p {
237
+ // Allow for some padding to position and change the size of this element
238
+ @include medium-layout { padding: $vmenu-subsubitem-title-padding-medium; }
239
+ @include widest-layout { padding: $vmenu-subsubitem-title-padding-widest; }
240
+
241
+ // Font for the sub menu title
242
+ @include medium-layout { font: $vmenu-subsubitem-font-medium; }
243
+ @include widest-layout { font: $vmenu-subsubitem-font-widest; }
244
+
245
+ // Color for the sub menu title
246
+ @include medium-layout { color: $vmenu-subsubitem-color-medium; }
247
+ @include widest-layout { color: $vmenu-subsubitem-color-widest; }
248
+ }
249
+ }
250
+ }
251
+ }
252
+ }