jekyll-theme-guides-mbland 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.md +13 -0
  3. data/README.md +160 -0
  4. data/_includes/analytics.html +16 -0
  5. data/_includes/breadcrumbs.html +6 -0
  6. data/_includes/footer.html +5 -0
  7. data/_includes/header.html +28 -0
  8. data/_includes/scripts.html +6 -0
  9. data/_includes/sidebar-children.html +17 -0
  10. data/_includes/sidebar.html +14 -0
  11. data/_layouts/default.html +43 -0
  12. data/_layouts/generated/home-redirect.html +6 -0
  13. data/_layouts/search-results.html +4 -0
  14. data/_sass/_jekyll-theme-guides-mbland-custom.scss +50 -0
  15. data/_sass/_jekyll-theme-guides-mbland-main.scss +663 -0
  16. data/_sass/_jekyll-theme-guides-mbland-syntax.scss +60 -0
  17. data/_sass/jekyll-theme-guides-mbland.scss +3 -0
  18. data/assets/css/google-fonts.css +58 -0
  19. data/assets/favicons/favicon.ico +0 -0
  20. data/assets/favicons/favicon16.png +0 -0
  21. data/assets/favicons/favicon32.png +0 -0
  22. data/assets/favicons/touch-icon-120.png +0 -0
  23. data/assets/favicons/touch-icon-152.png +0 -0
  24. data/assets/favicons/touch-icon-76.png +0 -0
  25. data/assets/fonts/opensans-1395a31469a458f6e2069017b504be065ff44897.ttf +0 -0
  26. data/assets/fonts/opensans-3e193feab52524db86cd1508693f2e5086102669.ttf +0 -0
  27. data/assets/fonts/opensans-d4d19ed3a763ce10e050662542bc0318bb620096.svg +1637 -0
  28. data/assets/fonts/opensans-dd44beeac9a044f2c478b70838e447f0af077825.ttf +0 -0
  29. data/assets/fonts/opensans-f0cc9c782f41b44a31392230103f5b4e101a944a.eot +0 -0
  30. data/assets/fonts/raleway-0dd0372e5ca423ab45f41c74cb0f8859d0527517.eot +0 -0
  31. data/assets/fonts/raleway-468d063b5293c0f76e63103d04cf547e7837cdd2.ttf +0 -0
  32. data/assets/fonts/raleway-6c44b90a1e166ce0b659df20e8e374b5e9d97329.svg +347 -0
  33. data/assets/fonts/raleway-c34d475f415db5bc71140225a0284159bd3d85f2.ttf +0 -0
  34. data/assets/js/accordion.js +47 -0
  35. data/assets/js/guide.js +5 -0
  36. data/assets/js/vendor/anchor.min.js +6 -0
  37. data/assets/js/vendor/jquery-1.11.2.min.js +4 -0
  38. metadata +207 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e79364366d4d3392bdd47efda04901a09eee31d0
4
+ data.tar.gz: 29ded9e8074cf019a88525324611745c003ead7b
5
+ SHA512:
6
+ metadata.gz: 8b113bba5ff0a0a6f73d8179a38cdcc1bb3d9150c22b0703b780a3c600fd61c98ec72d7fe2dc53d68d6d524fb64fef3eaae6bb716fb1ae9170d9c09471577099
7
+ data.tar.gz: be60c0b9ed4436e02545e1cbce6dea5204c63e75d191abc1b98a522542db7e31f266dc13c6dda702422bb6faa868800462266254ef0f962b594ac5eaa8a53b0f
@@ -0,0 +1,13 @@
1
+ Copyright (c) 2017 Mike Bland <mbland@acm.org>
2
+
3
+ Permission to use, copy, modify, and/or distribute this software for any purpose
4
+ with or without fee is hereby granted, provided that the above copyright notice
5
+ and this permission notice appear in all copies.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
9
+ FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
11
+ OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
12
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
13
+ THIS SOFTWARE.
@@ -0,0 +1,160 @@
1
+ ## [`jekyll-theme-guides-mbland`](https://rubygems.org/gems/jekyll-theme-guides-mbland): Jekyll theme gem for styling guides
2
+
3
+ [![Build Status](https://travis-ci.org/mbland/jekyll-theme-guides-mbland.svg?branch=master)](https://travis-ci.org/mbland/jekyll-theme-guides-mbland)
4
+
5
+ Provides consistent style elements for guides generated using [Jekyll][] via its
6
+ [themes mechanism][themes]. Originally based on [DOCter][] from [CFPB][].
7
+
8
+ [Jekyll]: https://jekyllrb.com/
9
+ [themes]: https://jekyllrb.com/docs/themes/
10
+ [DOCter]: https://github.com/cfpb/docter/
11
+ [CFPB]: https://cfpb.github.io/
12
+
13
+ ### Usage
14
+
15
+ In your [`Gemfile`][gemfile], include the following:
16
+
17
+ [gemfile]: http://bundler.io/gemfile.html
18
+
19
+ ```ruby
20
+ group :jekyll_plugins do
21
+ gem 'jekyll-theme-guides-mbland'
22
+ end
23
+ ```
24
+
25
+ Add an `assets/css/styles.scss` file that contains at least the following:
26
+
27
+ ```scss
28
+ ---
29
+ ---
30
+
31
+ @import "{{ site.theme }}";
32
+ ```
33
+
34
+ Then in your [`_config.yml` file](https://jekyllrb.com/docs/configuration/),
35
+ add the following (you may need to remove any `layout:`
36
+ [front matter](https://jekyllrb.com/docs/frontmatter/) from existing pages for
37
+ this to take effect):
38
+
39
+ ```yaml
40
+ theme: jekyll-theme-guides-mbland
41
+
42
+ defaults:
43
+ -
44
+ scope:
45
+ path: ""
46
+ values:
47
+ layout: "default"
48
+ ```
49
+
50
+ Build the site per usual, and observe the results.
51
+
52
+ ### Additional features
53
+
54
+ Here are some other features that can be enabled via `_config.yml`:
55
+
56
+ ```yaml
57
+ # This adds the "back to" breadcrumb link under the page title:
58
+ back_link:
59
+ url: "https://guides.example.com/"
60
+ text: Read more Guides
61
+
62
+ # If you use Analytics, add your code here:
63
+ google_analytics_ua: UA-????????-??
64
+
65
+ # If you want all of the navigation bar entries expanded by default, add this
66
+ # property and it to true:
67
+ expand_nav: true
68
+ ```
69
+
70
+ ### Additional scripts and styles
71
+
72
+ If you'd like to add additional scripts or styles to every page on the site,
73
+ you can add `styles:` and `scripts:` lists to `_config.yml`. To add them to a
74
+ particular page, add these lists to the page's front matter.
75
+
76
+ ### Alternate navigation bar titles
77
+
78
+ If you want a page to have a different title in the navigation bar than that
79
+ of the page itself, add a `navtitle:` property to the page's front matter:
80
+
81
+ ```md
82
+ ---
83
+ title: Since brevity is the soul of wit, I'll be brief.
84
+ navtitle: Polonius's advice
85
+ ---
86
+ ```
87
+
88
+ ### Selectively expanding navigation bar items
89
+
90
+ If you wish to expand or contract specific navigation bar items, add the
91
+ `expand_nav:` property to those items in the `navigation:` list in
92
+ `_config.yml`. For example, the `Update the config file` entry will expand
93
+ since the default `expand_nav` property is `true`, but `Add a new page` will
94
+ remain collapsed:
95
+
96
+ ```yaml
97
+ expand_nav: true
98
+
99
+ navigation:
100
+ - text: Introduction
101
+ internal: true
102
+ - text: Add a new page
103
+ url: add-a-new-page/
104
+ internal: true
105
+ expand_nav: false
106
+ children:
107
+ - text: Make a child page
108
+ url: make-a-child-page/
109
+ internal: true
110
+ - text: Update the config file
111
+ url: update-the-config-file/
112
+ internal: true
113
+ children:
114
+ - text: Understanding the `baseurl:` property
115
+ url: understanding-baseurl/
116
+ internal: true
117
+ ```
118
+
119
+ ### Development
120
+
121
+ First, choose a Jekyll site you'd like to use to view the impact of your
122
+ updates and clone its repository; then clone this repository into the same
123
+ parent directory. For example, to use the Guides Template:
124
+
125
+ ```shell
126
+ $ git clone git@github.com:mbland/guides-template-mbland.git
127
+ $ git clone git@github.com:mbland/jekyll-theme-guides-mbland.git
128
+ ```
129
+
130
+ In the `Gemfile` of the Jekyll site's repository, include the following:
131
+
132
+ ```ruby
133
+ group :jekyll_plugins do
134
+ gem 'jekyll-theme-guides-mbland', :path => '../jekyll-theme-guides-mbland'
135
+ end
136
+ ```
137
+
138
+ You can find the different style assets and templates within the `assets`,
139
+ `_layouts`, `_includes`, and `_sass` directories of this repository. Edit those,
140
+ then rebuild the Jekyll site as usual to see the results.
141
+
142
+ Alternatively, you can [copy files from these directories into your site and
143
+ edit them to taste][edit].
144
+
145
+ [edit]: https://jekyllrb.com/docs/themes/#overriding-theme-defaults
146
+
147
+ ### Open Source License
148
+
149
+ This software is made available as [Open Source software][oss-def] under the
150
+ [ISC License][]. For the text of the license, see the [LICENSE](LICENSE.md)
151
+ file.
152
+
153
+ [oss-def]: https://opensource.org/osd-annotated
154
+ [isc license]: https://www.isc.org/downloads/software-support-policy/isc-license/
155
+
156
+ ### Prior work
157
+
158
+ This was adapted from my previous [18F/guides-style][style-old] implementation.
159
+
160
+ [style-old]: https://github.com/18F/guides-style
@@ -0,0 +1,16 @@
1
+ {% if site.google_analytics_ua %}<!-- Google Analytics -->
2
+ <script>
3
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
4
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
5
+ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
6
+ })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
7
+ ga('create', '{{ site.google_analytics_ua }}', 'auto');
8
+
9
+ // anonymize user IPs (chops off the last IP triplet)
10
+ ga('set', 'anonymizeIp', true);
11
+ ga('set', 'forceSSL', true);
12
+ ga('send', 'pageview');
13
+ </script>
14
+
15
+ <!-- Digital Analytics Program roll-up, see https://analytics.usa.gov for data -->
16
+ <script id="_fed_an_ua_tag" src="https://dap.digitalgov.gov/Universal-Federated-Analytics-Min.js?agency=GSA"></script>{% endif %}
@@ -0,0 +1,6 @@
1
+ <div class="breadcrumbs">
2
+ <ol>
3
+ {% for breadcrumb in page.breadcrumbs %}{% if forloop.last %}<li>{{ breadcrumb.text }}{% else %}<li class="parent"><a href="{{ site.baseurl}}{{ breadcrumb.url }}">{{ breadcrumb.text }}</a>{% endif %}</li>
4
+ {% endfor %}
5
+ </ol>
6
+ </div>
@@ -0,0 +1,5 @@
1
+ <footer role="contentinfo">
2
+ <div class="wrap">{% assign repo_url = site.repos[0].url %}
3
+ <p>This project is maintained by <a href="{{ site.author.url }}">{{ site.author.name }}</a>. The source is available at <a href="{{ repo_url }}">{{ repo_url }}</a>.</p>
4
+ </div>
5
+ </footer>
@@ -0,0 +1,28 @@
1
+ <head>
2
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
3
+ <meta charset="utf-8">
4
+ <meta name="viewport" content="width=device-width">
5
+
6
+ {% if page.title %}
7
+ <title>{{ page.title }} - {{ site.name }}</title>
8
+ {% elsif site.title %}
9
+ <title>{{ site.title }} - {{ site.name }}</title>
10
+ {% endif %}
11
+
12
+ {% if page.description %}
13
+ <meta name="description" content="{{ page.description | xml_escape }}">
14
+ {% elsif site.description %}
15
+ <meta name="description" content="{{ site.description | xml_escape }}">
16
+ {% endif %}
17
+
18
+ <link rel="shortcut icon" type="image/ico" href="{{ site.baseurl }}/assets/favicons/favicon.ico" />
19
+ <link rel="icon" type="image/png" sizes="16x16" href="{{ site.baseurl }}/assets/favicons/favicon16.png" />
20
+ <link rel="icon" type="image/png" sizes="32x32" href="{{ site.baseurl }}/assets/favicons/favicon32.png" />
21
+ <link rel="apple-touch-icon" sizes="76x76" href="{{ site.baseurl }}/assets/favicons/touch-icon-76.png" />
22
+ <link rel="apple-touch-icon" sizes="120x120" href="{{ site.baseurl }}/assets/favicons/touch-icon-120.png" />
23
+ <link rel="apple-touch-icon" sizes="152x152" href="{{ site.baseurl }}/assets/favicons/touch-icon-152.png"/>
24
+ <link href='{{ site.baseurl }}/assets/css/google-fonts.css' rel='stylesheet' type='text/css' />
25
+ <link rel="stylesheet" href="{{ site.baseurl }}/assets/css/styles.css" type='text/css' />{% for style in site.styles %}
26
+ <link rel="stylesheet" href="{{ site.baseurl }}/{{ style }}" type='text/css' />{% endfor %}{% for style in page.styles %}
27
+ <link rel="stylesheet" href="{{ site.baseurl }}/{{ style }}" type='text/css' />{% endfor %}
28
+ </head>
@@ -0,0 +1,6 @@
1
+ <script src="{{ site.baseurl }}/assets/js/vendor/jquery-1.11.2.min.js"></script>
2
+ <script src="{{ site.baseurl }}/assets/js/accordion.js"></script>
3
+ <script src="{{ site.baseurl }}/assets/js/guide.js"></script>{% for script in site.scripts %}
4
+ <script src="{{ site.baseurl }}/{{ script }}"></script>{% endfor %}{% for script in page.scripts %}
5
+ <script src="{{ site.baseurl }}/{{ script }}"></script>{% endfor %}
6
+ {% jekyll_pages_api_search_load %}
@@ -0,0 +1,17 @@
1
+ {% if parent.children %}
2
+ {% capture expand_nav %}{% jekyll_theme_guides_mbland_should_expand_nav parent, parent_url %}{% endcapture %}
3
+ <button class="expand-subnav"
4
+ aria-expanded="{{ expand_nav }}"
5
+ aria-controls="nav-collapsible-{{ forloop.index }}">+</button>
6
+ <ul class="nav-children" id="nav-collapsible-{{ forloop.index }}"
7
+ aria-hidden="{% if expand_nav == 'true' %}false{% else %}true{% endif %}">
8
+ {% for child in parent.children %}
9
+ {% capture child_url %}{{ parent_url }}{{ child.url }}{% endcapture %}
10
+ <li class="{% if page.url == child_url %}sidebar-nav-active{% endif %}">
11
+ <a href="{% if child.internal == true %}{{ site.baseurl }}{{ child_url }}{% else %}{{ child.url }}{% endif %}"
12
+ title="{% if page.url == child_url %}Current Page{% else %}{{ child.text }}{% endif %}">{{ child.text }}</a>
13
+ {% assign parent = child %}{% assign parent_url = child_url %}
14
+ {% include sidebar-children.html %}
15
+ {% capture parent_url %}{% jekyll_theme_guides_mbland_pop_last_url_component parent_url %}{% endcapture %}
16
+ </li>{% endfor %}
17
+ </ul>{% endif %}
@@ -0,0 +1,14 @@
1
+ <aside>
2
+ <p class="intro">{{ site.subtitle }}</p>
3
+ <nav class="sidebar-nav" role="navigation">
4
+ <ul>{% for link in site.navigation %}{% capture parent_url %}/{{ link.url }}{% endcapture %}
5
+ <li class="group {% if page.url == parent_url %}sidebar-nav-active{% endif %}">
6
+ <a href="{% if link.internal == true %}{{ site.baseurl }}/{% endif %}{{ link.url }}"
7
+ title="{% if page.url == parent_url %}Current Page
8
+ {% else %}{{ link.text }}{% endif %}">{{ link.text }}</a>
9
+ {% assign parent = link %}
10
+ {% include sidebar-children.html %}
11
+ </li>{% endfor %}
12
+ </ul>
13
+ </nav>
14
+ </aside>
@@ -0,0 +1,43 @@
1
+ <!DOCTYPE html>
2
+ <html lang='en'>
3
+
4
+ {% include header.html %}
5
+
6
+ <body>
7
+
8
+ <div class="container">
9
+ <a class="skip-link visuallyhidden focusable" href="#main">Skip to Main Content</a>
10
+
11
+ <header role="banner">
12
+
13
+ <div class="wrap">
14
+
15
+
16
+ <h1 class="site-title"><a class="title-link" href="{{ site.baseurl }}/">{{ site.name }}</a></h1>
17
+
18
+ {% jekyll_pages_api_search_interface %}{% if site.back_link %}
19
+
20
+ <div class="back-link"><a href="{{ site.back_link.url }}">&laquo; {{ site.back_link.text }}</a></div>{% endif %}
21
+ </div>
22
+ {% include breadcrumbs.html %}
23
+ </header>
24
+
25
+ <div class="wrap content">
26
+
27
+ <section id="main" class="main-content" role="main">
28
+ <h2>{{ page.title }}</h2>
29
+ {{ content }}
30
+ </section>
31
+
32
+ {% include sidebar.html %}
33
+
34
+ </div><!-- /.wrap content -->
35
+
36
+ {% include footer.html %}
37
+
38
+ </div> <!-- /.container -->
39
+
40
+ </body>
41
+ {% include analytics.html %}
42
+ {% include scripts.html %}
43
+ </html>
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head><meta http-equiv="refresh" content="0;URL='{{ site.baseurl }}/#{{ page.title | slugify }}'">
4
+ </head>
5
+ <body></body>
6
+ </html>
@@ -0,0 +1,4 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ {% jekyll_pages_api_search_results %}
@@ -0,0 +1,50 @@
1
+ /*
2
+ This is where custom styles for your guide should live.
3
+ */
4
+
5
+ div.skip-nav a {
6
+ position: absolute;
7
+ left: -10000;
8
+ top: 0;
9
+ width: 1px;
10
+ height: auto;
11
+ overflow: hidden;
12
+ }
13
+ div.skip-nav a:focus {
14
+ position: absolute;
15
+ top: 5px;
16
+ left: 5px;
17
+ width: auto;
18
+ height: auto;
19
+ z-index: 999999;
20
+ background-color: white;
21
+ padding-left: 2px;
22
+ padding-right: 2px;
23
+ overflow: visible;
24
+ }
25
+
26
+ .mainContent:focus {
27
+ outline: none;
28
+ }
29
+
30
+ table, th, td {
31
+ border: 1px solid black;
32
+ padding: 5px;
33
+ margin:5px;
34
+ }
35
+ th {
36
+ background: #767576;
37
+ color:white;
38
+ }
39
+ li.active > a{
40
+ background-color: #317ab9;
41
+ }
42
+
43
+ div.back-link {
44
+ display: block;
45
+ padding-top: .5em;
46
+ }
47
+
48
+ header {
49
+ padding-bottom: 1.5em;
50
+ }
@@ -0,0 +1,663 @@
1
+ @import "jekyll_pages_api_search";
2
+
3
+ /*
4
+ Main.css
5
+ ==================================
6
+ Begin with generic 'mobile first' styles
7
+ */
8
+
9
+ /*
10
+ Normalize the box model
11
+ ==================================
12
+ */
13
+
14
+ *,
15
+ *:before,
16
+ *:after {
17
+ -webkit-box-sizing: border-box;
18
+ -moz-box-sizing: border-box;
19
+ box-sizing: border-box;
20
+ }
21
+
22
+ /*
23
+ global styles
24
+ ==================================
25
+ */
26
+
27
+ html, body {
28
+ height: 100%;
29
+ }
30
+
31
+ /*
32
+ Typography
33
+ ==================================
34
+ */
35
+
36
+ body {
37
+ font-family: "Open Sans", Arial, sans-serif;
38
+ font-weight: 400;
39
+ font-style: normal;
40
+ line-height: 1.466666667;
41
+ margin: 0;
42
+ }
43
+
44
+ h1,
45
+ h2,
46
+ h3,
47
+ h4,
48
+ h5 {
49
+ font-family: "Raleway", Arial, sans-serif;
50
+ font-weight: 600;
51
+ }
52
+
53
+ .site-title {
54
+ font-size: 1.9em;
55
+ color: #919395;
56
+ margin: 0;
57
+ line-height: 1.2941176470588236;
58
+ display: inline-block;
59
+ }
60
+
61
+ h2 {
62
+ font-size: 1.375em;
63
+ margin: 1.4em 0 0 0;
64
+ }
65
+
66
+ h3 {
67
+ margin-top: 30px;
68
+ a {
69
+ border-bottom: 1px dotted #0072ce;
70
+ }
71
+ }
72
+
73
+ h4 {
74
+ font-size: 1em;
75
+ text-transform: uppercase;
76
+ }
77
+
78
+ .page-title {
79
+ margin-top: .727272727em; /* 16/22 */
80
+ }
81
+
82
+ /*
83
+ Lists
84
+ --------------------------------
85
+ */
86
+
87
+ .main-content ul {
88
+ padding-left: 1.1em;
89
+ }
90
+
91
+ .main-content li {
92
+ margin-bottom: 1em;
93
+ }
94
+
95
+ li h3,
96
+ li h4 {
97
+ margin: 0;
98
+ }
99
+
100
+ li p {
101
+ margin-top: 0;
102
+ }
103
+
104
+ /*
105
+ Links
106
+ ==================================
107
+ */
108
+
109
+ a {
110
+ -webkit-transition: .2s;
111
+ -moz-transition: .2s;
112
+ transition: .2s;
113
+ }
114
+
115
+ a,
116
+ a:link,
117
+ a:visited {
118
+ color: #006FC9;
119
+ text-decoration: none;
120
+ }
121
+
122
+ a:hover {
123
+ color: #7eb8dd;
124
+ text-decoration: none;
125
+ }
126
+
127
+ a:active {
128
+ color: #002d72;
129
+ text-decoration: none;
130
+ }
131
+
132
+ a:focus {
133
+ color: #006FC9;
134
+ outline: thin dotted;
135
+ text-decoration: none;
136
+ }
137
+
138
+ a.title-link {
139
+ color: #75787B;
140
+ }
141
+
142
+ a.title-link:hover,
143
+ a.title-link:active,
144
+ a.title-link:focus {
145
+ color: #7eb8dd;
146
+ }
147
+
148
+ a.skip-link {
149
+ color: #fff;
150
+ padding: .25em;
151
+ }
152
+
153
+ a.skip-link:hover,
154
+ a.skip-link:active,
155
+ a.skip-link:focus {
156
+ background-color: #006FC9;
157
+ color: #fff;
158
+ }
159
+
160
+ p {
161
+ a,
162
+ a:link,
163
+ a:visited {
164
+ border-bottom: 1px dotted #0072ce;
165
+
166
+ }
167
+ }
168
+
169
+ /*
170
+ Navigation
171
+ ==================================
172
+ */
173
+
174
+ .breadcrumbs ol {
175
+ list-style: none;
176
+ padding-left: 20px;
177
+ margin: 0px;
178
+ display: inline-block;
179
+ font-size: 14px;
180
+ }
181
+
182
+ .breadcrumbs ol li {
183
+ display: inline;
184
+ }
185
+
186
+ .breadcrumbs ol li:only-child {
187
+ display: none;
188
+ }
189
+
190
+ .breadcrumbs .parent::after {
191
+ content: " >";
192
+ }
193
+
194
+ .sidebar-nav a {
195
+ display: block;
196
+ padding: 10px;
197
+ -webkit-transition: .4s;
198
+ transition: .4s;
199
+ width: 80%;
200
+ float: left;
201
+ }
202
+
203
+ .sidebar-nav a,
204
+ .sidebar-nav a:link,
205
+ .sidebar-nav a:visited {
206
+ border-bottom: none;
207
+ color: #74767B;
208
+ }
209
+
210
+ .sidebar-nav a:hover,
211
+ .sidebar-nav a:focus,
212
+ .sidebar-nav a:active,
213
+ .sidebar-nav .sidebar-nav-active > a {
214
+ color: #74767B;
215
+ border-left: 4px solid #7401DF;
216
+ background-color: transparent;
217
+ }
218
+
219
+ .sidebar-nav ul {
220
+ margin: 0;
221
+ padding: 0;
222
+ }
223
+
224
+ .sidebar-nav li {
225
+ list-style: none;
226
+ border-bottom: 1px solid #babbbd;
227
+ font-size: 1.125em;
228
+ overflow: hidden;
229
+ }
230
+
231
+ .sidebar-nav li:last-child {
232
+ border-bottom: none;
233
+ }
234
+
235
+ .nav-children[aria-hidden=true] {
236
+ max-height: 0;
237
+ }
238
+
239
+ .nav-children {
240
+ clear: both;
241
+ display: block;
242
+ font-size: 14px;
243
+ max-height: initial;
244
+ max-height: 4000px;
245
+ overflow: auto;
246
+ opacity: 1;
247
+ position: relative;
248
+ -webkit-transition: max-height .2s, opacity .2s;
249
+ -moz-transition: max-height .2s, opacity .2s;
250
+ -o-transition: max-height .2s, opacity .2s;
251
+ transition: max-height .2s, opacity .2s;
252
+ }
253
+
254
+ .nav-children li {
255
+ border-bottom: none;
256
+ padding-left: 0;
257
+ }
258
+
259
+ .nav-children a {
260
+ padding: 5px 5px 5px 20px;
261
+ }
262
+
263
+ .nav-children li:last-child a {
264
+ padding-bottom: 10px;
265
+ }
266
+
267
+ .expand-subnav {
268
+ background: none;
269
+ border: none;
270
+ border-radius: 30px;
271
+ color: #0072ce;
272
+ cursor: pointer;
273
+ display: block;
274
+ float: right;
275
+ font-size: 20px;
276
+ height: 30px;
277
+ line-height: 1;
278
+ margin: 8px;
279
+ padding-bottom: 5px;
280
+ position: relative;
281
+ width: 30px;
282
+ -webkit-appearance: none;
283
+ -moz-appearance: none;
284
+ -o-appearance: none;
285
+ appearance: none;
286
+ -webkit-transition: -webkit-transform .2s;
287
+ -moz-transition: -moz-transform .2s;
288
+ -o-transition: -o-transform .2s;
289
+ transition: transform .2s;
290
+ }
291
+
292
+ .expand-subnav:hover,
293
+ .expand-subnav:focus {
294
+ background-color: #0072ce;
295
+ color: #fff;
296
+ outline: none;
297
+ }
298
+
299
+ .expand-subnav[aria-expanded=true] {
300
+ -webkit-transform: rotate(45deg);
301
+ -moz-transform: rotate(45deg);
302
+ -o-transform: rotate(45deg);
303
+ transform: rotate(45deg);
304
+ }
305
+
306
+ /*
307
+ Layout
308
+ ==================================
309
+ */
310
+
311
+ .logo {
312
+ display: block;
313
+ }
314
+
315
+ .content {
316
+ padding-top: 2em;
317
+ padding-bottom: 2em;
318
+ }
319
+
320
+ /* offset the fixed position header for jump links */
321
+ section:before {
322
+ display: block;
323
+ content: "";
324
+ height: 60px;
325
+ margin: -60px 0 0;
326
+ }
327
+
328
+ .wrap {
329
+ max-width: 1200px;
330
+ margin: 0 auto;
331
+ padding-left: 20px;
332
+ padding-right: 20px;
333
+ }
334
+
335
+ header {
336
+ border-bottom: 4px solid #7401DF;
337
+ background-color: #fff;
338
+ padding: 2em 0;
339
+ }
340
+
341
+ header div.wrap{
342
+ position: relative;
343
+ padding-top: 2.4em;
344
+ }
345
+
346
+ header div.wrap::after{
347
+ content: "";
348
+ display: table;
349
+ clear: both;
350
+ }
351
+
352
+ header h1.site-title{
353
+ margin-bottom: 0.4em;
354
+ }
355
+
356
+ header div.wrap div.back-link{
357
+ position: absolute;
358
+ left: 20px;
359
+ top: -1em;
360
+ font-size: 14px;
361
+ color: #555;
362
+ }
363
+
364
+ header div.wrap div.back-link a{
365
+ color: inherit;
366
+ text-decoration: underline;
367
+ }
368
+
369
+ header div.wrap div.back-link a:hover{ text-decoration: none; }
370
+
371
+ @media screen and (min-width: 45em){
372
+ header h1.site-title{
373
+ float: left;
374
+ width: 67%;
375
+ text-overflow: ellipsis;
376
+ overflow: hidden;
377
+ white-space: nowrap;
378
+ }
379
+ }
380
+
381
+ .main-content img {
382
+ max-width: 100%;
383
+ }
384
+
385
+ /*
386
+ Footer
387
+ ==================================
388
+ */
389
+
390
+ /* for sticky footer */
391
+ .container {
392
+ display: table;
393
+ height: 100%;
394
+ width: 100%;
395
+ }
396
+
397
+ footer {
398
+ display: table-row; /* for sticky footer */
399
+ height: 1px; /* for sticky footer */
400
+ border-top: 2px solid #babbbd;
401
+ background: #f1f2f2;
402
+ width: 100%;
403
+ font-size: 0.875em;
404
+ }
405
+
406
+ footer .wrap {
407
+ padding-top: 2em;
408
+ padding-bottom: 2em;
409
+ }
410
+
411
+
412
+ /*
413
+ Helpers
414
+ ==================================
415
+ */
416
+
417
+ /* Hide from both screenreaders and browsers: h5bp.com/u */
418
+ .hidden {
419
+ display: none !important;
420
+ visibility: hidden;
421
+ }
422
+
423
+ /* Hide only visually, but have it available for screenreaders: h5bp.com/v */
424
+ .visuallyhidden {
425
+ border: 0;
426
+ clip: rect(0 0 0 0);
427
+ height: 1px;
428
+ margin: -1px;
429
+ overflow: hidden;
430
+ padding: 0;
431
+ position: absolute;
432
+ width: 1px;
433
+ }
434
+
435
+ /* Extends the .visuallyhidden class to allow the element to be focusable
436
+ * when navigated to via the keyboard: h5bp.com/p */
437
+ .visuallyhidden.focusable:active,
438
+ .visuallyhidden.focusable:focus {
439
+ clip: auto;
440
+ height: auto;
441
+ margin: 0;
442
+ overflow: visible;
443
+ position: static;
444
+ width: auto;
445
+ }
446
+
447
+ /* Hide visually and from screenreaders, but maintain layout */
448
+ .invisible {
449
+ visibility: hidden;
450
+ }
451
+
452
+
453
+ /*
454
+ Style
455
+ ==================================
456
+ */
457
+
458
+ .intro {
459
+ color: #75787B;
460
+ }
461
+
462
+ li h4 {
463
+ margin: 0;
464
+ }
465
+
466
+ .license {
467
+ font-family: "Avenir Next Demi", Arial, sans-serif;
468
+ font-weight: normal;
469
+ font-style: normal;
470
+ }
471
+
472
+ pre {
473
+ max-width: 100%;
474
+ font-size: 0.875em;
475
+ overflow-y: scroll;
476
+ background-color: #f1f2f2;
477
+ padding: 10px;
478
+ }
479
+
480
+ /*
481
+ Post list
482
+ ----------------------------------
483
+ */
484
+
485
+ ul.posts {
486
+ padding: 0;
487
+ }
488
+
489
+ .posts li {
490
+ list-style: none;
491
+ }
492
+
493
+ .post-date {
494
+ color: #75787B;
495
+ }
496
+
497
+ /*
498
+ Repo list
499
+ ----------------------------------
500
+ */
501
+
502
+ ul.repo-list {
503
+ margin: .5em 0 1em 0;
504
+ padding: 0;
505
+ }
506
+
507
+ .repo-list li {
508
+ list-style: none;
509
+ }
510
+
511
+ .repo-list p {
512
+ margin: 0;
513
+ font-size: 0.875em;
514
+ }
515
+
516
+ .repo-list h4 {
517
+ text-transform: none;
518
+ }
519
+
520
+ /*
521
+ Helper Classes
522
+ ==================================
523
+ */
524
+
525
+ /*
526
+ Clearfix list
527
+ ----------------------------------
528
+ */
529
+
530
+ .group:before,
531
+ .group:after {
532
+ content: " ";
533
+ display: table;
534
+ }
535
+
536
+ .group:after {
537
+ clear: both;
538
+ }
539
+
540
+ .group {
541
+ *zoom: 1;
542
+ }
543
+
544
+ /*
545
+ Desktop Styles
546
+ ==================================
547
+ */
548
+
549
+ @media screen and (min-width: 45em) {
550
+
551
+ /*
552
+ Typography
553
+ ==============================
554
+ */
555
+
556
+ /*
557
+ Layout
558
+ ==============================
559
+ */
560
+
561
+ .logo {
562
+ max-width: 30%;
563
+ padding-right: 20px;
564
+ margin-top: -12px;
565
+ float: right;
566
+ }
567
+
568
+ aside {
569
+ width: 30%;
570
+ float: left;
571
+ }
572
+
573
+ .main-content {
574
+ width: 67%;
575
+ float: right;
576
+ margin-bottom: 120px;
577
+ }
578
+
579
+ .main-content img {
580
+ max-width: 100%;
581
+ }
582
+
583
+ /*
584
+ Navigation
585
+ ==============================
586
+ */
587
+
588
+ .anchorjs-link {
589
+ border: none;
590
+ }
591
+
592
+ /*
593
+ Style
594
+ ==============================
595
+ */
596
+
597
+ /*
598
+ Repo list
599
+ ------------------------------
600
+ */
601
+
602
+ .repo-list li {
603
+ list-style: none;
604
+ display: block;
605
+ float: left;
606
+ height: 4.0625em;
607
+ max-height: 4.0625em;
608
+ background-color: #E7E7E6;
609
+ border-left: 1px solid #BABBBD;
610
+ width: 30%;
611
+ }
612
+
613
+ .repo-list a:link,
614
+ .repo-list a:visited {
615
+ display: block;
616
+ max-height: 4.0625em;
617
+ background-color: #E7E7E6;
618
+ border-bottom: none;
619
+ padding: .625em 1em 1em 1em;
620
+ }
621
+
622
+ .repo-list a:hover {
623
+ color: #4D5F87;
624
+ background-color: #CDE3F1;
625
+ }
626
+
627
+ .repo-list li:first-child {
628
+ text-align: center;
629
+ border-left: none;
630
+ line-height: 60px;
631
+ padding: .625em 1em;
632
+ width: 10%;
633
+ }
634
+
635
+ }
636
+
637
+ @media screen and (max-width: 54.375em) {
638
+
639
+ /* keep the repo list containers the same height, but account for the need for more height */
640
+
641
+ .repo-list li {
642
+ height: 6em;
643
+ max-height: 6em;
644
+ }
645
+
646
+ .repo-list a:link,
647
+ .repo-list a:visited {
648
+ max-height: 6em;
649
+ }
650
+ }
651
+
652
+ /*
653
+ Mobile Styles
654
+ ==================================
655
+ */
656
+
657
+ @media screen and (max-width: 40.5em) {
658
+
659
+ .main-content {
660
+ margin-top: 1.5em;
661
+ }
662
+
663
+ }