diff --git a/.bowerrc b/.bowerrc
deleted file mode 100644
index 06a1d1dd93..0000000000
--- a/.bowerrc
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "directory": "docs/bower_components"
-}
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 9e4e7f3eb1..2b37f8a5da 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@ vendor/
.ruby-version
_site/
node_modules/
+bower_components/
diff --git a/.hound.yml b/.hound.yml
deleted file mode 100644
index 15269ddb06..0000000000
--- a/.hound.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-scss:
- enabled: true
- config_file: scss/.scss-lint.yml
-
-ruby:
- enabled: false
-
-coffee_script:
- enabled: false
-
-java_script:
- enabled: false
diff --git a/.npmignore b/.npmignore
new file mode 100644
index 0000000000..72630dab3d
--- /dev/null
+++ b/.npmignore
@@ -0,0 +1,19 @@
+.bundle/config
+bower_components/
+bin/
+_config.yml
+.DS_Store
+docs/
+Gemfile
+Gemfile.lock
+.git/
+.gitignore
+Gruntfile.js
+.hound.yml
+vendor/
+.sass-cache/
+.ruby-version
+node_modules/
+.sass-cache/
+.scss-lint.yml
+_site/
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
deleted file mode 100644
index 50451725c2..0000000000
--- a/CONTRIBUTING.md
+++ /dev/null
@@ -1,79 +0,0 @@
-## Contributing
-
-[fork]: https://github.com/github/primer/fork
-[pr]: https://github.com/github/primer/compare
-[style]: http://primercss.io/guidelines/
-
-Hi there! We're thrilled that you'd like to contribute to this project. Your help is essential for keeping it great.
-
-After you open your first pull request, you will be asked to accept [this license agreement](https://cla.github.com/). Let us know in the PR if you have any hesitation or concerns.
-
-## Using the issue tracker
-
-The [issue tracker](https://github.com/primer/primer/issues) is the preferred channel for [bug reports](#bug-reports), [features requests](#feature-requests) and [submitting pull requests](#pull-requests), but please respect the following restrictions:
-
-* Please **do not** use the issue tracker for personal support requests.
-* Please **do not** derail or troll issues. Keep the discussion on topic and respect the opinions of others.
-* Please **do not** open issues or pull requests regarding the code in [`Normalize`](https://github.com/necolas/normalize.css) (open them in their respective repositories).
-
-## Bug reports
-
-A bug is a _demonstrable problem_ that is caused by the code in the repository. Good bug reports are extremely helpful, so thanks!
-
-Guidelines for bug reports:
-
-0. **Validate and lint your code** — [validate your HTML](http://html5.validator.nu) to ensure your problem isn't caused by a simple error in your own code.
-
-1. **Use the GitHub issue search** — check if the issue has already been reported.
-
-2. **Check if the issue has been fixed** — try to reproduce it using the latest `master` or development branch in the repository.
-
-3. **Isolate the problem** — ideally create a [reduced test case](https://css-tricks.com/reduced-test-cases/) and a live example. [This JS Bin](http://jsbin.com/lefey/1/edit?html,output) is a helpful template.
-
-A good bug report shouldn't leave others needing to chase you up for more information. Please try to be as detailed as possible in your report. What is your environment? What steps will reproduce the issue? What browser(s) and OS experience the problem? Do other browsers show the bug differently? What would you expect to be the outcome? All these details will help people to fix any potential bugs.
-
-Example:
-
-> Short and descriptive example bug report title
->
-> A summary of the issue and the browser/OS environment in which it occurs. If
-> suitable, include the steps required to reproduce the bug.
->
-> 1. This is the first step
-> 2. This is the second step
-> 3. Further steps, etc.
->
-> `` - a link to the reduced test case
->
-> Any other information you want to share that is relevant to the issue being reported. This might include the lines of code that you have identified as causing the bug, and potential solutions (and your opinions on their merits).
-
-## Feature requests
-
-Feature requests are welcome. But take a moment to find out whether your idea fits with the scope and aims of the project. It's up to *you* to make a strong case to convince the project's developers of the merits of this feature. Please provide as much detail and context as possible.
-
-## Pull requests
-
-Good pull requests—patches, improvements, new features—are a fantastic help. They should remain focused in scope and avoid containing unrelated commits.
-
-**Please ask first** before embarking on any significant pull request (e.g. implementing features, refactoring code, porting to a different language), otherwise you risk spending a lot of time working on something that the project's developers might not want to merge into the project.
-
-Adhering to the following process is the best way to get your work included in the project:
-
-1. Fork and clone the repository
-2. Configure and install the dependencies: `bower install`
-3. Create a new branch: `git checkout -b my-branch-name`
-4. Make your change, add tests, and make sure the tests still pass
-5. Push to your fork and [submit a pull request](https://help.github.com/articles/creating-a-pull-request/)
-6. Pat your self on the back and wait for your pull request to be reviewed and merged.
-
-Here are a few things you can do that will increase the likelihood of your pull request being accepted:
-
-- Follow the [style guide][style].
-- Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests.
-- Write a [good commit message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html).
-
-## Resources
-
-- [Contributing to Open Source on GitHub](https://guides.github.com/activities/contributing-to-open-source/)
-- [Using Pull Requests](https://help.github.com/articles/using-pull-requests/)
-- [GitHub Help](https://help.github.com)
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000000..0c97120f0f
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,11 @@
+source 'https://rubygems.org'
+
+require 'json'
+require 'open-uri'
+versions = JSON.parse(open('https://pages.github.com/versions.json').read)
+
+gem 'github-pages', versions['github-pages']
+
+gem 'jekyll'
+gem 'rouge'
+gem 'sass'
diff --git a/Gemfile.lock b/Gemfile.lock
new file mode 100644
index 0000000000..bc6324d7df
--- /dev/null
+++ b/Gemfile.lock
@@ -0,0 +1,141 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ RedCloth (4.2.9)
+ activesupport (4.2.4)
+ i18n (~> 0.7)
+ json (~> 1.7, >= 1.7.7)
+ minitest (~> 5.1)
+ thread_safe (~> 0.3, >= 0.3.4)
+ tzinfo (~> 1.1)
+ addressable (2.3.8)
+ blankslate (2.1.2.4)
+ bower (0.0.5)
+ multi_json
+ classifier-reborn (2.0.3)
+ fast-stemmer (~> 1.0)
+ coffee-script (2.4.1)
+ coffee-script-source
+ execjs
+ coffee-script-source (1.9.1.1)
+ colorator (0.1)
+ ethon (0.8.0)
+ ffi (>= 1.3.0)
+ execjs (2.6.0)
+ fast-stemmer (1.0.2)
+ ffi (1.9.10)
+ gemoji (2.1.0)
+ github-pages (39)
+ RedCloth (= 4.2.9)
+ github-pages-health-check (~> 0.2)
+ jekyll (= 2.4.0)
+ jekyll-coffeescript (= 1.0.1)
+ jekyll-feed (= 0.3.1)
+ jekyll-mentions (= 0.2.1)
+ jekyll-redirect-from (= 0.8.0)
+ jekyll-sass-converter (= 1.3.0)
+ jekyll-sitemap (= 0.8.1)
+ jemoji (= 0.5.0)
+ kramdown (= 1.5.0)
+ liquid (= 2.6.2)
+ maruku (= 0.7.0)
+ mercenary (~> 0.3)
+ pygments.rb (= 0.6.3)
+ rdiscount (= 2.1.7)
+ redcarpet (= 3.3.2)
+ terminal-table (~> 1.4)
+ github-pages-health-check (0.5.3)
+ addressable (~> 2.3)
+ net-dns (~> 0.8)
+ public_suffix (~> 1.4)
+ typhoeus (~> 0.7)
+ html-pipeline (1.9.0)
+ activesupport (>= 2)
+ nokogiri (~> 1.4)
+ i18n (0.7.0)
+ jekyll (2.4.0)
+ classifier-reborn (~> 2.0)
+ colorator (~> 0.1)
+ jekyll-coffeescript (~> 1.0)
+ jekyll-gist (~> 1.0)
+ jekyll-paginate (~> 1.0)
+ jekyll-sass-converter (~> 1.0)
+ jekyll-watch (~> 1.1)
+ kramdown (~> 1.3)
+ liquid (~> 2.6.1)
+ mercenary (~> 0.3.3)
+ pygments.rb (~> 0.6.0)
+ redcarpet (~> 3.1)
+ safe_yaml (~> 1.0)
+ toml (~> 0.1.0)
+ jekyll-coffeescript (1.0.1)
+ coffee-script (~> 2.2)
+ jekyll-feed (0.3.1)
+ jekyll-gist (1.3.4)
+ jekyll-mentions (0.2.1)
+ html-pipeline (~> 1.9.0)
+ jekyll (~> 2.0)
+ jekyll-paginate (1.1.0)
+ jekyll-redirect-from (0.8.0)
+ jekyll (>= 2.0)
+ jekyll-sass-converter (1.3.0)
+ sass (~> 3.2)
+ jekyll-sitemap (0.8.1)
+ jekyll-watch (1.3.0)
+ listen (~> 3.0)
+ jemoji (0.5.0)
+ gemoji (~> 2.0)
+ html-pipeline (~> 1.9)
+ jekyll (>= 2.0)
+ json (1.8.3)
+ kramdown (1.5.0)
+ liquid (2.6.2)
+ listen (3.0.3)
+ rb-fsevent (>= 0.9.3)
+ rb-inotify (>= 0.9)
+ maruku (0.7.0)
+ mercenary (0.3.5)
+ mini_portile (0.6.2)
+ minitest (5.8.1)
+ multi_json (1.11.2)
+ net-dns (0.8.0)
+ nokogiri (1.6.6.2)
+ mini_portile (~> 0.6.0)
+ parslet (1.5.0)
+ blankslate (~> 2.0)
+ posix-spawn (0.3.11)
+ public_suffix (1.5.1)
+ pygments.rb (0.6.3)
+ posix-spawn (~> 0.3.6)
+ yajl-ruby (~> 1.2.0)
+ rb-fsevent (0.9.6)
+ rb-inotify (0.9.5)
+ ffi (>= 0.5.0)
+ rdiscount (2.1.7)
+ redcarpet (3.3.2)
+ rouge (1.10.1)
+ safe_yaml (1.0.4)
+ sass (3.4.18)
+ terminal-table (1.5.2)
+ thread_safe (0.3.5)
+ toml (0.1.2)
+ parslet (~> 1.5.0)
+ typhoeus (0.8.0)
+ ethon (>= 0.8.0)
+ tzinfo (1.2.2)
+ thread_safe (~> 0.1)
+ yajl-ruby (1.2.1)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ bower
+ github-pages (= 39)
+ jekyll
+ json
+ rouge
+ sass
+
+BUNDLED WITH
+ 1.10.5
diff --git a/Gruntfile.js b/Gruntfile.js
index a1d6dc51dc..3a524563e8 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -13,60 +13,17 @@ module.exports = function(grunt) {
},
dist: {
files: {
- 'css/primer.css': 'scss/primer.scss'
+ 'assets/css/origin.css': 'assets/scss/origin.scss'
}
}
},
- // Handle vendor prefixing
- postcss: {
- options: {
- processors: [
- require('autoprefixer-core')({ browsers: ['last 2 versions', 'ie 8', 'ie 9'] })
- ]
- },
- dist: {
- src: 'css/*.css'
- },
- docs: {
- src: '_site/*.css'
- }
- },
-
- // Runs CSS reporting
- parker: {
- options: {
- metrics: [
- 'TotalStylesheets',
- 'TotalStylesheetSize',
- 'TotalRules',
- 'TotalSelectors',
- 'TotalIdentifiers',
- 'TotalDeclarations',
- 'SelectorsPerRule',
- 'IdentifiersPerSelector',
- 'SpecificityPerSelector',
- 'TopSelectorSpecificity',
- 'TopSelectorSpecificitySelector',
- 'TotalIdSelectors',
- 'TotalUniqueColours',
- 'TotalImportantKeywords',
- 'TotalMediaQueries'
- ],
- file: "css/.primer-stats.md",
- usePackage: true
- },
- src: [
- 'css/*.css'
- ]
- },
-
// Build tooling
watch: {
sass: {
- files: ['scss/**/*.scss', 'docs/docs.scss'],
- tasks: ['sass', 'postcss', 'parker']
+ files: ['assets/scss/*.scss', 'assets/scss/**/*.scss', 'assets/scss/**/**/*.scss'],
+ tasks: ['sass']
}
},
@@ -78,6 +35,24 @@ module.exports = function(grunt) {
}
},
+ browserSync: {
+ dev: {
+ bsFiles: {
+ src : [
+ '_site/*.*',
+ '_site/**/*.*',
+ '_site/**/**/*.*',
+ '_site/**/**/**/*.*',
+ '_site/**/**/**/**/*.*',
+ '_site/**/**/**/**/**/*.*'
+ ]
+ },
+ options: {
+ proxy: "localhost:4001/origin/"
+ }
+ }
+ },
+
buildcontrol: {
options: {
dir: '_site',
@@ -87,7 +62,7 @@ module.exports = function(grunt) {
},
pages: {
options: {
- remote: 'git@github.com:primer/primer.git',
+ remote: 'git@github.com:fac/origin.git',
branch: 'gh-pages'
}
}
@@ -95,16 +70,15 @@ module.exports = function(grunt) {
});
// Load dependencies
- grunt.loadNpmTasks('grunt-postcss');
+ grunt.loadNpmTasks('grunt-browser-sync');
grunt.loadNpmTasks('grunt-build-control');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-jekyll');
- grunt.loadNpmTasks('grunt-parker');
grunt.loadNpmTasks('grunt-sass');
// Generate and format the CSS
- grunt.registerTask('default', ['sass', 'jekyll', 'postcss', 'parker']);
+ grunt.registerTask('default', ['browserSync']);
// Publish to GitHub
- grunt.registerTask('publish', ['jekyll', 'postcss:docs', 'buildcontrol:pages']);
+ grunt.registerTask('publish', ['jekyll', 'buildcontrol:pages']);
};
diff --git a/MAINTAINING.md b/MAINTAINING.md
deleted file mode 100644
index fad610c729..0000000000
--- a/MAINTAINING.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintaining
-
-Steps for updating and releasing changes to Primer and it's site.
-
-## Versioning
-
-Primer follows the semantic versioning approach:
-
-- Bug fixes and docs updates are patch releases, so `1.0.x`.
-- New additions are minor updates, so `1.x.x`.
-- Deleting or rewriting anything are major updates, so `x.x.x`.
-
-## Changelogs and milestones
-
-Changelogs are handled with dedicated tracking issues ([see example](https://github.com/primer/primer/issues/108)). When starting work on a new release:
-
-1. Open a new milestone.
-2. Open a new tracking issue and immediately lock it. (No comments are needed, ship lists are just for us.)
-3. As you close issues and merge pull requests, add a link to those threads to the tracking issue.
-
-When the release and milestone are about ready to ship, move on the the releasing flow.
-
-## Releasing
-
-Have a new version to release? Hell yeah, let's do it.
-
-1. Bump the version numbers in `_config.yml` for our docs and `package.json` for dependency management.
-2. Run `$ grunt` to generate the latest compiled CSS and Parker stats.
-3. Recompile Jekyll for the latest docs changes.
-4. Punt any remaining open issues and PRs on the milestone to the next milestone, then close that milestone.
-5. Head to and create a new release. Title it `vX.X.X` and post the changelog to the body.
-6. Run `$ grunt publish` to push the latest docs and CSS changes to .
-7. Rejoice!
diff --git a/README.md b/README.md
index 51c1b4d73a..3859086e90 100644
--- a/README.md
+++ b/README.md
@@ -1,95 +1,93 @@
-# Primer
+# Origin
-Primer is the CSS toolkit that powers GitHub's front-end design. It's purposefully limited to common components to provide our developers with the most flexibility, and to keep GitHub uniquely *GitHubby*. It's built with SCSS and available via Bower, so it's easy to include all or part of it within your own project.
+Origin is FreeAgent’s internal CSS framework. We’re a growing team working across a range of different projects and codebases, and making CSS work at scale is hard. Agreed principles, approaches, and patterns mean we can do better work faster. That’s what Origin gives us.
-[**Read the Primer documentation**](http://primercss.io) to learn more.
+Origin consumes our [CSS utilities](https://github.com/fac/fa-css-utilities) and provides some global UI components. It also documents our [principles](http://fac.github.io/origin/principles/) and HTML & CSS [code style](http://fac.github.io/origin/code-style/). We use it in our desktop app, mobile apps, website, and a bunch of other projects.
+
+[**Read the Origin documentation**](http://fac.github.io/origin/) to learn more.
-_**Heads up!** We love open source, but Primer is unlikely to add new features that are not used in GitHub.com. It's first and foremost our CSS toolkit. We really love to share though, so hopefully that means we're still friends <3._
## Contents
- [Install](#install)
-- [Usage](#usage)
-- [Documentation](#documentation)
- - [Dependencies](#dependencies)
- - [Running locally](#running-locally)
+- [Structure](#structure)
+ - [Documentation](#documentation)
- [Publishing](#publishing)
- - [Primer stats](#primer-stats)
-- [Updating](#updating)
+- [Implementing Origin into a project](#implementing-origin-into-a-project)
+- [Development](#development)
+ - [Developing ideas locally](#developing-ideas-locally)
- [Contributing](#contributing)
-- [Versioning](#versioning)
- [License](#license)
+
## Install
-### Manually
+Following these steps will install Origin and it’s docs locally, and allow you to push documentation changes to GitHub Pages.
-Download the [latest release](https://github.com/primer/primer/releases/latest) and copy the SCSS files over to your own project. Once your files are in place, jump to the [usage guidelines](#usage) for including Primer into your own CSS.
+**If you want to implement Origin into a project and don’t want the documentation, [follow these instructions](#implementing-origin-into-a-project)**
-### Bower
+Prerequisites: Ruby, [Bundler](http://bundler.io/), [Node.js](http://nodejs.org/download/)
+```bash
+$ git clone git@github.com:fac/origin.git
+$ cd origin
+$ chruby ruby-2.1.2 (or whatever your non-system version of Ruby is)
+$ bundle install
+$ npm install
+$ npm install -g grunt-cli (if you don’t already have Grunt installed)
+$ npm install -g bower (if you don’t already have Bower installed)
+$ bower install
```
-$ bower install primer-css --save
-```
-
-### Things to know
-**Hey, GitHubbers!** For GitHub.com, you'll need to `cd` into `vendor/assets` and run `bower install` there. Be sure to commit and push all the changes, including the `bower.json` and everything under `bower_components`.
+Then start a local Jekyll server:
-## Usage
-
-Once included, simply `@import` either the master SCSS file, or the individual files as you need them.
+```bash
+$ bundle exec jekyll serve
+```
-```scss
-// Example: All of Primer
-@import "primer-css/scss/primer";
+Now open a new terminal window and start Browsersync:
-// Example: Individual files
-@import "primer-css/scss/variables";
-@import "primer-css/scss/mixins";
-@import "primer-css/scss/base";
+```bash
+$ grunt
```
-## Documentation
+A new browser tab should open to `http://localhost:3001/origin/`. The docs don't run at root because when published to GitHub Pages they lives at `/origin`. There is an established workaround for this, but it’s not applicable to sites where the Jekyll source is anywhere other than the root directory, and ours lives in `/docs`.
-Primer's documentation is built with Jekyll and published to `http://primercss.io` via the `gh-pages` branch.
-### Dependencies
+## Structure
-You'll need the following installed:
+Very little of this repository is actually part of the [`origin-css`](https://www.npmjs.com/package/origin-css) npm package. Only:
-- Latest Jekyll (minimum v2.2.0): `$ gem install jekyll`
-- Latest Rouge: `$ gem install rouge`
-- Latest Sass: `$ gem install sass`
-- Latest Grunt CLI: `$ npm install -g grunt-cli`
-- [Node.js and npm](http://nodejs.org/download/)
+```
+.
+├── assets
+| ├── fonts
+| └── scss
+├── LICENSE.md
+├── package.json
+└── README.md
+```
-Chances are you have all this already if you work on `github/github` or similar projects. If you have all those set up, now you can install the dependencies:
+These are the only files needed to implement Origin in a project, so that’s all npm needs to know about. [`.npmignore`](https://github.com/fac/origin/blob/master/.npmignore) defines what’s hidden from npm in the same way a `.gitignore` file does.
-```bash
-$ npm install
-$ bower install
-```
+If you want to make changes to Origin, it’s these files you want to change. The rest of the repository is dedicated to the documentation.
-### Running locally
+### Documentation
-From the Terminal, start a local Jekyll server:
+Origin’s documentation is built with Jekyll and Grunt. It can be run locally, and is published to [http://fac.github.io/origin/](http://fac.github.io/origin/) via the [`gh-pages`](https://github.com/fac/origin/tree/gh-pages) branch.
-```bash
-$ jekyll serve
-```
+Aside from Jekyll’s [`_config.yml`](https://github.com/fac/origin/blob/master/_config.yml) and Grunt’s [`Gruntfile.js`](https://github.com/fac/origin/blob/master/Gruntfile.js), all files related to documentation live in [`/docs`](https://github.com/fac/origin/tree/master/docs).
-Open a second Terminal tab to automatically recompile the Sass files, run autoprefixer, and update our [Primer stats file](#primer-stats):
+Here’s where things get a bit inception-y: **Origin’s documentation _uses Origin_ to document Origin**.
-```bash
-$ grunt watch
-```
+The [`/docs/assets`](https://github.com/fac/origin/tree/master/docs/assets) directory contains many of the same files as the root `/assets` directory (the one included in the npm package). In this sense, the Origin docs are a good example of how you might implement Origin into a project.
+
+But the real purpose of the docs (aside from the obvious) is to give us a sandbox for trying new ideas and approaches before considering them for deployment. It’s our “kitchen sink” view of utilities and components.
-Alternatively, you can manually run `grunt` and `jekyll serve` when needed.
### Publishing
-Use the included Grunt task to generate and publish Primer's docs to the `gh-pages` branch.
+Use the included Grunt task to generate and publish Origin’s docs to the `gh-pages` branch.
```bash
$ grunt publish
@@ -97,55 +95,65 @@ $ grunt publish
This takes the `_site` directory, generates it's own Git repository there, and publishes the contents to the `gh-pages` branch here on GitHub. Changes are reflected in the hosted docs within a minute or so.
-### Primer stats
-When compiling or watching the Sass files, Primer will automatically generate a `.primer-stats.md` file. This is tracked in the Git repository to provide us historical and contextual information on the changes we introduce. For example, we'll know when the number of selectors or declarations rises sharply within a single change.
+## Implementing Origin into a project
-## Updating
+These instructions assume you’re implementing Origin into a new or existing project. Origin is installed via npm, and assumes your project already has mechanisms in place for compiling Sass.
-Within `bower.json`, update to a new release by changing the version number that follows the `#` in the dependency URL.
+Requirements: [Node.js and npm](http://nodejs.org/download/).
-```json
-{
- "name": "myapp",
- "dependencies": {
- "primer-css": "x.x.x"
- }
-}
+```bash
+$ cd
+$ npm install origin-css --save
```
-To pull down the updated package, `cd` into `vendor/assets`, and run `bower install`.
+This will add the Origin files to a new `/origin-css` directory inside the `/node_modules` directory at the root of your project, and save `origin-css` as a dependency in your `package.json` file. If npm isn’t yet being used in your project, running the above command will create the `/node_modules` directory too. You’ll want to [create a package](https://docs.npmjs.com/cli/init) to manage your npm dependencies.
-```
-$ cd vendor/assets
-$ bower install
-```
+After installing, do the following:
+
+1. Copy the contents of [/origin-css/assets/scss/local](https://github.com/fac/origin/tree/master/assets/scss/local) to your project’s stylesheet directory. Just the contents, not the directory itself.
+2. Use `origin.scss` as your master stylesheet, or copy it’s contents into your existing master stylesheet. You’ll need to change the paths to the global Sass partials if the location of your stylesheets directory isn’t the standard Rails `app/assets/stylesheets`.
-Check in `bower.json` and all changes under `vendor/assets/bower_components`.
## Development
-Development of Primer happens in our primary branch, `master`. For stable versions, see the [releases page](https://github.com/primer/primer/releases). `master` will always be up to date with the latest changes, including those which have yet to be released.
+Development of Origin happens in our primary branch, `master`. For stable versions, see the [releases page](https://github.com/fac/origin/releases). `master` will always be up to date with the latest changes, including those which have yet to be released.
+
+### Developing ideas locally
+
+As mentioned [above](#documentation), Origin’s documentation _uses_ Origin. The [`/docs`](https://github.com/fac/origin/tree/master/docs) directory is the place to experiment with new ideas before considering adding any of them to the root [`/assets`](https://github.com/fac/origin/tree/master/assets) directory.
+
+It’s also possible to try out new ideas for Origin in any other projects where it’s implemented. npm provides a way to point to your _local version of Origin_ instead of referencing the one installed by npm. This means you could, for example, trial changing the `background-color` of a button in Origin and see the effect it has in your app without actually having to push a new version of the Origin package to npm.
+
+[How to symlink a package folder](https://docs.npmjs.com/cli/link)
+
## Contributing
-By contributing to Primer, you agree to the terms presented in [this license agreement](https://cla.github.com/). *More information will be provided here soon.*
+All team members should be contributing back to this repo in order to improve it. All HTML and CSS should conform to the [style guidelines](http://fac.github.io/origin/code-style/).
+
+Editor preferences are available in the [editor config](https://github.com/fac/origin/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at .
-When contributing changes to Primer, be sure to do the following steps when opening a pull request:
+The process:
-1. Bump the version number in `bower.json` (it's purely placebo right now, but it's good habit) and `package.json`.
-2. Run `grunt` and commit the changes. This compiles the SCSS to CSS so we can do basic analysis on the number of selectors, file size, etc.
+#### Branch off, make changes, create a PR
-In addition, please read through our [contributing guidelines](https://github.com/primer/primer/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
+1. Make sure you're up to date with the master branch (`git fetch; git pull origin master`)
+2. Branch off master (`git checkout -b `) and make your changes
+3. Increment the version numbers in [_config.yml](https://github.com/fac/origin/blob/master/_config.yml) and [package.json](https://github.com/fac/origin/blob/master/package.json). Generally: backwards-compatible fixes and smaller amendments to existing code are patches, new components and breaking changes count as minor releases, and full rewrites are major releases. See [semver.org](http://semver.org/) for detailed guidance.
+4. Push up your changes (`git push origin `) and write a [helpful pull request](https://github.com/blog/1943-how-to-write-the-perfect-pull-request) describing your changes
-All HTML and CSS should conform to the [style guidelines](http://primercss.io/guidelines).
+#### Get your PR reviewed, merge to master, create new release
-Editor preferences are available in the [editor config](https://github.com/primer/primer/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at .
+5. Ask a fellow designer or engineer to review your changes. Make any required changes, then merge your branch into master: `git checkout master; git merge --no-ff `
+6. Push up the new version of master (`git push origin master`).
+7. [Create a new release](https://help.github.com/articles/creating-releases/) with a useful description. Your original PR is probably a good starting point. **If you’re making breaking changes, provide guidance in the release notes about what people will have to change in their projects**
+8. [Publish the NPM package](https://docs.npmjs.com/getting-started/publishing-npm-packages) (`npm publish`). If you don't yet have access to update the npm package, have someone in the design team [add you as an owner](https://docs.npmjs.com/cli/owner).
-## Versioning
+#### Let people know, consider upgrading other projects
-For transparency into our release cycle and in striving to maintain backward compatibility, Primer is maintained under [the Semantic Versioning guidelines](http://semver.org/). Sometimes we screw up, but we'll adhere to those rules whenever possible.
+If this a major or minor release, let people in the #design and/or #dev Slack channels know by linking to the release. Consider bringing other projects up to date with your new release, especially [Origin](https://github.com/fac/origin).
## License
-Created by and copyright GitHub, Inc. Released under the [MIT license](LICENSE.md).
+Origin is based on a fork of [Primer](https://github.com/primer/primer), created by and copyright of GitHub, Inc. Released under the [MIT license](LICENSE.md).
diff --git a/_config.yml b/_config.yml
index b62055d728..e713e22e4c 100644
--- a/_config.yml
+++ b/_config.yml
@@ -1,18 +1,26 @@
+# Directory where the site will be built from
+source: docs
+
+permalink: pretty
+
+port: 4001
+
+# Because the deployed site doesn’t live at the root fac.github.io URL; it lives
+# at fac.github.io/origin
+baseurl: "/origin"
+
+# Markdown processors
markdown: kramdown
highlighter: rouge
-
kramdown:
auto_ids: true
-permalink: pretty
-source: docs
-baseurl: ""
-
-version: 2.3.3
+version: 0.2.1
sass:
- sass_dir: ../
+ # Directory points to root allowing `@import` of .scss files from anywhere
+ sass_dir: assets/scss
style: compressed
github:
- repo: https://github.com/primer/primer
+ repo: https://github.com/fac/origin
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-Black.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Black.eot
new file mode 100755
index 0000000000..747914e3f6
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Black.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-BlackIt.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-BlackIt.eot
new file mode 100755
index 0000000000..a56b5c32dd
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-BlackIt.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-Bold.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Bold.eot
new file mode 100755
index 0000000000..e9f423425c
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Bold.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-BoldIt.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-BoldIt.eot
new file mode 100755
index 0000000000..d375ef51c6
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-BoldIt.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot
new file mode 100755
index 0000000000..f4dbef9022
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot
new file mode 100755
index 0000000000..da735de357
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-It.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-It.eot
new file mode 100755
index 0000000000..55ad8562ee
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-It.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-Light.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Light.eot
new file mode 100755
index 0000000000..ea7f671316
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Light.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-LightIt.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-LightIt.eot
new file mode 100755
index 0000000000..d7cb9a72fd
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-LightIt.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-Regular.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Regular.eot
new file mode 100755
index 0000000000..ba7f8d9515
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Regular.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-Semibold.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Semibold.eot
new file mode 100755
index 0000000000..2f7a52c454
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-Semibold.eot differ
diff --git a/assets/fonts/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot b/assets/fonts/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot
new file mode 100755
index 0000000000..d8504fed78
Binary files /dev/null and b/assets/fonts/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot differ
diff --git a/assets/fonts/SourceSansPro/LICENSE.txt b/assets/fonts/SourceSansPro/LICENSE.txt
new file mode 100644
index 0000000000..07efc6de21
--- /dev/null
+++ b/assets/fonts/SourceSansPro/LICENSE.txt
@@ -0,0 +1,93 @@
+Copyright 2010, 2012, 2014 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries.
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+
+This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-Black.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Black.otf
new file mode 100755
index 0000000000..0c25f3d9b7
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Black.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-BlackIt.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-BlackIt.otf
new file mode 100755
index 0000000000..da3504c68c
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-BlackIt.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-Bold.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Bold.otf
new file mode 100755
index 0000000000..98dbee74d5
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Bold.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-BoldIt.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-BoldIt.otf
new file mode 100755
index 0000000000..6600c86319
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-BoldIt.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf
new file mode 100755
index 0000000000..f885ce7f61
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf
new file mode 100755
index 0000000000..f932024272
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-It.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-It.otf
new file mode 100755
index 0000000000..2d627d9cf9
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-It.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-Light.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Light.otf
new file mode 100755
index 0000000000..159979f600
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Light.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-LightIt.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-LightIt.otf
new file mode 100755
index 0000000000..e3d49b5fd1
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-LightIt.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-Regular.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Regular.otf
new file mode 100755
index 0000000000..bdcfb27a4f
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Regular.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-Semibold.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Semibold.otf
new file mode 100755
index 0000000000..fffdbafeb7
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-Semibold.otf differ
diff --git a/assets/fonts/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf b/assets/fonts/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf
new file mode 100755
index 0000000000..e90515b3e1
Binary files /dev/null and b/assets/fonts/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-Black.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Black.ttf
new file mode 100755
index 0000000000..9c9b5cb7f0
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Black.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf
new file mode 100755
index 0000000000..294ce5abe8
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-Bold.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Bold.ttf
new file mode 100755
index 0000000000..5d65c93242
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Bold.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf
new file mode 100755
index 0000000000..3decd13007
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf
new file mode 100755
index 0000000000..253eafa378
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf
new file mode 100755
index 0000000000..00d7e9a7aa
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-It.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-It.ttf
new file mode 100755
index 0000000000..f7af537759
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-It.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-Light.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Light.ttf
new file mode 100755
index 0000000000..83a0a33666
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Light.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-LightIt.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-LightIt.ttf
new file mode 100755
index 0000000000..f18827985e
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-LightIt.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-Regular.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Regular.ttf
new file mode 100755
index 0000000000..44486cdc67
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Regular.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-Semibold.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Semibold.ttf
new file mode 100755
index 0000000000..86b00c067e
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-Semibold.ttf differ
diff --git a/assets/fonts/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf b/assets/fonts/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf
new file mode 100755
index 0000000000..13d66a1fc4
Binary files /dev/null and b/assets/fonts/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff
new file mode 100755
index 0000000000..f1a663a7ed
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff
new file mode 100755
index 0000000000..1d7dfbdb29
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff
new file mode 100755
index 0000000000..6700893c22
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff
new file mode 100755
index 0000000000..d5e4a0ff9f
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff
new file mode 100755
index 0000000000..559b740812
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff
new file mode 100755
index 0000000000..e8fbeb8fe6
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff
new file mode 100755
index 0000000000..4b8af41547
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff
new file mode 100755
index 0000000000..10490ec577
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff
new file mode 100755
index 0000000000..13532d7d39
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff
new file mode 100755
index 0000000000..04739e7fba
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff
new file mode 100755
index 0000000000..17d744d1b1
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff
new file mode 100755
index 0000000000..a5b5e1e1d1
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff
new file mode 100755
index 0000000000..b7e8620092
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff
new file mode 100755
index 0000000000..c3314b1ef0
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff
new file mode 100755
index 0000000000..d1d40f840f
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff
new file mode 100755
index 0000000000..ef6ff514d3
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff
new file mode 100755
index 0000000000..1e6c94d9eb
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff
new file mode 100755
index 0000000000..7a408b1ec7
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff
new file mode 100755
index 0000000000..4d54bc9571
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff
new file mode 100755
index 0000000000..1706d57d3c
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff
new file mode 100755
index 0000000000..87378d6c60
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff
new file mode 100755
index 0000000000..460ab12a63
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff
new file mode 100755
index 0000000000..43379631b2
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff
new file mode 100755
index 0000000000..232c2048ae
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2
new file mode 100755
index 0000000000..d6f4b60e63
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2
new file mode 100755
index 0000000000..c52b3c8000
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2
new file mode 100755
index 0000000000..7d7f34b9e9
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2
new file mode 100755
index 0000000000..4d14ef7ff0
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2
new file mode 100755
index 0000000000..bdb21cb439
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2
new file mode 100755
index 0000000000..aee47e3513
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2
new file mode 100755
index 0000000000..00e212c55e
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2
new file mode 100755
index 0000000000..2dd7ca3b11
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2
new file mode 100755
index 0000000000..5ee08bea99
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2
new file mode 100755
index 0000000000..d76e39091f
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2
new file mode 100755
index 0000000000..8c27c1840e
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2 b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2
new file mode 100755
index 0000000000..f963d7810d
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2
new file mode 100755
index 0000000000..c90d078406
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2
new file mode 100755
index 0000000000..b87e22c41b
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2
new file mode 100755
index 0000000000..0f46f3e833
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2
new file mode 100755
index 0000000000..8007df6df3
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2
new file mode 100755
index 0000000000..b715f27408
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2
new file mode 100755
index 0000000000..d8f9d29d4a
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2
new file mode 100755
index 0000000000..a00852641f
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2
new file mode 100755
index 0000000000..d8b610ad76
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2
new file mode 100755
index 0000000000..e0eebac827
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2
new file mode 100755
index 0000000000..0dd3464c74
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2
new file mode 100755
index 0000000000..2526d2e1b6
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2 differ
diff --git a/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2 b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2
new file mode 100755
index 0000000000..606935af08
Binary files /dev/null and b/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2 differ
diff --git a/assets/scss/global/components/_button.scss b/assets/scss/global/components/_button.scss
new file mode 100644
index 0000000000..e6d77d63f4
--- /dev/null
+++ b/assets/scss/global/components/_button.scss
@@ -0,0 +1,84 @@
+/**
+ * Buttons
+ */
+
+/**
+ * Remove the default Webkit glow to more closely mimic native mobile apps
+ */
+
+button:focus {
+ outline: none;
+}
+
+/**
+ * Vanilla styles for any element with .Button class
+ */
+
+.Button {
+ border-style: solid;
+ border-width: 1px;
+ border-color: rgba(0,0,0,0.08) rgba(0,0,0,0.15) rgba(0,0,0,0.28) rgba(0,0,0,0.15);
+ cursor: pointer;
+ display: inline-block;
+ text-align: center;
+ @include border-radius(default);
+ @include box-shadow(0, 1px, 0, rgba(0,0,0,0.05));
+ @include font-size(default);
+ @include font-weight(semi-bold);
+ @include linear-gradient(#fff,darken(#fff,6%));
+ @include padding-bottom(3);
+ @include padding-left(6);
+ @include padding-right(6);
+ @include padding-top(3);
+ @include tap-highlight(none);
+ @include text-color(base);
+ @include user-select(none);
+}
+
+.Button:active,
+.Button:focus,
+.Button:hover {
+ background: darken(#fff, 6%);
+ border-color: rgba(0, 0, 0, 0.08);
+ color: darken($color--base, 10%);
+ text-decoration: none;
+ @include box-shadow(0, 0, 0, rgba(0, 0, 0, 0));
+}
+
+/**
+ * Button disabled state
+ *
+ * 'disabled' HTML attribute should also be applied to the element
+ */
+
+.Button.is-disabled {
+ background: rgba(0, 0, 0, 0.10) !important;
+ border: 0;
+ color: rgba(0, 0, 0, 0.2) !important;
+ cursor: pointer;
+ text-shadow: none;
+ @include box-shadow(0, 0, 0, rgba(0, 0, 0, 0));
+}
+
+/**
+ * Positive button variant
+ *
+ * Used as primary CTA for completing tasks e.g. sending an invoice
+ */
+
+.Button--positive {
+ border-color: darken($color--fa-green, 3%) darken($color--fa-green, 5%) darken($color--fa-green, 10%) darken($color--fa-green, 5%);
+ color: #fff;
+ text-shadow: 0 1px 0 darken($color--fa-green, 10%);
+ @include linear-gradient($color--fa-green, darken($color--fa-green, 5%));
+}
+
+.Button--positive:active,
+.Button--positive:focus,
+.Button--positive:hover {
+ background: darken($color--fa-green, 5%);
+ border-color: darken($color--fa-green, 3%);
+ color: #fff;
+ text-shadow: none;
+ @include box-shadow(0,0,0,rgba(0,0,0,0));
+}
diff --git a/assets/scss/global/components/_navbar.scss b/assets/scss/global/components/_navbar.scss
new file mode 100644
index 0000000000..744411de36
--- /dev/null
+++ b/assets/scss/global/components/_navbar.scss
@@ -0,0 +1,83 @@
+/* NavBar
+ ==========================================================================
+ The blue navigation bar that contains the view title and navigation options
+*/
+
+/**
+ * Base styles for the navigation bar
+ *
+ * All variants of the NavBar have these styles in common
+ */
+
+.NavBar {
+ display: block;
+ width: 100%;
+ @include background-color(fa-blue);
+ @include floatContainer;
+}
+
+/**
+ * Main navbar title
+ */
+
+.NavBar-title {
+ color: #fff;
+ margin: 0;
+ @include font-size(large);
+ @include line-height(x-tight);
+}
+
+/**
+ * Override standard link color in the navbar title
+ */
+.NavBar-title-link {
+ color: #fff;
+}
+
+/**
+ * Override standard link hover color in the navbar title
+ */
+
+.NavBar-title-link:hover,
+.NavBar-title-link:focus {
+ color: #fff;
+}
+
+
+/* Desktop NavBar
+ ==========================================================================
+ Desktop app variant of the blue navigation bar that contains the company
+ name and navigation options
+*/
+
+/**
+ * 1. Applied in the ruleset because the desktop app does not currently use
+ * `box-sizing: border-box` by default.
+ * 2. Only has a `padding-top` value because of the tabbed navigation in the
+ * desktop app that sits flush with the bottom of the NavBar.
+ */
+
+.NavBar--desktop {
+ /* 1 */
+ box-sizing: border-box;
+ /* 2 */
+ @include padding-top(default);
+}
+
+/**
+ * Main navbar title
+ * 1. Applied in the ruleset because the desktop app does not currently use
+ * `box-sizing: border-box` by default.
+ * 2. Moves the title in from the left to keep it aligned with the navigation
+ * tabs
+ * 3. Matches the `padding-top` on the `.NavBar`
+ */
+
+.NavBar--desktop .NavBar-title {
+ /* 1 */
+ box-sizing: border-box;
+ /* 2 */
+ margin-left: 15px;
+ /* 3 */
+ @include margin-bottom(default);
+}
diff --git a/assets/scss/global/components/_notice.scss b/assets/scss/global/components/_notice.scss
new file mode 100644
index 0000000000..471789513d
--- /dev/null
+++ b/assets/scss/global/components/_notice.scss
@@ -0,0 +1,351 @@
+/**
+ * Notices
+ *
+ * Notices are used to communicate messages directly to the user about the state
+ * of a view or a particular element
+ *
+ * Types of Notices include: form error notices, invoice state notices
+ */
+
+/**
+ * Base styles for Notices
+ *
+ * 1. Default; overridden with other classes
+ * 2. To help position the down arrow icon that appears as part of error notices
+ */
+
+.Notice {
+ /* 1 */
+ display: table;
+ padding: 7px 15px 8px 15px;
+ /* 2 */
+ position: relative;
+ text-align: center;
+ width: 100%;
+ @include background-color(gray-14);
+ @include font-size(small);
+ @include line-height(loose);
+ @include text-color(gray-5);
+}
+
+/**
+ * Give Notice links a heavier weight
+ */
+
+.Notice a {
+ @include font-weight(semi-bold);
+}
+
+/**
+ * Custom style for Notice titles (an optional element)
+ */
+
+.Notice-title {
+ margin: 5px 0;
+ @include font-size(default);
+ @include font-weight(semi-bold);
+}
+
+/**
+ * Increase top and bottom padding for taller notices
+ */
+
+.Notice--taller {
+ padding-bottom: 15px;
+ padding-top: 15px;
+}
+
+/**
+ * Style a notice for negative messages (as used by errors)
+ */
+
+.Notice--negative {
+ @include background-color(fa-red--x-light);
+ @include text-color(negative);
+}
+
+/**
+ * Style notice links for negative messages
+ */
+
+.Notice--negative a,
+.Notice--negative a:visited {
+ @include text-color(negative);
+}
+
+/**
+ * Style a notice for negative action messages
+ */
+
+.Notice--negative-action {
+ color: #fff;
+ @include background-color(fa-red);
+}
+
+/**
+ * Style notice links for negative action messages
+ */
+
+.Notice--negative-action a,
+.Notice--negative-action a:visited {
+ color: #fff;
+}
+
+/**
+ * Style a notice for positive messages
+ */
+
+.Notice--positive {
+ @include background-color(fa-green--x-light);
+ @include text-color(positive);
+}
+
+/**
+ * Style notice links for positive messages
+ */
+
+.Notice--positive a,
+.Notice--positive a:visited {
+ @include text-color(positive);
+}
+
+/**
+ * Style a notice for positive action messages
+ */
+
+.Notice--positive-action {
+ color: #fff;
+ @include background-color(fa-green);
+}
+
+/**
+ * Style notice links for positive action messages
+ */
+
+.Notice--positive-action a,
+.Notice--positive-action a:visited {
+ color: #fff;
+}
+
+/**
+ * Style a notice for warning messages
+ */
+
+.Notice--warning {
+ @include background-color(fa-yellow--x-light);
+ @include text-color(warning);
+}
+
+/**
+ * Style notice links for warning messages
+ */
+
+.Notice--warning a,
+.Notice--warning a:visited {
+ @include text-color(warning);
+}
+
+/**
+ * Style a notice for warning action messages
+ */
+
+.Notice--warning-action {
+ color: #fff;
+ @include background-color(fa-yellow);
+}
+
+/**
+ * Style notice links for warning action messages
+ */
+
+.Notice--warning-action a,
+.Notice--warning-action a:visited {
+ color: #fff;
+}
+
+/**
+ * Style a notice for messages discussing expired or written-off items
+ */
+
+.Notice--expired {
+ background: none;
+ @include text-color(gray-5);
+}
+
+/**
+ * Style notice links for expired or written-off items
+ */
+
+.Notice--expired a,
+.Notice--expired a:visited {
+ @include text-color(gray-5);
+}
+
+/**
+ * Style a notice for messages discussing refunded items
+ */
+
+.Notice--refunded {
+ @include background-color(fa-purple--x-light);
+ @include text-color(fa-purple);
+}
+
+/**
+ * Style notice links for refunded items
+ */
+
+.Notice--refunded a,
+.Notice--refunded a:visited {
+ @include text-color(fa-purple);
+}
+
+/**
+ * Style a notice like a flash message; pops down from underneath the NavBar
+ *
+ * 1. Required to prevent the element becoming visible when the user scolls
+ * the view (it seems to stick to the viewport; hopefully a future Mobile
+ * Safari version will remove the need for this)
+ */
+
+.Notice--flash {
+ position: absolute;
+ /* 1 */
+ visibility: hidden;
+}
+
+/**
+ * Visible state of flash message
+ */
+
+.Notice--flash.is-visible {
+ visibility: visible;
+ @include transition;
+}
+
+/**
+ * This animations quickly slides down the `Notice--flash` from below the `NavBar`
+ * and keeps it visible for a bit, then slides it quickly up underneatah the `NavBar`.
+ *
+ * We can achieve the same effect using plain css attributes and property transitions,
+ * however that approach gives us a rendering issue on the expense category page.
+ */
+@include keyframes(Notice--flash) {
+ 0% {
+ @include translate3d(0, -100%, 0);
+ }
+
+ 10% {
+ @include translate3d(0, 0, 0);
+ }
+
+ 90% {
+ @include translate3d(0, 0, 0);
+ }
+
+ 100% {
+ @include translate3d(0, -100%, 0);
+ }
+}
+
+/**
+ * Style a notice like an infobox; used for locked item notices
+ */
+
+.Notice--infobox {
+ background: #F3EDBF;
+ color: #635646;
+}
+
+/**
+ * Custom title for infobox-style notices
+ */
+
+.Notice--infobox .Notice-title {
+ color: #635646;
+}
+
+.Notice--infobox .Icon--locked .Icon-path {
+ fill: #635646;
+}
+
+/**
+ * Vertically centre notice content within its parent container
+ */
+
+.Notice-content {
+ display: block;
+ width: 100%;
+}
+
+/**
+ * Give strong notice element a heavier text weight
+ */
+
+.Notice strong {
+ @include font-weight(semi-bold);
+}
+
+/**
+ * Remove bottom padding from the last paragraph in a Notice
+ */
+
+.Notice p:last-child {
+ margin-bottom: 8px;
+}
+
+/**
+ * Arrow icons point to field with errors on them; aligned to the left by default
+ */
+
+.Notice .Icon--arrow {
+ bottom: -5px;
+ left: (15px);
+ position: absolute;
+}
+
+/**
+ * Make the down arrow icon the same colour as the negative notice background
+ */
+
+.Notice--negative .Icon--arrow--pointsDown {
+ border-top-color: $color--fa-red--x-light;
+
+ //AndyI Added in these to fix positioning
+ top: auto;
+ -webkit-transform: none;
+ transform: none;
+}
+
+/**
+ * Split the notice up into two columns if two notices exist on adjacent cells
+ */
+
+.Notice--split .Notice-content-split {
+ float: left;
+ margin-left: 10%;
+ width: 45%;
+}
+
+/**
+ * Don't include the left-hand margin on the first notice; it's parent already has padding
+ */
+
+.Notice--split .Notice-content-split:first-child {
+ margin-left: 0;
+}
+
+/**
+ * AndyI If a table cell has an error next to it - move it down a bit to line it up
+ */
+
+.has-Notice .TableView-cell--split {
+ padding-top: 41px;
+}
+
+/**
+ * AndyI Where there's long error messages, don't inherit white-space wrapping
+ */
+
+.Notice-content p {
+ white-space: normal;
+}
diff --git a/assets/scss/global/components/_segmented-control.scss b/assets/scss/global/components/_segmented-control.scss
new file mode 100644
index 0000000000..4e91757e71
--- /dev/null
+++ b/assets/scss/global/components/_segmented-control.scss
@@ -0,0 +1,144 @@
+/**
+ * Segmented control
+ *
+ * A segmented control is a horizontal control made of multiple segments, each
+ * segment functioning as a discrete button. Segment text get truncated when
+ * too long to fit into the width of the segment.
+ *
+ * There are three variants of SegmentedControl:
+ * — Low contrast variant: your default choice; contrasts well with other form elements
+ * — Base colour variant: use within a view when it really needs to stick out
+ * — High contrast version: to be used against a base colour background (like the NavBar)
+ */
+
+.SegmentedControl {
+ border: 1px solid $color--gray-9;
+ height: 30px;
+ margin: 0;
+ padding: 0;
+ text-align: center;
+ @include border-radius(default);
+ @include line-height(tight);
+ @include flexbox(flex);
+ @include flex-align-items(stretch);
+ @include flex-direction(row);
+ @include flex-justify-content(center);
+}
+
+/**
+ * Individual segment buttons
+ */
+
+.SegmentedControl-segment {
+ background: none;
+ border-color: $color--gray-9;
+ border-style: solid;
+ border-width: 0 1px 0 0;
+ display: inline-block;
+ margin: 0;
+ padding: 0 4px 1px 4px;
+ @include flex(1);
+ @include text-truncate;
+ @include text-color(gray-9);
+}
+
+/**
+ * Individual segment buttons in their active state
+ */
+
+.SegmentedControl-segment:active {
+ @include background-color(gray-15);
+}
+
+/**
+ * Currently selected individual segment button
+ */
+
+.SegmentedControl-segment--selected,
+.SegmentedControl-segment--selected:active {
+ color: #fff;
+ @include background-color(gray-9);
+}
+
+/**
+ * Apply appropriate border radius to the first segment in a SegmentedControl
+ */
+
+.SegmentedControl .SegmentedControl-segment:first-child {
+ border: 0;
+ border-radius: 3px 0 0 3px;
+}
+
+/**
+ * Apply appropriate border radius to the last segment in a SegmentedControl
+ */
+
+.SegmentedControl .SegmentedControl-segment:last-child {
+ border: 0;
+ border-radius: 0 3px 3px 0;
+}
+
+/* High contrast variant
+ ========================================================================== */
+
+/**
+ * A higher contrast variant of the SegmentedControl, to be used primarily on
+ * the base colour background
+ */
+
+.SegmentedControl--contrastHigh {
+ border-color: darken($color--base, 10%);
+}
+
+.SegmentedControl--contrastHigh .SegmentedControl-segment {
+ color: darken($color--base, 10%);
+ border-color: darken($color--base, 10%);
+}
+
+.u-background-color--fa-blue .SegmentedControl--contrastHigh .SegmentedControl-segment {
+ color: darken($color--base, 15%);
+}
+
+.u-background-color--fa-blue .SegmentedControl--contrastHigh .SegmentedControl-segment:active {
+ background: darken($color--base, 1.5%);
+}
+
+.SegmentedControl--contrastHigh .SegmentedControl-segment--selected,
+.SegmentedControl--contrastHigh .SegmentedControl-segment--selected:active {
+ background: darken($color--base, 10%);
+ color: #fff !important;
+}
+
+/* Low contrast variant
+ ========================================================================== */
+
+/**
+ * Light grey variant which sits well when placed amongst other form fields
+ * and/or TableView-cells
+ */
+
+.SegmentedControl--contrastLow {
+ border-color: $color--gray-11;
+}
+
+/**
+ * Reduce opacity of the SegmentedControl when its parent TableView-cell is in a
+ * disabled state
+ */
+
+.TableView-cell.is-disabled .SegmentedControl--contrastLow {
+ opacity: 0.8;
+}
+
+.SegmentedControl--contrastLow .SegmentedControl-segment {
+ color: darken($color--gray-11, 15%);
+ border-color: $color--gray-11;
+}
+
+.SegmentedControl--contrastLow .SegmentedControl-segment--selected,
+.SegmentedControl--contrastLow .SegmentedControl-segment--selected:active,
+.TableView-cell.is-disabled .SegmentedControl--contrastLow .SegmentedControl-segment--selected,
+.TableView-cell.is-disabled .SegmentedControl--contrastLow .SegmentedControl-segment--selected:active {
+ color: #fff !important;
+ @include background-color(gray-11);
+}
diff --git a/assets/scss/global/components/_tabs.scss b/assets/scss/global/components/_tabs.scss
new file mode 100644
index 0000000000..3e3cd52ef0
--- /dev/null
+++ b/assets/scss/global/components/_tabs.scss
@@ -0,0 +1,124 @@
+/* Tabs
+ ========================================================================== */
+
+/**
+ * The `Tabs` component is a horizontal control made of multiple tabs, each
+ * tab functioning as a discrete button. Tab text get truncated when
+ * too long to fit into the width of its parent.
+ */
+
+.Tabs {
+ display: block;
+ height: 55px;
+ margin: 0;
+ padding: 0;
+ position: relative;
+ text-align: center;
+ width: 100%;
+ @include background-color(fa-blue--dark);
+ @include box-shadow(0, 1px, 2px, rgba(0, 0, 0, 0.08), inset);
+ @include line-height(default);
+ @include flexbox(flex);
+ @include flex-align-items(stretch);
+ @include flex-direction(row);
+ @include flex-justify-content(center);
+}
+
+/**
+ * Individual tabs
+ */
+
+.Tabs-tab {
+ background: none;
+ border-color: $color--fa-blue--x-dark;
+ border-style: solid;
+ border-width: 0 1px 0 0;
+ color: rgba(255, 255, 255, 0.5);
+ display: inline-block;
+ height: 100%;
+ margin: 0;
+ overflow: visible !important;
+ padding: 0 0.5em;
+ position: relative;
+ @include font-size(small);
+ @include flex(1);
+ @include text-truncate;
+}
+
+.retina .Tabs-tab {
+ border-right-width: 0.5px;
+}
+
+/**
+ * Individual tabs in their active state
+ *
+ * 1. Custom colour local to this particular state of this component in FreeAgent
+ * Mobile. This is a deliberate deviation from the palette in our utility
+ * library, as adding a new colour purely for this state is excessive and
+ * unnecessary. Variable value can be found in stylesheets/variables/_colours.scss.
+ */
+
+.Tabs-tab:active,
+.Tabs-tab:hover {
+ /* 1 */
+ background-color: #0060A3;
+}
+
+/**
+ * Currently selected tab
+ */
+
+.Tabs-tab--selected,
+.Tabs-tab--selected:active {
+ color: #fff;
+ @include background-color(fa-blue--x-dark);
+}
+
+/**
+ * Apply appropriate border radius to the last tab
+ */
+
+.Tabs .Tabs-tab:last-child {
+ border: 0;
+}
+
+.Count--tab-count {
+ left: 50%;
+ position: absolute;
+ top: 0;
+ @include transform(translateX(-50%) translateY(-50%));
+}
+
+.Count--tab-count--bottom {
+ bottom: 0;
+ top: auto;
+ @include transform(translateX(-50%) translateY(50%));
+}
+
+.Count--tab-count:before {
+ background: rgba(0, 0, 0, 0.1);
+ border-radius: 100px;
+ content: "";
+ left: -4px;
+ height: calc(100% + 8px);
+ position: absolute;
+ top: -4px;
+ width: calc(100% + 8px);
+}
+
+.Count--tab-count--outerTab {
+ @include transform(translateX(-50%) translateY(-35%));
+}
+
+.Count-digit {
+ color: #fff;
+ border-radius: 100px;
+ display: inline-block;
+ min-width: 1.75em;
+ padding: 0.35em;
+ position: relative;
+ text-align: center;
+ @include font-size(x-small);
+ @include font-weight(semi-bold);
+ @include line-height(tight);
+}
diff --git a/assets/scss/global/fonts/_font-functions.scss b/assets/scss/global/fonts/_font-functions.scss
new file mode 100644
index 0000000000..ade22f1d92
--- /dev/null
+++ b/assets/scss/global/fonts/_font-functions.scss
@@ -0,0 +1,77 @@
+/* Utility functions for generating correct `@font-face` code
+ ========================================================================== */
+
+/**
+ * Function to return a list of values associated with a list of keys
+ *
+ * Examples
+ * $map: (a: 1, b: 2, c: 3)
+ * map-selected-values($map, (a, c))
+ * => (1, 3)
+ * Returns list
+ */
+
+@function map-select-values($map, $selection, $separator) {
+ $values: ();
+ @each $key in $selection {
+ $values: append($values, map-get($map, $key), $separator);
+ }
+ @return $values;
+}
+
+
+/**
+ * Internal: This builds the list of font formats based on what browsers and font
+ * types we're supporting. These are defined by the global variables
+ * $support-ie8 and $use-opentype.
+ * The default is to support ie8 but not to use opentype.
+ *
+ * Supporting ie8 enables additional formats. Using opentype makes more font
+ * styles available but for a larger download.
+ */
+
+@function choose-browser-formats() {
+ $chosen-formats: ();
+
+ @if $support-ie8 {
+ $chosen-formats: append($chosen-formats, embedded-opentype);
+ }
+
+ @if $use-opentype {
+ $chosen-formats: join($chosen-formats, opentype-woff opentype-woff2 opentype);
+ } @else {
+ $chosen-formats: join($chosen-formats, truetype-woff truetype-woff2 truetype);
+ }
+
+ @return $chosen-formats;
+}
+
+
+/**
+ * This chooses the font sources based on font type and browser support, which
+ * is set by global variables.
+ *
+ * Examples
+ * Given the following SASS:
+ * @font-face {
+ * src: supported-font-sources((
+ * embedded-opentype: url('font.eot') format('embedded-opentype'),
+ * truetype-woff2: url('font.ttf.woff2') format('woff2'),
+ * opentype-woff2: url('font.otf.woff2') format('woff2'),
+ * truetype-woff: url('font.ttf.woff') format('woff'),
+ * opentype-woff: url('font.otf.woff') format('woff')
+ * }
+ *
+ * if $enable-ie8: true and $use-opentype: true the following CSS is generated:
+ * font-face {
+ * src: url('font.eot') format('embedded-opentype'),
+ * opentype-woff2: url('font.otf.woff2') format('woff2'),
+ * opentype-woff: url('font.otf.woff') format('woff')
+ * }
+ * Returns a list suitable for the src attribute of @font-face
+ */
+
+@function supported-font-sources($sources) {
+ $chosen-formats: choose-browser-formats();
+ @return map-select-values($sources, $chosen-formats, comma);
+}
diff --git a/assets/scss/global/fonts/_source-sans-pro.scss b/assets/scss/global/fonts/_source-sans-pro.scss
new file mode 100644
index 0000000000..ef56f47ff9
--- /dev/null
+++ b/assets/scss/global/fonts/_source-sans-pro.scss
@@ -0,0 +1,215 @@
+/**
+ * Source Sans Pro is an open-source face designed specifically for UI work, and
+ * it's our primary face at FreeAgent. We serve it up via @font-face in a number
+ * of formats, as required by different browsers. WOFF2 is preferred due to it's
+ * better compression, followed by WOFF.
+ *
+ * Settings for browser support, OpenType vs TrueType, and font directory path
+ * can all be changed in _font-settings.scss.
+ *
+ * Source Sans repo:
+ * https://github.com/adobe-fonts/source-sans-pro
+ */
+
+
+/* Extra Light (200) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 200;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf') format('truetype')
+ ));
+ }
+
+ /* Extra Light Italic (200) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 200;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf') format('truetype')
+ ));
+ }
+
+ /* Light (300) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 300;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Light.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Light.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Light.ttf') format('truetype')
+ ));
+ }
+
+ /* Light Italic (300) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 300;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-LightIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-LightIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-LightIt.ttf') format('truetype')
+ ));
+ }
+
+ /* Regular (400) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 400;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Regular.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Regular.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Regular.ttf') format('truetype')
+ ));
+ }
+
+ /* Regular Italic (400) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 400;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-It.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-It.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-It.ttf') format('truetype')
+ ));
+ }
+ /* Semi-Bold (600) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 600;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Semibold.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Semibold.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Semibold.ttf') format('truetype')
+ ));
+ }
+
+ /* Semi-Bold Italic (600) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 600;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf') format('truetype')
+ ));
+ }
+
+ /* Bold (700) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 700;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Bold.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Bold.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Bold.ttf') format('truetype')
+ ));
+ }
+
+ /* Bold Italic (700) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 700;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-BoldIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-BoldIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf') format('truetype')
+ ));
+ }
+ /* Black (900) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 900;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Black.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Black.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Black.ttf') format('truetype')
+ ));
+}
+
+ /* Black Italic (900) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 900;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-BlackIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-BlackIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf') format('truetype')
+ ));
+}
diff --git a/assets/scss/local/base/_base.scss b/assets/scss/local/base/_base.scss
new file mode 100644
index 0000000000..9af19dda1f
--- /dev/null
+++ b/assets/scss/local/base/_base.scss
@@ -0,0 +1,55 @@
+/**
+ * Ensure an element’s width and height aren’t affected by padding or borders.
+ */
+
+*,
+*:before,
+*:after {
+ box-sizing: border-box;
+}
+
+/**
+ * 1. Ensure the root `font-size` is 100% of the browser default.
+ * 2. Ensure any background applied to this element will assume the full height
+ * of the viewport.
+ */
+
+html {
+ /* 1 */
+ font-size: 100%;
+ /* 2 */
+ height: 100%;
+}
+
+/**
+ * Ensure any background applied to this element will assume the full height
+ * of the viewport, and remove any default margin and padding.
+ */
+
+body {
+ height: 100%;
+ margin: 0;
+ min-height: 100%;
+ padding: 0;
+}
+
+/**
+ * Define our global `font-family`, `font-size`, `line-height`, and `color`
+ * values for all elements that require global targeting.
+ */
+
+body,
+input,
+textarea,
+keygen,
+select,
+button {
+ @include font-family(default);
+ @include font-size(default);
+ @include line-height(default);
+ @include text-color(default);
+}
+
+p {
+ margin: 0 0 1em 0;
+}
diff --git a/assets/scss/local/fonts/_font-settings.scss b/assets/scss/local/fonts/_font-settings.scss
new file mode 100644
index 0000000000..a61f88531c
--- /dev/null
+++ b/assets/scss/local/fonts/_font-settings.scss
@@ -0,0 +1,22 @@
+/**
+ * Directory where fonts live. May need to be amended depending on the structure
+ * of your particular project.
+ */
+
+$font-path: "../fonts" !default;
+
+/**
+ * If `false`, references to EOT files won’t be rendered. EOT files are only
+ * required for `@font-face` to work in < IE9, or IE9 in Compatbility Mode.
+ * In time we’ll remove this rule as we drop support for IE8.
+ */
+
+$support-ie8: true !default;
+
+/**
+ * If `true`, OpenType variants will be used instead of TrueType. In most cases
+ * the extra features OpenType provides (ligatures, stylistic alternates, etc)
+ * wont’t be required, but may be for more editorially-focussed projects.
+ */
+
+$use-opentype: false !default;
diff --git a/assets/scss/local/origin.scss b/assets/scss/local/origin.scss
new file mode 100644
index 0000000000..76b286869b
--- /dev/null
+++ b/assets/scss/local/origin.scss
@@ -0,0 +1,41 @@
+@charset "UTF-8";
+
+/**
+ * ”Try to imagine all life as you know it stopping instantaneously and every
+ * molecule in your body exploding at the speed of light.” — Egon Spengler
+ *
+ * That’s what’ll happen if you a) modify any global files, or b) change the
+ * order in which any of the files below are imported.
+ *
+ * Note: unfortunately interpolation in Sass isn’t yet available within the
+ * scope of `@import`. Until it is (or we come up with a workaround) we have to
+ * hard-code the paths to each global file.
+ */
+
+/* Local: font settings */
+@import "fonts/_font-settings";
+
+/* Global: functions to handle fonts correctly based on font settings */
+@import "../../../node_modules/origin-css/assets/scss/global/fonts/_font-functions";
+
+/* Global: load fonts for `@font-face` use */
+@import "../../../node_modules/origin-css/assets/scss/global/fonts/_source-sans-pro";
+
+/* Local: CSS utility settings */
+@import "utilities/_utility-settings";
+
+/* Global: import utilities */
+@import "../../../node_modules/origin-css/node_modules/fa-css-utilities/_utilities";
+
+/* Local: base typographic, box model and colour declarations */
+@import "base/_base";
+
+/* Global: import any required components; comment out those not required */
+@import "../../../node_modules/origin-css/assets/scss/global/components/_button";
+@import "../../../node_modules/origin-css/assets/scss/global/components/_notice";
+@import "../../../node_modules/origin-css/assets/scss/global/components/_segmented-control";
+@import "../../../node_modules/origin-css/assets/scss/global/components/_tabs";
+
+/**
+ * You’re safe to include your project styles below here...
+ */
diff --git a/assets/scss/local/utilities/_utility-settings.scss b/assets/scss/local/utilities/_utility-settings.scss
new file mode 100644
index 0000000000..1dd1e6f41d
--- /dev/null
+++ b/assets/scss/local/utilities/_utility-settings.scss
@@ -0,0 +1,76 @@
+/**
+ * FA CSS utilities are our ‘one true source’ of design properties at FreeAgent.
+ * They give our development team a universal method of writing CSS at scale.
+ *
+ * They comprise universal scales and aliases for properties like `font-size`,
+ * `font-family`, `line-height`, `color`, `margin`, and `padding`. They also
+ * provide a library of colours for text and block-level elements, and a library
+ * of mixins and utility classes for 40+ CSS properties.
+ *
+ * Guidance and examples can be found in the repo:
+ * https://github.com/fac/fa-css-utilities
+ */
+
+
+/* Utility classes
+ ==========================================================================
+ Utility classes apply a single value to a single property, no matter what
+ (using `!important`). They should be used sparingly — in most cases a
+ component should define it's own variants and stay completely self-contained.
+ Try to only use utility classes to quickly test out ideas or for early stage
+ ‘sketching’ in the browser.
+
+ Setting these variables to `true` will render utility classes in your output
+ CSS file, allowing you to use them directly in your markup. Use with care:
+ enabling these will naturally add (significant) weight to that CSS file.
+*/
+
+$u-classes-background: false;
+$u-classes-border-radius: false;
+$u-classes-border: false;
+$u-classes-box-sizing: false;
+$u-classes-clear: false;
+$u-classes-display: false;
+$u-classes-flex-align-content: false;
+$u-classes-flex-align-items: false;
+$u-classes-flex-align-self: false;
+$u-classes-flex-basis: false;
+$u-classes-flex-direction: false;
+$u-classes-flex-grow: false;
+$u-classes-flex-justify-content: false;
+$u-classes-flex-shrink: false;
+$u-classes-flex-wrap: false;
+$u-classes-flexbox: false;
+$u-classes-float: false;
+$u-classes-font-family: false;
+$u-classes-font-size: false;
+$u-classes-font-weight: false;
+$u-classes-height-width: false;
+$u-classes-interaction: false;
+$u-classes-letter-spacing: false;
+$u-classes-line-height: false;
+$u-classes-list-item-spacing: false;
+$u-classes-list-style: false;
+$u-classes-margin: false;
+$u-classes-opacity: false;
+$u-classes-overflow: false;
+$u-classes-padding: false;
+$u-classes-positioning: false;
+$u-classes-text-color: false;
+$u-classes-text-decoration: false;
+$u-classes-text-formatting: false;
+$u-classes-vertical-align: false;
+$u-classes-z-index: false;
+
+
+/* Project-specific aliases
+ ==========================================================================
+ We create friendly global aliases for our CSS values to improve the authoring
+ experience. But it's also possible to define local aliases for a particular
+ project. This is useful for defining a different default `font-size` or
+ `line-height` and being able to refer to them throughout your codebase as
+ `default` rather than `large` or `x-small`.
+*/
+
+/* Leave quotes empty if this project doesn't have custom aliases */
+$project: "";
diff --git a/bower.json b/bower.json
index d99b78cdb2..d4e12ae09d 100644
--- a/bower.json
+++ b/bower.json
@@ -1,20 +1,24 @@
{
- "name": "primer-css",
+ "name": "origin-css",
"ignore": [
+ "_config.yml",
+ ".DS_Store",
"docs/",
+ "Gemfile",
+ "Gemfile.lock",
+ ".git/",
".gitignore",
+ "Gruntfile.js",
".hound.yml",
+ ".sass-cache/",
".scss-lint.yml",
- "_config.yml",
- "Gemfile",
- "Gemfile.lock",
- "Gruntfile.js"
+ "_site/"
],
"main": [
- "scss/primer.scss"
+ "assets/scss/origin.scss"
],
"dependencies": {
- "octicons": "*",
- "primer-markdown": "https://github.com/primer/markdown.git#2.1.7"
+ "primer-markdown": "https://github.com/primer/markdown.git#2.1.7",
+ "primer-user-content": "https://github.com/primer/user-content.git#2.1.7"
}
}
diff --git a/css/.primer-stats.md b/css/.primer-stats.md
deleted file mode 100644
index 7a329157a9..0000000000
--- a/css/.primer-stats.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# [primer]( http://primercss.io )
-
-**Version:** `2.3.3`
-
-## Parker Report
-
-### css/primer.css
-
-- **Total Stylesheets:** 1
-- **Total Stylesheet Size:** 28889
-- **Total Media Queries:** 1
-- **Total Rules:** 372
-- **Selectors Per Rule:** 1.521505376344086
-- **Total Selectors:** 566
-- **Identifiers Per Selector:** 2.2703180212014136
-- **Specificity Per Selector:** 17.32155477031802
-- **Top Selector Specificity:** 50
-- **Top Selector Specificity Selector:** .fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-s:before
-- **Total Id Selectors:** 0
-- **Total Identifiers:** 1285
-- **Total Declarations:** 924
-- **Total Unique Colors:** 81
-- **Total Important Keywords:** 1
diff --git a/css/primer.css b/css/primer.css
deleted file mode 100644
index b7ebd9037e..0000000000
--- a/css/primer.css
+++ /dev/null
@@ -1 +0,0 @@
-/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box}input,select,textarea,button{font:13px/1.4 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Segoe UI Emoji","Segoe UI Symbol"}body{font:13px/1.4 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";color:#333;background-color:#fff}a{color:#4078c0;text-decoration:none}a:hover,a:active{text-decoration:underline}hr,.rule{height:0;margin:15px 0;overflow:hidden;background:transparent;border:0;border-bottom:1px solid #ddd}hr:before,.rule:before{display:table;content:""}hr:after,.rule:after{display:table;clear:both;content:""}h1,h2,h3,h4,h5,h6{margin-top:15px;margin-bottom:15px;line-height:1.1}h1{font-size:30px}h2{font-size:21px}h3{font-size:16px}h4{font-size:14px}h5{font-size:12px}h6{font-size:11px}small{font-size:90%}blockquote{margin:0}.lead{margin-bottom:30px;font-size:20px;font-weight:300;color:#555}.text-muted{color:#767676}.text-danger{color:#bd2c00}.text-emphasized{font-weight:bold;color:#333}ul,ol{padding:0;margin-top:0;margin-bottom:0}ol ol,ul ol{list-style-type:lower-roman}ul ul ol,ul ol ol,ol ul ol,ol ol ol{list-style-type:lower-alpha}dd{margin-left:0}tt,code{font-family:Consolas,"Liberation Mono",Menlo,Courier,monospace;font-size:12px}pre{margin-top:0;margin-bottom:0;font:12px Consolas,"Liberation Mono",Menlo,Courier,monospace}.container{width:980px;margin-right:auto;margin-left:auto}.container:before{display:table;content:""}.container:after{display:table;clear:both;content:""}.columns{margin-right:-10px;margin-left:-10px}.columns:before{display:table;content:""}.columns:after{display:table;clear:both;content:""}.column{float:left;padding-right:10px;padding-left:10px}.one-third{width:33.333333%}.two-thirds{width:66.666667%}.one-fourth{width:25%}.one-half{width:50%}.three-fourths{width:75%}.one-fifth{width:20%}.four-fifths{width:80%}.single-column{padding-right:10px;padding-left:10px}.table-column{display:table-cell;width:1%;padding-right:10px;padding-left:10px;vertical-align:top}fieldset{padding:0;margin:0;border:0}label{font-size:13px;font-weight:bold}.form-control,input[type="text"],input[type="password"],input[type="email"],input[type="number"],input[type="tel"],input[type="url"],select,textarea{min-height:34px;padding:7px 8px;font-size:13px;color:#333;vertical-align:middle;background-color:#fff;background-repeat:no-repeat;background-position:right 8px center;border:1px solid #ccc;border-radius:3px;outline:none;box-shadow:inset 0 1px 2px rgba(0,0,0,0.075)}.form-control.focus,.form-control:focus,input[type="text"].focus,input[type="text"]:focus,input[type="password"].focus,input[type="password"]:focus,input[type="email"].focus,input[type="email"]:focus,input[type="number"].focus,input[type="number"]:focus,input[type="tel"].focus,input[type="tel"]:focus,input[type="url"].focus,input[type="url"]:focus,select.focus,select:focus,textarea.focus,textarea:focus{border-color:#51a7e8;box-shadow:inset 0 1px 2px rgba(0,0,0,0.075),0 0 5px rgba(81,167,232,0.5)}select:not([multiple]){height:34px;vertical-align:middle}input.input-contrast,.input-contrast{background-color:#fafafa}input.input-contrast:focus,.input-contrast:focus{background-color:#fff}::-webkit-input-placeholder{color:#aaa}::-moz-placeholder{color:#aaa}:-ms-input-placeholder{color:#aaa}::placeholder{color:#aaa}input.input-mini{min-height:26px;padding-top:4px;padding-bottom:4px;font-size:12px}input.input-large{padding:6px 10px;font-size:16px}.input-block{display:block;width:100%}.input-monospace{font-family:Consolas,"Liberation Mono",Menlo,Courier,monospace}dl.form{margin:15px 0}dl.form input[type="text"],dl.form input[type="password"],dl.form input[type="email"],dl.form input[type="url"],dl.form select,dl.form textarea{background-color:#fafafa}dl.form input[type="text"]:focus,dl.form input[type="password"]:focus,dl.form input[type="email"]:focus,dl.form input[type="url"]:focus,dl.form select:focus,dl.form textarea:focus{background-color:#fff}dl.form>dt{margin:0 0 6px}dl.form>dt label{position:relative}dl.form.flattened>dt{float:left;margin:0;line-height:32px}dl.form.flattened>dd{line-height:32px}dl.form>dd input[type="text"],dl.form>dd input[type="password"],dl.form>dd input[type="email"],dl.form>dd input[type="url"]{width:440px;max-width:100%;margin-right:5px}dl.form>dd input.shorter{width:130px}dl.form>dd input.short{width:250px}dl.form>dd input.long{width:100%}dl.form>dd textarea{width:100%;height:200px;min-height:200px}dl.form>dd textarea.short{height:50px;min-height:50px}dl.form>dd h4{margin:4px 0 0}dl.form>dd h4.is-error{color:#bd2c00}dl.form>dd h4.is-success{color:#6cc644}dl.form>dd h4+p.note{margin-top:0}dl.form.required>dt>label:after{padding-left:5px;color:#9f1006;content:"*"}dl.form .success,dl.form .error,dl.form .indicator{display:none;font-size:12px;font-weight:bold}dl.form.loading{opacity:0.5}dl.form.loading .indicator{display:inline}dl.form.loading .spinner{display:inline-block;vertical-align:middle}dl.form.successful .success{display:inline;color:#390}dl.form.warn dd.warning,dl.form.warn dd.error,dl.form.errored dd.warning,dl.form.errored dd.error{display:inline-block;position:absolute;max-width:450px;z-index:10;margin:2px 0 0;padding:5px 8px;font-size:13px;font-weight:normal;border-radius:3px}dl.form.warn dd.warning:after,dl.form.warn dd.warning:before,dl.form.warn dd.error:after,dl.form.warn dd.error:before,dl.form.errored dd.warning:after,dl.form.errored dd.warning:before,dl.form.errored dd.error:after,dl.form.errored dd.error:before{bottom:100%;z-index:15;left:10px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}dl.form.warn dd.warning:after,dl.form.warn dd.error:after,dl.form.errored dd.warning:after,dl.form.errored dd.error:after{border-width:5px}dl.form.warn dd.warning:before,dl.form.warn dd.error:before,dl.form.errored dd.warning:before,dl.form.errored dd.error:before{border-width:6px;margin-left:-1px}dl.form.warn dd.warning{color:#4e401e;background-color:#ffe5a7;border:1px solid #e7ce94}dl.form.warn dd.warning:after{border-bottom-color:#ffe5a7}dl.form.warn dd.warning:before{border-bottom-color:#cdb683}dl.form.errored>dt label{color:#bd2c00}dl.form.errored dd.error{color:#fff;background-color:#bf1515;border-color:#911;font-size:13px}dl.form.errored dd.error:after{border-bottom-color:#bf1515}dl.form.errored dd.error:before{border-bottom-color:#911}.note{min-height:17px;margin:4px 0 2px;font-size:12px;color:#767676}.note .spinner{margin-right:3px;vertical-align:middle}.form-checkbox{padding-left:20px;margin:15px 0;vertical-align:middle}.form-checkbox label em.highlight{position:relative;left:-4px;padding:2px 4px;font-style:normal;background:#fffbdc;border-radius:3px}.form-checkbox input[type=checkbox],.form-checkbox input[type=radio]{float:left;margin:2px 0 0 -20px;vertical-align:middle}.form-checkbox .note{display:block;margin:0;font-size:12px;font-weight:normal;color:#666}.hfields{margin:15px 0}.hfields:before{display:table;content:""}.hfields:after{display:table;clear:both;content:""}.hfields dl.form{float:left;margin:0 30px 0 0}.hfields dl.form>dt label{display:inline-block;margin:5px 0 0;color:#666}.hfields dl.form>dt img{position:relative;top:-2px}.hfields .btn{float:left;margin:28px 25px 0 -20px}.hfields select{margin-top:5px}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.input-group{display:table}.input-group input{position:relative;width:100%}.input-group input:focus{z-index:2}.input-group input[type="text"]+.btn{margin-left:0}.input-group.inline{display:inline-table}.input-group input,.input-group-button{display:table-cell}.input-group-button{width:1%;vertical-align:middle}.input-group input:first-child,.input-group-button:first-child .btn{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-button:first-child .btn{margin-right:-1px}.input-group input:last-child,.input-group-button:last-child .btn{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-button:last-child .btn{margin-left:-1px}.form-actions:before{display:table;content:""}.form-actions:after{display:table;clear:both;content:""}.form-actions .btn{float:right}.form-actions .btn+.btn{margin-right:5px}.form-warning{padding:8px 10px;margin:10px 0;font-size:14px;color:#333;background:#ffffe2;border:1px solid #e7e4c2;border-radius:4px}.form-warning p{margin:0;line-height:1.5}.form-warning strong{color:#000}.form-warning a{font-weight:bold}.status-indicator{font:normal normal 16px/1 "octicons";display:inline-block;text-decoration:none;-webkit-font-smoothing:antialiased;margin-left:5px}.status-indicator-success:before{color:#6cc644;content:"\f03a"}.status-indicator-failed:before{color:#bd2c00;content:"\f02d"}.select{display:inline-block;max-width:100%;padding:7px 24px 7px 8px;vertical-align:middle;background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAUCAMAAACzvE1FAAAADFBMVEUzMzMzMzMzMzMzMzMKAG/3AAAAA3RSTlMAf4C/aSLHAAAAPElEQVR42q3NMQ4AIAgEQTn//2cLdRKppSGzBYwzVXvznNWs8C58CiussPJj8h6NwgorrKRdTvuV9v16Afn0AYFOB7aYAAAAAElFTkSuQmCC) no-repeat right 8px center;background-size:8px 10px;box-shadow:inset 0 -1px 2px rgba(0,0,0,0.075);-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:8px \9;background-image:none \9}.select:focus{outline:none;border-color:#51a7e8;box-shadow:inset 0 1px 2px rgba(0,0,0,0.075),0 0 5px rgba(81,167,232,0.5)}.select::-ms-expand{opacity:0}.select-sm{padding-top:3px;padding-bottom:3px;font-size:12px}.select-sm:not([multiple]){height:26px;min-height:26px}.clearfix:before{display:table;content:""}.clearfix:after{display:table;clear:both;content:""}.right{float:right}.left{float:left}.centered{display:block;float:none;margin-left:auto;margin-right:auto}.text-right{text-align:right}.text-left{text-align:left}.text-center{text-align:center}.danger{color:#c00}.mute{color:#000}.text-diff-added{color:#55a532}.text-diff-deleted{color:#bd2c00}.text-open,.text-success{color:#6cc644}.text-closed{color:#bd2c00}.text-reverted{color:#bd2c00}.text-merged{color:#6e5494}.text-renamed{color:#fffa5d}.text-pending{color:#cea61b}.text-error,.text-failure{color:#bd2c00}.muted-link{color:#767676}.muted-link:hover{color:#4078c0;text-decoration:none}.hidden{display:none}.warning{padding:0.5em;margin-bottom:0.8em;font-weight:bold;background-color:#fffccc}.error_box{padding:1em;font-weight:bold;background-color:#ffebe8;border:1px solid #dd3c10}.flash-messages{margin-top:15px;margin-bottom:15px}.flash,.flash-global{position:relative;font-size:14px;line-height:1.6;color:#246;background-color:#e2eef9;border:solid 1px #bac6d3}.flash.flash-warn,.flash-global.flash-warn{color:#4c4a42;background-color:#fff9ea;border-color:#dfd8c2}.flash.flash-error,.flash-global.flash-error{color:#911;background-color:#fcdede;border-color:#d2b2b2}.flash .flash-close,.flash-global .flash-close{float:right;padding:17px;margin-top:-15px;margin-right:-15px;margin-left:20px;color:inherit;text-decoration:none;cursor:pointer;opacity:0.6}.flash .flash-close:hover,.flash-global .flash-close:hover{opacity:1}.flash p:last-child,.flash-global p:last-child{margin-bottom:0}.flash .flash-action,.flash-global .flash-action{float:right;margin-top:-4px;margin-left:20px}.flash a,.flash-global a{font-weight:bold}.flash{padding:15px;border-radius:3px}.flash+.flash{margin-top:5px}.flash-with-icon{padding-left:40px}.flash-with-icon>.octicon{float:left;margin-top:3px;margin-left:-25px}.flash-global{padding:10px;margin-top:-1px;border-width:1px 0}.flash-global h2,.flash-global p{margin-top:0;margin-bottom:0;font-size:14px;line-height:1.4}.flash-global .flash-action{margin-top:5px}.flash-title{margin-top:0;margin-bottom:5px}.avatar{display:inline-block;overflow:hidden;line-height:1;vertical-align:middle;border-radius:3px}.avatar-small{border-radius:2px}.avatar-link{float:left;line-height:1}.avatar-group-item{display:inline-block;margin-bottom:3px}.avatar-parent-child{position:relative}.avatar-child{position:absolute;right:-15%;bottom:-9%;background-color:#fff;border-radius:2px;box-shadow:-2px -2px 0 rgba(255,255,255,0.8)}.blankslate{position:relative;padding:30px;text-align:center;background-color:#fafafa;border:1px solid #e5e5e5;border-radius:3px;box-shadow:inset 0 0 10px rgba(0,0,0,0.05)}.blankslate.clean-background{background:none;border:0;box-shadow:none}.blankslate.capped{border-radius:0 0 3px 3px}.blankslate.spacious{padding:100px 60px 120px}.blankslate.has-fixed-width{width:485px;margin:0 auto}.blankslate.large-format h3{margin:0.75em 0;font-size:20px}.blankslate.large-format p{font-size:16px}.blankslate.large-format p.has-fixed-width{width:540px;margin:0 auto;text-align:left}.blankslate.large-format .mega-octicon{width:40px;height:40px;font-size:40px;color:#aaa}.blankslate.large-format .octicon-inbox{font-size:48px;line-height:40px}.blankslate code{padding:2px 5px 3px;font-size:14px;background:#fff;border:1px solid #eee;border-radius:3px}.blankslate>.mega-octicon{color:#aaa}.blankslate .mega-octicon+.mega-octicon{margin-left:10px}.tabnav+.blankslate{margin-top:20px}.blankslate .context-loader.large-format-loader{padding-top:50px}.counter{display:inline-block;padding:2px 5px;font-size:11px;font-weight:bold;line-height:1;color:#666;background-color:#eee;border-radius:20px}.btn{position:relative;display:inline-block;padding:6px 12px;font-size:13px;font-weight:bold;line-height:20px;color:#333;white-space:nowrap;vertical-align:middle;cursor:pointer;background-color:#eee;background-image:linear-gradient(#fcfcfc, #eee);border:1px solid #d5d5d5;border-radius:3px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none}.btn i{font-style:normal;font-weight:500;opacity:0.6}.btn .octicon{vertical-align:text-top}.btn .counter{text-shadow:none;background-color:#e5e5e5}.btn:focus{text-decoration:none;border-color:#51a7e8;outline:none;box-shadow:0 0 5px rgba(81,167,232,0.5)}.btn:focus:hover,.btn.selected:focus{border-color:#51a7e8}.btn:hover,.btn:active,.btn.zeroclipboard-is-hover,.btn.zeroclipboard-is-active{text-decoration:none;background-color:#ddd;background-image:linear-gradient(#eee, #ddd);border-color:#ccc}.btn:active,.btn.selected,.btn.zeroclipboard-is-active{background-color:#dcdcdc;background-image:none;border-color:#b5b5b5;box-shadow:inset 0 2px 4px rgba(0,0,0,0.15)}.btn.selected:hover{background-color:#cfcfcf}.btn:disabled,.btn:disabled:hover,.btn.disabled,.btn.disabled:hover{color:rgba(102,102,102,0.5);cursor:default;background-color:rgba(229,229,229,0.5);background-image:none;border-color:rgba(197,197,197,0.5);box-shadow:none}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.15);background-color:#60b044;background-image:linear-gradient(#8add6d, #60b044);border-color:#5ca941}.btn-primary .counter{color:#60b044;background-color:#fff}.btn-primary:hover{color:#fff;background-color:#569e3d;background-image:linear-gradient(#79d858, #569e3d);border-color:#4a993e}.btn-primary:active,.btn-primary.selected{text-shadow:0 1px 0 rgba(0,0,0,0.15);background-color:#569e3d;background-image:none;border-color:#418737}.btn-primary.selected:hover{background-color:#4c8b36}.btn-primary:disabled,.btn-primary:disabled:hover,.btn-primary.disabled,.btn-primary.disabled:hover{color:#fefefe;background-color:#add39f;background-image:linear-gradient(#c3ecb4, #add39f);border-color:#b9dcac #b9dcac #a7c89b}.btn-danger{color:#900}.btn-danger:hover{color:#fff;background-color:#b33630;background-image:linear-gradient(#dc5f59, #b33630);border-color:#cd504a}.btn-danger:active,.btn-danger.selected{color:#fff;background-color:#b33630;background-image:none;border-color:#9f312c}.btn-danger.selected:hover{background-color:#9f302b}.btn-danger:disabled,.btn-danger:disabled:hover,.btn-danger.disabled,.btn-danger.disabled:hover{color:#cb7f7f;background-color:#efefef;background-image:linear-gradient(#fefefe, #efefef);border-color:#e1e1e1}.btn-danger:hover .counter,.btn-danger:active .counter,.btn-danger.selected .counter{color:#b33630;background-color:#fff}.btn-outline{color:#4078c0;background-color:#fff;background-image:none;border:1px solid #e5e5e5}.btn-outline .counter{background-color:#eee}.btn-outline:hover,.btn-outline:active,.btn-outline.selected,.btn-outline.zeroclipboard-is-hover,.btn-outline.zeroclipboard-is-active{color:#fff;background-color:#4078c0;background-image:none;border-color:#4078c0}.btn-outline:hover .counter,.btn-outline:active .counter,.btn-outline.selected .counter,.btn-outline.zeroclipboard-is-hover .counter,.btn-outline.zeroclipboard-is-active .counter{color:#4078c0;background-color:#fff}.btn-outline.selected:hover{background-color:#396cad}.btn-outline:disabled,.btn-outline:disabled:hover,.btn-outline.disabled,.btn-outline.disabled:hover{color:#767676;background-color:#fff;background-image:none;border-color:#e5e5e5}.btn-with-count{float:left;border-top-right-radius:0;border-bottom-right-radius:0}.btn-sm{padding:2px 10px}.hidden-text-expander{display:block}.hidden-text-expander.inline{position:relative;top:-1px;display:inline-block;margin-left:5px;line-height:0}.hidden-text-expander a{display:inline-block;height:12px;padding:0 5px;font-size:12px;font-weight:bold;line-height:6px;color:#555;text-decoration:none;vertical-align:middle;background:#ddd;border-radius:1px}.hidden-text-expander a:hover{text-decoration:none;background-color:#ccc}.hidden-text-expander a:active{color:#fff;background-color:#4183c4}.social-count{float:left;padding:2px 7px;font-size:11px;font-weight:bold;line-height:20px;color:#333;vertical-align:middle;background-color:#fff;border:1px solid #ddd;border-left:0;border-top-right-radius:3px;border-bottom-right-radius:3px}.social-count:hover,.social-count:active{text-decoration:none}.social-count:hover{color:#4078c0;cursor:pointer}.btn-block{display:block;width:100%;text-align:center}.btn-group{display:inline-block;vertical-align:middle}.btn-group:before{display:table;content:""}.btn-group:after{display:table;clear:both;content:""}.btn-group .btn{position:relative;float:left}.btn-group .btn:not(:first-child):not(:last-child){border-radius:0}.btn-group .btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group .btn:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .btn:hover,.btn-group .btn:active,.btn-group .btn.selected{z-index:2}.btn-group .btn:focus{z-index:3}.btn-group .btn+.btn{margin-left:-1px}.btn-group .btn+.button_to,.btn-group .button_to+.btn,.btn-group .button_to+.button_to{margin-left:-1px}.btn-group .button_to{float:left}.btn-group .button_to .btn{border-radius:0}.btn-group .button_to:first-child .btn{border-top-left-radius:3px;border-bottom-left-radius:3px}.btn-group .button_to:last-child .btn{border-top-right-radius:3px;border-bottom-right-radius:3px}.btn-group+.btn-group,.btn-group+.btn{margin-left:5px}.btn-link{display:inline-block;padding:0;font-size:inherit;color:#4078c0;white-space:nowrap;cursor:pointer;background-color:transparent;border:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none}.btn-link:hover,.btn-link:focus{text-decoration:underline}.btn-link:focus{outline:none}.menu{margin-bottom:15px;list-style:none;background-color:#fff;border:1px solid #d8d8d8;border-radius:3px}.menu-item{position:relative;display:block;padding:8px 10px;text-shadow:0 1px 0 #fff;border-bottom:1px solid #eee}.menu-item:first-child{border-top:0;border-top-right-radius:2px;border-top-left-radius:2px}.menu-item:first-child:before{border-top-left-radius:2px}.menu-item:last-child{border-bottom:0;border-bottom-right-radius:2px;border-bottom-left-radius:2px}.menu-item:last-child:before{border-bottom-left-radius:2px}.menu-item:hover{text-decoration:none;background-color:#f9f9f9}.menu-item.selected{font-weight:bold;color:#222;cursor:default;background-color:#fff}.menu-item.selected:before{position:absolute;top:0;left:0;bottom:0;width:2px;content:"";background-color:#d26911}.menu-item .octicon{margin-right:5px;width:16px;color:#333;text-align:center}.menu-item .counter{float:right;margin-left:5px}.menu-item .menu-warning{float:right;color:#d26911}.menu-item .avatar{float:left;margin-right:5px}.menu-item.alert .counter{color:#bd2c00}.menu-heading{display:block;padding:8px 10px;margin-top:0;margin-bottom:0;font-size:13px;font-weight:bold;line-height:20px;color:#555;background-color:#f7f7f7;border-bottom:1px solid #eee}.menu-heading:hover{text-decoration:none}.menu-heading:first-child{border-top-right-radius:2px;border-top-left-radius:2px}.menu-heading:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px;border-bottom:0}.tabnav{margin-top:0;margin-bottom:15px;border-bottom:1px solid #ddd}.tabnav .counter{margin-left:5px}.tabnav-tabs{margin-bottom:-1px}.tabnav-tab{display:inline-block;padding:8px 12px;font-size:14px;line-height:20px;color:#666;text-decoration:none;border:1px solid transparent;border-bottom:0}.tabnav-tab.selected{color:#333;background-color:#fff;border-color:#ddd;border-radius:3px 3px 0 0}.tabnav-tab:hover{text-decoration:none}.tabnav-extra{display:inline-block;padding-top:10px;margin-left:10px;font-size:12px;color:#666}.tabnav-extra>.octicon{margin-right:2px}a.tabnav-extra:hover{color:#4078c0;text-decoration:none}.tabnav-btn{margin-left:10px}.filter-list{list-style-type:none}.filter-list.small .filter-item{padding:4px 10px;margin:0 0 2px;font-size:12px}.filter-list.pjax-active .filter-item{color:#767676;background-color:transparent}.filter-list.pjax-active .filter-item.pjax-active{color:#fff;background-color:#4078c0}.filter-item{position:relative;display:block;padding:8px 10px;margin-bottom:5px;overflow:hidden;font-size:14px;color:#767676;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:3px}.filter-item:hover{text-decoration:none;background-color:#eee}.filter-item.selected{color:#fff;background-color:#4078c0}.filter-item.selected .octicon-remove-close{float:right;opacity:0.8}.filter-item .count{float:right;font-weight:bold}.filter-item .bar{position:absolute;top:2px;right:0;bottom:2px;z-index:-1;display:inline-block;background-color:#f1f1f1}.state{display:inline-block;padding:4px 8px;font-weight:bold;line-height:20px;color:#fff;text-align:center;border-radius:3px;background-color:#999}.state-open,.state-proposed,.state-reopened{background-color:#6cc644}.state-merged{background-color:#6e5494}.state-closed{background-color:#bd2c00}.state-renamed{background-color:#fffa5d}.tooltipped{position:relative}.tooltipped:after{position:absolute;z-index:1000000;display:none;padding:5px 8px;font:normal normal 11px/1.5 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";color:#fff;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);background:rgba(0,0,0,0.8);border-radius:3px;-webkit-font-smoothing:subpixel-antialiased}.tooltipped:before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:rgba(0,0,0,0.8);pointer-events:none;content:"";border:5px solid transparent}.tooltipped:hover:before,.tooltipped:hover:after,.tooltipped:active:before,.tooltipped:active:after,.tooltipped:focus:before,.tooltipped:focus:after{display:inline-block;text-decoration:none}.tooltipped-multiline:hover:after,.tooltipped-multiline:active:after,.tooltipped-multiline:focus:after{display:table-cell}.tooltipped-s:after,.tooltipped-se:after,.tooltipped-sw:after{top:100%;right:50%;margin-top:5px}.tooltipped-s:before,.tooltipped-se:before,.tooltipped-sw:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,0.8)}.tooltipped-se:after{right:auto;left:50%;margin-left:-15px}.tooltipped-sw:after{margin-right:-15px}.tooltipped-n:after,.tooltipped-ne:after,.tooltipped-nw:after{right:50%;bottom:100%;margin-bottom:5px}.tooltipped-n:before,.tooltipped-ne:before,.tooltipped-nw:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,0.8)}.tooltipped-ne:after{right:auto;left:50%;margin-left:-15px}.tooltipped-nw:after{margin-right:-15px}.tooltipped-s:after,.tooltipped-n:after{-webkit-transform:translateX(50%);-ms-transform:translateX(50%);transform:translateX(50%)}.tooltipped-w:after{right:100%;bottom:50%;margin-right:5px;-webkit-transform:translateY(50%);-ms-transform:translateY(50%);transform:translateY(50%)}.tooltipped-w:before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:rgba(0,0,0,0.8)}.tooltipped-e:after{bottom:50%;left:100%;margin-left:5px;-webkit-transform:translateY(50%);-ms-transform:translateY(50%);transform:translateY(50%)}.tooltipped-e:before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:rgba(0,0,0,0.8)}.tooltipped-multiline:after{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;word-break:break-word;word-wrap:normal;white-space:pre-line;border-collapse:separate}.tooltipped-multiline.tooltipped-s:after,.tooltipped-multiline.tooltipped-n:after{right:auto;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-w:after,.tooltipped-multiline.tooltipped-e:after{right:100%}@media screen and (min-width: 0\0){.tooltipped-multiline:after{width:250px}}.tooltipped-sticky:before,.tooltipped-sticky:after{display:inline-block}.tooltipped-sticky.tooltipped-multiline:after{display:table-cell}.fullscreen-overlay-enabled.dark-theme .tooltipped:after{color:#000;background:rgba(255,255,255,0.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-s:before,.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-se:before,.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-sw:before{border-bottom-color:rgba(255,255,255,0.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-n:before,.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-ne:before,.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-nw:before{border-top-color:rgba(255,255,255,0.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-e:before{border-right-color:rgba(255,255,255,0.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-w:before{border-left-color:rgba(255,255,255,0.8)}.flex-table{display:table}.flex-table-item{display:table-cell;width:1%;white-space:nowrap;vertical-align:middle}.flex-table-item-primary{width:99%}.css-truncate.css-truncate-target,.css-truncate .css-truncate-target{display:inline-block;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.css-truncate.expandable.zeroclipboard-is-hover .css-truncate-target,.css-truncate.expandable.zeroclipboard-is-hover.css-truncate-target,.css-truncate.expandable:hover .css-truncate-target,.css-truncate.expandable:hover.css-truncate-target{max-width:10000px !important}
\ No newline at end of file
diff --git a/docs/CNAME b/docs/CNAME
deleted file mode 100644
index 00fed49e15..0000000000
--- a/docs/CNAME
+++ /dev/null
@@ -1 +0,0 @@
-primercss.io
\ No newline at end of file
diff --git a/docs/_includes/sidenav.html b/docs/_includes/sidenav.html
index a2086a9583..4472fd95e1 100644
--- a/docs/_includes/sidenav.html
+++ b/docs/_includes/sidenav.html
@@ -1,50 +1,116 @@
+
+
+
+
+
+
+
+
diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html
index fe9b3050b5..82acf35737 100644
--- a/docs/_layouts/default.html
+++ b/docs/_layouts/default.html
@@ -10,14 +10,17 @@
- {{ page.title }} · Primer
+ {{ page.title }} · Origin
-
+
-
+
+
+
+
@@ -25,12 +28,13 @@
- Primer
+ Origin
- Docs
+ Docs
About
+ FAQ
GitHub
Install
@@ -40,10 +44,10 @@
{% if page.title == "Home" %}
-
Primer
-
The CSS toolkit and guidelines that power GitHub.
+
Origin
+
The CSS utilities, components, and guidelines that power FreeAgent.
-
+
Read the docs
@@ -52,16 +56,28 @@
Primer
-
Made at GitHub
-
Primer is the basecoat of GitHub, made by nerds just like you who share a passion for HTML and CSS.
+
+ Utilities
+
+
+ The CSS that underpins everything. Utilities provide a quick way to write better CSS in a universal and controlled way.
+
-
Open source
-
Available for use under the MIT license and built with open source projects like SCSS, Jekyll, Grunt, and more.
+
+ Components
+
+
+ The building blocks of our interfaces. Self-contained, plug-and-play units that serve specific functions.
+
-
Build tools
-
Includes a small Gruntfile for compiling our SCSS, Autoprefixer for vendor prefixes, and Parker for CSS stats.
+
+ Guidance
+
+
+ From broad principles through to the specifics of code style .
+
@@ -71,12 +87,11 @@
Build tools
{{ content }}
-
+
var selector = '.markdown-body h2, .markdown-body h3';
anchors.options = {
diff --git a/docs/_plugins/example.rb b/docs/_plugins/example.rb
index dcfd9a48bc..3b3a0b6516 100644
--- a/docs/_plugins/example.rb
+++ b/docs/_plugins/example.rb
@@ -55,7 +55,7 @@ def render(context)
end
def example(output)
- "
#{output}
"
+ "
#{output}
"
end
def render_rouge(code)
diff --git a/docs/about.md b/docs/about.md
index 7768b74aea..1958d0b5a9 100644
--- a/docs/about.md
+++ b/docs/about.md
@@ -3,29 +3,19 @@ layout: simple
title: About
---
-Learn more about this styleguide, particularly how it's built and who maintains it.
+Origin is FreeAgent’s internal CSS framework.
### What and why
-Primer is GitHub's internal CSS framework. It includes basic global styling for typography, small components like buttons and tabs, and our general guidelines for writing HTML and CSS. It's been used internally at GitHub for years now.
+We’re a growing team working across a range of different projects and codebases. Making CSS work at scale is hard. Agreed principles, approaches, and patterns mean we can do better work faster.
-Open-sourcing Primer means sharing and learning with the community. There's a lot we can improve upon in Primer, and help is always appreciated. While we don't currently plan on building this out as a competitor to other front-end frameworks, we will occasionally add, remove, or modify things.
+Origin gives us a common way of writing CSS. It consumes our [CSS utilities]({{ site.baseurl }}utilities/), provides some plug-and-play [components]({{ site.baseurl }}components/), and also documents our [principles]({{ site.baseurl }}principles/) and HTML and CSS [code styles]({{ site.baseurl }}code-style/). We use it in our desktop app, mobile apps, website, and a bunch of other projects.
-### Browser support
+### Getting started
-Primer currently supports Internet Explorer 9+ and the latest two versions of Chrome, Safari, and Firefox on OS X and Windows. While not a responsive or mobile-focused project, Mobile Safari and Chrome for Android should render just fine. Support for Linux-based browsers is not strictly guaranteed, but accounted for whenever possible.
+Installation instructions can be found [in the Github README](https://github.com/fac/origin/blob/master/README.md#install).
-### Future updates
-
-See the [roadmap](/roadmap) for a rough outline on what's slated for future versions of Primer.
-
-### Dependencies
-
-- Our styles are built with SCSS.
-- Bower is used to link GitHub assets, namely our [Octicons](http://octicons.github.com) icon font and Markdown styles.
-- Autoprefixer is used to generate vendor-prefixed declarations and is handled via our Gruntfile.
-- A custom plugin for snippet and example combos, `example.rb`, was created as a fork of Jekyll's built-in `highlight` plugin.
### Who
-Currently maintained by [@mdo](https://twitter.com/mdo), [@jonrohan](https://twitter.com/jonrohan), and the GitHub CSS team.
+Currently maintained by [@robbiemanson](https://twitter.com/robbiemanson) and the FreeAgent design team.
diff --git a/docs/alerts.md b/docs/alerts.md
deleted file mode 100644
index 40cd05428c..0000000000
--- a/docs/alerts.md
+++ /dev/null
@@ -1,78 +0,0 @@
----
-layout: page
-title: Alerts
----
-
-Flash messages, or alerts, inform users of successful or pending actions. Use them sparingly. Don't show more than one at a time.
-
-## Contents
-
-* Will be replaced with the ToC, excluding the "Contents" header
-{:toc}
-
-## Default
-
-Flash messages start off looking decently neutral—they're just light blue rounded rectangles.
-
-{% example html %}
-
- Flash message goes here.
-
-{% endexample %}
-
-You can put multiple paragraphs of text in a flash message—the last paragraph's bottom `margin` will be automatically override.
-
-{% example html %}
-
-
This is a longer flash message in it's own paragraph. It ends up looking something like this. If we keep adding more text, it'll eventually wrap to a new line.
-
And this is another paragraph.
-
-{% endexample %}
-
-Should the need arise, you can quickly space out your flash message from surrounding content with a `.flash-messages` wrapper. *Note the extra top and bottom margin in the example below.*
-
-{% example html %}
-
-
- Flash message goes here.
-
-
-{% endexample %}
-
-## Variations
-
-Add `.flash-warn` or `.flash-error` to the flash message to make it yellow or red, respectively.
-
-{% example html %}
-
- Flash message goes here.
-
-{% endexample %}
-
-{% example html %}
-
- Flash message goes here.
-
-{% endexample %}
-
-## With icon
-
-Add an icon to the left of the flash message to give it some funky fresh attention. Just add `.flash-with-icon` and your Octicon.
-
-{% example html %}
-
-
- Flash message with an icon goes here.
-
-{% endexample %}
-
-## Dismiss
-
-Add a JavaScript enabled (via Crema) dismiss (close) icon on the right of any flash message.
-
-{% example html %}
-
-
- Dismissable flash message goes here.
-
-{% endexample %}
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Black.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Black.eot
new file mode 100755
index 0000000000..747914e3f6
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Black.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-BlackIt.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-BlackIt.eot
new file mode 100755
index 0000000000..a56b5c32dd
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-BlackIt.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Bold.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Bold.eot
new file mode 100755
index 0000000000..e9f423425c
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Bold.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-BoldIt.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-BoldIt.eot
new file mode 100755
index 0000000000..d375ef51c6
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-BoldIt.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot
new file mode 100755
index 0000000000..f4dbef9022
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot
new file mode 100755
index 0000000000..da735de357
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-It.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-It.eot
new file mode 100755
index 0000000000..55ad8562ee
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-It.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Light.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Light.eot
new file mode 100755
index 0000000000..ea7f671316
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Light.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-LightIt.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-LightIt.eot
new file mode 100755
index 0000000000..d7cb9a72fd
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-LightIt.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Regular.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Regular.eot
new file mode 100755
index 0000000000..ba7f8d9515
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Regular.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Semibold.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Semibold.eot
new file mode 100755
index 0000000000..2f7a52c454
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-Semibold.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot
new file mode 100755
index 0000000000..d8504fed78
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Black.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Black.otf
new file mode 100755
index 0000000000..0c25f3d9b7
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Black.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-BlackIt.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-BlackIt.otf
new file mode 100755
index 0000000000..da3504c68c
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-BlackIt.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Bold.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Bold.otf
new file mode 100755
index 0000000000..98dbee74d5
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Bold.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-BoldIt.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-BoldIt.otf
new file mode 100755
index 0000000000..6600c86319
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-BoldIt.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf
new file mode 100755
index 0000000000..f885ce7f61
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf
new file mode 100755
index 0000000000..f932024272
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-It.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-It.otf
new file mode 100755
index 0000000000..2d627d9cf9
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-It.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Light.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Light.otf
new file mode 100755
index 0000000000..159979f600
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Light.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-LightIt.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-LightIt.otf
new file mode 100755
index 0000000000..e3d49b5fd1
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-LightIt.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Regular.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Regular.otf
new file mode 100755
index 0000000000..bdcfb27a4f
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Regular.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Semibold.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Semibold.otf
new file mode 100755
index 0000000000..fffdbafeb7
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-Semibold.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf
new file mode 100755
index 0000000000..e90515b3e1
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Black.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Black.ttf
new file mode 100755
index 0000000000..9c9b5cb7f0
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Black.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf
new file mode 100755
index 0000000000..294ce5abe8
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Bold.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Bold.ttf
new file mode 100755
index 0000000000..5d65c93242
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Bold.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf
new file mode 100755
index 0000000000..3decd13007
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf
new file mode 100755
index 0000000000..253eafa378
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf
new file mode 100755
index 0000000000..00d7e9a7aa
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-It.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-It.ttf
new file mode 100755
index 0000000000..f7af537759
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-It.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Light.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Light.ttf
new file mode 100755
index 0000000000..83a0a33666
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Light.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-LightIt.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-LightIt.ttf
new file mode 100755
index 0000000000..f18827985e
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-LightIt.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Regular.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Regular.ttf
new file mode 100755
index 0000000000..44486cdc67
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Regular.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Semibold.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Semibold.ttf
new file mode 100755
index 0000000000..86b00c067e
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-Semibold.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf
new file mode 100755
index 0000000000..13d66a1fc4
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff
new file mode 100755
index 0000000000..f1a663a7ed
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff
new file mode 100755
index 0000000000..1d7dfbdb29
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff
new file mode 100755
index 0000000000..6700893c22
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff
new file mode 100755
index 0000000000..d5e4a0ff9f
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff
new file mode 100755
index 0000000000..559b740812
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff
new file mode 100755
index 0000000000..e8fbeb8fe6
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff
new file mode 100755
index 0000000000..4b8af41547
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff
new file mode 100755
index 0000000000..10490ec577
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff
new file mode 100755
index 0000000000..13532d7d39
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff
new file mode 100755
index 0000000000..04739e7fba
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff
new file mode 100755
index 0000000000..17d744d1b1
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff
new file mode 100755
index 0000000000..a5b5e1e1d1
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff
new file mode 100755
index 0000000000..b7e8620092
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff
new file mode 100755
index 0000000000..c3314b1ef0
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff
new file mode 100755
index 0000000000..d1d40f840f
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff
new file mode 100755
index 0000000000..ef6ff514d3
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff
new file mode 100755
index 0000000000..1e6c94d9eb
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff
new file mode 100755
index 0000000000..7a408b1ec7
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff
new file mode 100755
index 0000000000..4d54bc9571
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff
new file mode 100755
index 0000000000..1706d57d3c
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff
new file mode 100755
index 0000000000..87378d6c60
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff
new file mode 100755
index 0000000000..460ab12a63
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff
new file mode 100755
index 0000000000..43379631b2
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff
new file mode 100755
index 0000000000..232c2048ae
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2
new file mode 100755
index 0000000000..d6f4b60e63
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2
new file mode 100755
index 0000000000..c52b3c8000
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2
new file mode 100755
index 0000000000..7d7f34b9e9
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2
new file mode 100755
index 0000000000..4d14ef7ff0
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2
new file mode 100755
index 0000000000..bdb21cb439
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2
new file mode 100755
index 0000000000..aee47e3513
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2
new file mode 100755
index 0000000000..00e212c55e
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2
new file mode 100755
index 0000000000..2dd7ca3b11
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2
new file mode 100755
index 0000000000..5ee08bea99
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2
new file mode 100755
index 0000000000..d76e39091f
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2
new file mode 100755
index 0000000000..8c27c1840e
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2
new file mode 100755
index 0000000000..f963d7810d
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2
new file mode 100755
index 0000000000..c90d078406
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2
new file mode 100755
index 0000000000..b87e22c41b
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2
new file mode 100755
index 0000000000..0f46f3e833
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2
new file mode 100755
index 0000000000..8007df6df3
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2
new file mode 100755
index 0000000000..b715f27408
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2
new file mode 100755
index 0000000000..d8f9d29d4a
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2
new file mode 100755
index 0000000000..a00852641f
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2
new file mode 100755
index 0000000000..d8b610ad76
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2
new file mode 100755
index 0000000000..e0eebac827
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2
new file mode 100755
index 0000000000..0dd3464c74
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2
new file mode 100755
index 0000000000..2526d2e1b6
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2 differ
diff --git a/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2 b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2
new file mode 100755
index 0000000000..606935af08
Binary files /dev/null and b/docs/assets/fonts/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2 differ
diff --git a/docs/js/anchor.min.js b/docs/assets/js/anchor.min.js
similarity index 100%
rename from docs/js/anchor.min.js
rename to docs/assets/js/anchor.min.js
diff --git a/docs/assets/scss/_base.scss b/docs/assets/scss/_base.scss
new file mode 100644
index 0000000000..9af19dda1f
--- /dev/null
+++ b/docs/assets/scss/_base.scss
@@ -0,0 +1,55 @@
+/**
+ * Ensure an element’s width and height aren’t affected by padding or borders.
+ */
+
+*,
+*:before,
+*:after {
+ box-sizing: border-box;
+}
+
+/**
+ * 1. Ensure the root `font-size` is 100% of the browser default.
+ * 2. Ensure any background applied to this element will assume the full height
+ * of the viewport.
+ */
+
+html {
+ /* 1 */
+ font-size: 100%;
+ /* 2 */
+ height: 100%;
+}
+
+/**
+ * Ensure any background applied to this element will assume the full height
+ * of the viewport, and remove any default margin and padding.
+ */
+
+body {
+ height: 100%;
+ margin: 0;
+ min-height: 100%;
+ padding: 0;
+}
+
+/**
+ * Define our global `font-family`, `font-size`, `line-height`, and `color`
+ * values for all elements that require global targeting.
+ */
+
+body,
+input,
+textarea,
+keygen,
+select,
+button {
+ @include font-family(default);
+ @include font-size(default);
+ @include line-height(default);
+ @include text-color(default);
+}
+
+p {
+ margin: 0 0 1em 0;
+}
diff --git a/docs/docs.scss b/docs/assets/scss/_primer.scss
similarity index 57%
rename from docs/docs.scss
rename to docs/assets/scss/_primer.scss
index ae9aa9050b..9f34cfe636 100644
--- a/docs/docs.scss
+++ b/docs/assets/scss/_primer.scss
@@ -1,8 +1,3 @@
----
-# Use a comment to ensure Jekyll reads the file to be transformed into CSS later
-# only main files contain this front matter, not partials.
----
-
/*
* Primer documentation styles
* http://primercss.io
@@ -10,29 +5,59 @@
* Released under MIT license. Copyright 2015 GitHub, Inc.
*/
-//
-// Import Primer itself
-//
+/* Base Primer styles */
+//@import "../../../bower_components/primer-user-content/components/markdown";
+@import "primer/_variables";
+@import "primer/_mixins";
+@import "primer/_layout";
+@import "primer/_anchor";
+@import "primer/_syntax";
+
+/* Primer documentation components */
+@import "primer/components/_buttons";
+@import "primer/components/_docs-example";
+@import "primer/components/_menu";
+@import "primer/components/_spacing";
+@import "primer/components/_swatches";
+@import "primer/components/_text-example";
+@import "primer/components/_text-color";
+
+a {
+ text-decoration: none;
+ @include text-color(fa-blue);
+}
-@import "../scss/primer";
-@import "bower_components/octicons/octicons/octicons.css";
-@import "bower_components/primer-user-content/components/markdown";
-@import "css/anchor";
-@import "css/syntax";
+a:active,
+a:focus,
+a:hover {
+ @include text-color(fa-blue--x-dark);
+}
+/*
+ * Overrides for GitHub markdown styles
+ */
-//
-// Overrides
-//
+.markdown-body {
+ @include font-family(default);
+ @include line-height(default);
+}
-// Global type
-html {
- font-size: 16px;
+.markdown-body code,
+.markdown-body pre > code {
+ @include font-family(monospace);
+ @include font-size(x-small);
}
-body {
- font-family: "Helvetica Neue", $body-font;
- font-size: 1rem;
+.page-title + .markdown-body > p:first-child {
+ @include font-weight(light, !important);
+ @include font-size(x-large, !important);
+ @include line-height(tight, !important);
+ @include text-color(gray-6, !important);
+}
+
+.highlight .cm {
+ font-style: normal;
+ @include text-color(gray-9);
}
// Make containers responsive
@@ -47,6 +72,37 @@ body {
overflow: visible;
}
+//
+// Menu customisations
+//
+
+.menu {
+ @include text-color(gray-9);
+}
+
+.menu-title {
+ @include font-size(large);
+ @include font-weight(semi-bold);
+ @include line-height(tight);
+ @include margin-bottom(small);
+ @include text-color(gray-8);
+}
+
+//
+// Only apply :active/:focus/:hover states to menu items that are actually links
+//
+
+.menu-item:active,
+.menu-item:focus,
+.menu-item:hover {
+ background-color: transparent;
+}
+
+a.menu-item:active,
+a.menu-item:focus,
+a.menu-item:hover {
+ @include background-color(gray-16);
+}
//
// Custom button
@@ -59,10 +115,10 @@ body {
&:hover,
&:active {
- color: $brand-blue;
background: #fff;
border-color: #fff;
box-shadow: none;
+ @include text-color(fa-blue);
}
}
@@ -76,7 +132,7 @@ body {
padding-bottom: 1rem;
margin-bottom: 1.5rem;
text-align: center;
- background-color: $brand-blue;
+ @include background-color(fa-blue);
a {
color: rgba(255,255,255,.5);
@@ -94,6 +150,7 @@ body {
.mega-octicon {
float: left;
+ line-height: 120%;
margin-right: .5rem;
}
}
@@ -131,7 +188,8 @@ body {
@media (min-width: 34em) {
float: right;
- margin-top: .5rem;
+ line-height: 120%;
+ margin-top: 0;
}
}
@@ -145,10 +203,11 @@ body {
margin-bottom: 3rem;
padding-top: 2rem;
padding-bottom: 4rem;
- background-color: $brand-blue;
font-size: 1.25rem;
color: #fff;
text-align: center;
+ @include background-color(fa-blue);
+ @include border-bottom(xx-thick, fa-green);
h1 {
font-size: 2.5em;
@@ -182,8 +241,7 @@ body {
p {
padding-right: .5rem;
- color: #555;
- line-height: 1.5;
+ @include text-color(gray-6);
}
h2 {
@@ -242,13 +300,20 @@ body {
// Examples
//
-.docs-example {
+.DocsExample {
+ @include margin-bottom(large);
+}
+
+// `-preview` is for showing manually typed previews when only showing CSS
+// examples; `-render` is forHTML actually rendered by _plugins/example.rb.
+.DocsExample-preview,
+.DocsExample-render {
position: relative;
- padding: 15px;
- font-size: 13px;
- line-height: 1.4;
- border: 1px solid #e5e5e5;
border-radius: .25rem .25rem 0 0;
+ @include border(default, gray-14);
+ @include font-size(default, !important);
+ @include line-height(default, !important);
+ @include padding(default);
+ .highlight {
margin-top: -1px;
@@ -272,17 +337,16 @@ body {
// Grid
.container {
width: 100%;
- padding-left: $grid-gutter;
- padding-right: $grid-gutter;
+ @include padding-left(default);
+ @include padding-right(default);
}
.columns + .columns {
margin-top: 10px;
}
.column {
- padding: $grid-gutter;
- font-family: $mono-font;
- background-color: lighten($brand-green, 40%);
- border: 1px solid lighten($brand-green, 30%);
+ @include background-color(fa-green--x-light);
+ @include font-family(monospace);
+ @include padding(default);
}
// Override Markdown styles to restore values from `_type.scss`
@@ -321,8 +385,21 @@ body {
}
}
+// Hide the example preview block is we're only showing a CSS example
+.DocsExample--render--hidden .DocsExample-render {
+ display: none;
+}
+
+// Used to show spacing examples
+.DocsExample-preview-child {
+ @include background-color(gray-16);
+}
+
.page-title + .markdown-body > p:first-child {
- @extend .lead;
+ margin-bottom: 30px;
+ font-size: 20px;
+ font-weight: 300;
+ color: #555;
}
@@ -346,13 +423,3 @@ body {
height: 6rem;
border-radius: .25rem;
}
-
-.swatch-blue { background-color: $brand-blue; }
-.swatch-green { background-color: $brand-green; }
-.swatch-red { background-color: $brand-red; }
-.swatch-orange { background-color: $brand-orange; }
-.swatch-purple { background-color: $brand-purple; }
-
-.swatch-gray-light { background-color: $brand-gray-light; }
-.swatch-gray { background-color: $brand-gray; }
-.swatch-gray-dark { background-color: $brand-gray-dark; }
diff --git a/docs/assets/scss/_utility-settings.scss b/docs/assets/scss/_utility-settings.scss
new file mode 100644
index 0000000000..1dd1e6f41d
--- /dev/null
+++ b/docs/assets/scss/_utility-settings.scss
@@ -0,0 +1,76 @@
+/**
+ * FA CSS utilities are our ‘one true source’ of design properties at FreeAgent.
+ * They give our development team a universal method of writing CSS at scale.
+ *
+ * They comprise universal scales and aliases for properties like `font-size`,
+ * `font-family`, `line-height`, `color`, `margin`, and `padding`. They also
+ * provide a library of colours for text and block-level elements, and a library
+ * of mixins and utility classes for 40+ CSS properties.
+ *
+ * Guidance and examples can be found in the repo:
+ * https://github.com/fac/fa-css-utilities
+ */
+
+
+/* Utility classes
+ ==========================================================================
+ Utility classes apply a single value to a single property, no matter what
+ (using `!important`). They should be used sparingly — in most cases a
+ component should define it's own variants and stay completely self-contained.
+ Try to only use utility classes to quickly test out ideas or for early stage
+ ‘sketching’ in the browser.
+
+ Setting these variables to `true` will render utility classes in your output
+ CSS file, allowing you to use them directly in your markup. Use with care:
+ enabling these will naturally add (significant) weight to that CSS file.
+*/
+
+$u-classes-background: false;
+$u-classes-border-radius: false;
+$u-classes-border: false;
+$u-classes-box-sizing: false;
+$u-classes-clear: false;
+$u-classes-display: false;
+$u-classes-flex-align-content: false;
+$u-classes-flex-align-items: false;
+$u-classes-flex-align-self: false;
+$u-classes-flex-basis: false;
+$u-classes-flex-direction: false;
+$u-classes-flex-grow: false;
+$u-classes-flex-justify-content: false;
+$u-classes-flex-shrink: false;
+$u-classes-flex-wrap: false;
+$u-classes-flexbox: false;
+$u-classes-float: false;
+$u-classes-font-family: false;
+$u-classes-font-size: false;
+$u-classes-font-weight: false;
+$u-classes-height-width: false;
+$u-classes-interaction: false;
+$u-classes-letter-spacing: false;
+$u-classes-line-height: false;
+$u-classes-list-item-spacing: false;
+$u-classes-list-style: false;
+$u-classes-margin: false;
+$u-classes-opacity: false;
+$u-classes-overflow: false;
+$u-classes-padding: false;
+$u-classes-positioning: false;
+$u-classes-text-color: false;
+$u-classes-text-decoration: false;
+$u-classes-text-formatting: false;
+$u-classes-vertical-align: false;
+$u-classes-z-index: false;
+
+
+/* Project-specific aliases
+ ==========================================================================
+ We create friendly global aliases for our CSS values to improve the authoring
+ experience. But it's also possible to define local aliases for a particular
+ project. This is useful for defining a different default `font-size` or
+ `line-height` and being able to refer to them throughout your codebase as
+ `default` rather than `large` or `x-small`.
+*/
+
+/* Leave quotes empty if this project doesn't have custom aliases */
+$project: "";
diff --git a/docs/assets/scss/components/_button.scss b/docs/assets/scss/components/_button.scss
new file mode 100644
index 0000000000..d49534b0b9
--- /dev/null
+++ b/docs/assets/scss/components/_button.scss
@@ -0,0 +1,289 @@
+/**
+ * Buttons
+ */
+
+/**
+ * Vanilla styles for any element with .Button class
+ *
+ * 1. Remove the default Webkit glow to more closely mimic native apps
+ * 2. Ensures single `Button`s are vertically aligned with `Button`s inside a
+ * `ButtonGroup`; important because they often appear side-by-side
+ */
+
+.Button {
+ border-style: solid;
+ border-width: 1px;
+ border-color: rgba(0,0,0,0.06) rgba(0,0,0,0.12) rgba(0,0,0,0.18) rgba(0,0,0,0.12);
+ cursor: pointer;
+ display: inline-block;
+ /* 1 */
+ outline: none;
+ text-align: center;
+ /* 2 */
+ vertical-align: middle;
+ @include border-radius(default);
+ @include box-shadow(0, 1px, 0, rgba(0, 0, 0, 0.04));
+ @include font-size(default);
+ @include font-weight(semi-bold);
+ @include line-height(x-tight);
+ @include linear-gradient(darken(#fff, 1%), darken(#fff, 4%));
+ @include padding-bottom(3);
+ @include padding-left(5);
+ @include padding-right(5);
+ @include padding-top(3);
+ @include tap-highlight(none);
+ @include text-color(fa-blue);
+ @include user-select(none);
+}
+
+.Button:hover {
+ background: darken(#fff, 4%);
+ border-bottom-color: rgba(0,0,0,0.16);
+ text-decoration: none;
+ @include text-color(fa-blue--x-dark);
+}
+
+.Button:active,
+.Button:focus {
+ background: darken(#fff, 6%);
+ border-color: rgba(0, 0, 0, 0.08);
+ @include box-shadow(0, 0, 0, rgba(0, 0, 0, 0));
+}
+
+/**
+ * Block, full-width variant
+ */
+
+.Button--block {
+ display: block;
+ width: 100%
+}
+
+/**
+ * Large variant
+ */
+
+.Button--large {
+ @include font-size(large);
+ @include padding-bottom(4);
+ @include padding-left(7);
+ @include padding-right(7);
+ @include padding-top(4);
+}
+
+/**
+ * Small variant
+ */
+
+.Button--small {
+ @include font-size(small);
+ @include padding-bottom(2);
+ @include padding-left(4);
+ @include padding-right(4);
+ @include padding-top(2);
+}
+
+/**
+ * Button disabled state
+ *
+ * 'disabled' HTML attribute should also be applied to the
element
+ *
+ * 1. Ensures `Button--outline` border gets overridden
+ */
+
+.Button.is-disabled,
+.Button.is-disabled:active,
+.Button.is-disabled:focus,
+.Button.is-disabled:hover {
+ /* 1 */
+ border: 0 !important;
+ cursor: default;
+ text-shadow: none !important;
+ @include linear-gradient($color--gray-14, $color--gray-14);
+ @include text-color(gray-10, !important);
+ @include box-shadow(0, 0, 0, rgba(0, 0, 0, 0));
+}
+
+/**
+ * Positive button variant
+ *
+ * Used as primary CTA for completing tasks e.g. sending an invoice
+ */
+
+.Button--primary {
+ border-color: darken($color--fa-green, 3%) darken($color--fa-green, 6%) darken($color--fa-green, 12%) darken($color--fa-green, 6%);
+ color: #fff;
+ text-shadow: 0 1px 0 darken($color--fa-green, 14%);
+ @include box-shadow(0, 1px, 1px, rgba(0, 0, 0, 0.12));
+ @include linear-gradient($color--fa-green, darken($color--fa-green, 5%));
+}
+
+.Button--primary:hover {
+ background: darken($color--fa-green, 6%);
+ border-top-color: darken($color--fa-green, 3%);
+ color: #fff;
+}
+
+.Button--primary:active,
+.Button--primary:focus {
+ background: darken($color--fa-green, 8%);
+ border-color: darken($color--fa-green, 8%);
+ text-shadow: none;
+ @include box-shadow(0, 0, 0, rgba(0, 0, 0, 0));
+}
+
+/**
+ * Neutral button variant
+ *
+ * Used when a button shouldn’t command as much attention as normal
+ */
+
+.Button--neutral {
+ @include text-color(gray-6);
+}
+
+.Button--neutral:active,
+.Button--neutral:focus,
+.Button--neutral:hover {
+ @include text-color(gray-5);
+}
+
+/**
+ * Negative button variant
+ *
+ * Used as button for deleting/removing/cancelling things
+ */
+
+.Button--negative:hover {
+ @include text-color(fa-red--text);
+}
+
+.Button--negative:active,
+.Button--negative:focus {
+ @include text-color(fa-red--dark);
+}
+
+
+/**
+ * Danger button variant
+ *
+ * Used as button for deleting/removing/cancelling things
+ */
+
+.Button--danger {
+ @include text-color(fa-red--text);
+}
+
+.Button--danger:active,
+.Button--danger:focus,
+.Button--danger:hover {
+ @include text-color(fa-red--dark);
+}
+
+/**
+ * Outline button variant
+ *
+ * Outline buttons reduce the overall emphasis of a button in an interace, while
+ * still retaining the same functionality.
+ */
+
+.Button--outline {
+ background: none;
+ text-shadow: none;
+ @include border(default, gray-13);
+ @include box-shadow(0, 0, 0, rgba(0, 0, 0, 0));
+}
+
+
+// Button group
+//
+// A button group is a series of buttons laid out next to each other, all part
+// of one visual button, but separated by rules to be separate.
+.ButtonGroup {
+ display: inline-block;
+ vertical-align: middle;
+ @include floatContainer;
+}
+
+.ButtonGroup .Button {
+ position: relative;
+ float: left;
+}
+
+.ButtonGroup .Button:not(:first-child):not(:last-child) {
+ border-radius: 0;
+}
+
+.ButtonGroup .Button:first-child {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0;
+}
+
+.ButtonGroup .Button:last-child {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0;
+}
+
+// Bring any button into forefront for proper borders given negative margin below
+.ButtonGroup .Button:hover,
+.ButtonGroup .Button:active,
+.ButtonGroup .Button.selected {
+ z-index: 2;
+}
+
+.ButtonGroup .Button:focus {
+ z-index: 3;
+}
+
+// Tuck buttons into one another to prevent double border
+.ButtonGroup .Button + .Button {
+ margin-left: -1px;
+}
+
+// Proper spacing for multiple button groups (a la, gollum editor)
+.ButtonGroup + .ButtonGroup,
+.ButtonGroup + .Button {
+ margin-left: 5px;
+}
+
+/**
+ * Effra variant
+ */
+
+.Button--editorial {
+ @include font-family(editorial);
+ @include font-weight(normal);
+}
+
+/**
+ * Helvetica Neue variant
+ */
+
+.Button--legacy {
+ @include font-family(legacy);
+ @include font-weight(bold);
+}
+
+/**
+ * Buttons with multiple labels
+ */
+
+.Button-label {
+ display: block;
+}
+
+.Button-label--primary {
+ @include font-size(large);
+}
+
+.Button-label--secondary {
+ @include font-size(small);
+ @include font-weight(normal);
+ @include line-height(x-tight);
+ @include text-color(gray-8);
+}
+
+.Button--primary .Button-label--secondary {
+ color: darken($color--fa-green, 30%);
+ text-shadow: none;
+}
diff --git a/docs/assets/scss/components/_navbar.scss b/docs/assets/scss/components/_navbar.scss
new file mode 100644
index 0000000000..744411de36
--- /dev/null
+++ b/docs/assets/scss/components/_navbar.scss
@@ -0,0 +1,83 @@
+/* NavBar
+ ==========================================================================
+ The blue navigation bar that contains the view title and navigation options
+*/
+
+/**
+ * Base styles for the navigation bar
+ *
+ * All variants of the NavBar have these styles in common
+ */
+
+.NavBar {
+ display: block;
+ width: 100%;
+ @include background-color(fa-blue);
+ @include floatContainer;
+}
+
+/**
+ * Main navbar title
+ */
+
+.NavBar-title {
+ color: #fff;
+ margin: 0;
+ @include font-size(large);
+ @include line-height(x-tight);
+}
+
+/**
+ * Override standard link color in the navbar title
+ */
+.NavBar-title-link {
+ color: #fff;
+}
+
+/**
+ * Override standard link hover color in the navbar title
+ */
+
+.NavBar-title-link:hover,
+.NavBar-title-link:focus {
+ color: #fff;
+}
+
+
+/* Desktop NavBar
+ ==========================================================================
+ Desktop app variant of the blue navigation bar that contains the company
+ name and navigation options
+*/
+
+/**
+ * 1. Applied in the ruleset because the desktop app does not currently use
+ * `box-sizing: border-box` by default.
+ * 2. Only has a `padding-top` value because of the tabbed navigation in the
+ * desktop app that sits flush with the bottom of the NavBar.
+ */
+
+.NavBar--desktop {
+ /* 1 */
+ box-sizing: border-box;
+ /* 2 */
+ @include padding-top(default);
+}
+
+/**
+ * Main navbar title
+ * 1. Applied in the ruleset because the desktop app does not currently use
+ * `box-sizing: border-box` by default.
+ * 2. Moves the title in from the left to keep it aligned with the navigation
+ * tabs
+ * 3. Matches the `padding-top` on the `.NavBar`
+ */
+
+.NavBar--desktop .NavBar-title {
+ /* 1 */
+ box-sizing: border-box;
+ /* 2 */
+ margin-left: 15px;
+ /* 3 */
+ @include margin-bottom(default);
+}
diff --git a/docs/assets/scss/components/_notice.scss b/docs/assets/scss/components/_notice.scss
new file mode 100644
index 0000000000..471789513d
--- /dev/null
+++ b/docs/assets/scss/components/_notice.scss
@@ -0,0 +1,351 @@
+/**
+ * Notices
+ *
+ * Notices are used to communicate messages directly to the user about the state
+ * of a view or a particular element
+ *
+ * Types of Notices include: form error notices, invoice state notices
+ */
+
+/**
+ * Base styles for Notices
+ *
+ * 1. Default; overridden with other classes
+ * 2. To help position the down arrow icon that appears as part of error notices
+ */
+
+.Notice {
+ /* 1 */
+ display: table;
+ padding: 7px 15px 8px 15px;
+ /* 2 */
+ position: relative;
+ text-align: center;
+ width: 100%;
+ @include background-color(gray-14);
+ @include font-size(small);
+ @include line-height(loose);
+ @include text-color(gray-5);
+}
+
+/**
+ * Give Notice links a heavier weight
+ */
+
+.Notice a {
+ @include font-weight(semi-bold);
+}
+
+/**
+ * Custom style for Notice titles (an optional element)
+ */
+
+.Notice-title {
+ margin: 5px 0;
+ @include font-size(default);
+ @include font-weight(semi-bold);
+}
+
+/**
+ * Increase top and bottom padding for taller notices
+ */
+
+.Notice--taller {
+ padding-bottom: 15px;
+ padding-top: 15px;
+}
+
+/**
+ * Style a notice for negative messages (as used by errors)
+ */
+
+.Notice--negative {
+ @include background-color(fa-red--x-light);
+ @include text-color(negative);
+}
+
+/**
+ * Style notice links for negative messages
+ */
+
+.Notice--negative a,
+.Notice--negative a:visited {
+ @include text-color(negative);
+}
+
+/**
+ * Style a notice for negative action messages
+ */
+
+.Notice--negative-action {
+ color: #fff;
+ @include background-color(fa-red);
+}
+
+/**
+ * Style notice links for negative action messages
+ */
+
+.Notice--negative-action a,
+.Notice--negative-action a:visited {
+ color: #fff;
+}
+
+/**
+ * Style a notice for positive messages
+ */
+
+.Notice--positive {
+ @include background-color(fa-green--x-light);
+ @include text-color(positive);
+}
+
+/**
+ * Style notice links for positive messages
+ */
+
+.Notice--positive a,
+.Notice--positive a:visited {
+ @include text-color(positive);
+}
+
+/**
+ * Style a notice for positive action messages
+ */
+
+.Notice--positive-action {
+ color: #fff;
+ @include background-color(fa-green);
+}
+
+/**
+ * Style notice links for positive action messages
+ */
+
+.Notice--positive-action a,
+.Notice--positive-action a:visited {
+ color: #fff;
+}
+
+/**
+ * Style a notice for warning messages
+ */
+
+.Notice--warning {
+ @include background-color(fa-yellow--x-light);
+ @include text-color(warning);
+}
+
+/**
+ * Style notice links for warning messages
+ */
+
+.Notice--warning a,
+.Notice--warning a:visited {
+ @include text-color(warning);
+}
+
+/**
+ * Style a notice for warning action messages
+ */
+
+.Notice--warning-action {
+ color: #fff;
+ @include background-color(fa-yellow);
+}
+
+/**
+ * Style notice links for warning action messages
+ */
+
+.Notice--warning-action a,
+.Notice--warning-action a:visited {
+ color: #fff;
+}
+
+/**
+ * Style a notice for messages discussing expired or written-off items
+ */
+
+.Notice--expired {
+ background: none;
+ @include text-color(gray-5);
+}
+
+/**
+ * Style notice links for expired or written-off items
+ */
+
+.Notice--expired a,
+.Notice--expired a:visited {
+ @include text-color(gray-5);
+}
+
+/**
+ * Style a notice for messages discussing refunded items
+ */
+
+.Notice--refunded {
+ @include background-color(fa-purple--x-light);
+ @include text-color(fa-purple);
+}
+
+/**
+ * Style notice links for refunded items
+ */
+
+.Notice--refunded a,
+.Notice--refunded a:visited {
+ @include text-color(fa-purple);
+}
+
+/**
+ * Style a notice like a flash message; pops down from underneath the NavBar
+ *
+ * 1. Required to prevent the element becoming visible when the user scolls
+ * the view (it seems to stick to the viewport; hopefully a future Mobile
+ * Safari version will remove the need for this)
+ */
+
+.Notice--flash {
+ position: absolute;
+ /* 1 */
+ visibility: hidden;
+}
+
+/**
+ * Visible state of flash message
+ */
+
+.Notice--flash.is-visible {
+ visibility: visible;
+ @include transition;
+}
+
+/**
+ * This animations quickly slides down the `Notice--flash` from below the `NavBar`
+ * and keeps it visible for a bit, then slides it quickly up underneatah the `NavBar`.
+ *
+ * We can achieve the same effect using plain css attributes and property transitions,
+ * however that approach gives us a rendering issue on the expense category page.
+ */
+@include keyframes(Notice--flash) {
+ 0% {
+ @include translate3d(0, -100%, 0);
+ }
+
+ 10% {
+ @include translate3d(0, 0, 0);
+ }
+
+ 90% {
+ @include translate3d(0, 0, 0);
+ }
+
+ 100% {
+ @include translate3d(0, -100%, 0);
+ }
+}
+
+/**
+ * Style a notice like an infobox; used for locked item notices
+ */
+
+.Notice--infobox {
+ background: #F3EDBF;
+ color: #635646;
+}
+
+/**
+ * Custom title for infobox-style notices
+ */
+
+.Notice--infobox .Notice-title {
+ color: #635646;
+}
+
+.Notice--infobox .Icon--locked .Icon-path {
+ fill: #635646;
+}
+
+/**
+ * Vertically centre notice content within its parent container
+ */
+
+.Notice-content {
+ display: block;
+ width: 100%;
+}
+
+/**
+ * Give strong notice element a heavier text weight
+ */
+
+.Notice strong {
+ @include font-weight(semi-bold);
+}
+
+/**
+ * Remove bottom padding from the last paragraph in a Notice
+ */
+
+.Notice p:last-child {
+ margin-bottom: 8px;
+}
+
+/**
+ * Arrow icons point to field with errors on them; aligned to the left by default
+ */
+
+.Notice .Icon--arrow {
+ bottom: -5px;
+ left: (15px);
+ position: absolute;
+}
+
+/**
+ * Make the down arrow icon the same colour as the negative notice background
+ */
+
+.Notice--negative .Icon--arrow--pointsDown {
+ border-top-color: $color--fa-red--x-light;
+
+ //AndyI Added in these to fix positioning
+ top: auto;
+ -webkit-transform: none;
+ transform: none;
+}
+
+/**
+ * Split the notice up into two columns if two notices exist on adjacent cells
+ */
+
+.Notice--split .Notice-content-split {
+ float: left;
+ margin-left: 10%;
+ width: 45%;
+}
+
+/**
+ * Don't include the left-hand margin on the first notice; it's parent already has padding
+ */
+
+.Notice--split .Notice-content-split:first-child {
+ margin-left: 0;
+}
+
+/**
+ * AndyI If a table cell has an error next to it - move it down a bit to line it up
+ */
+
+.has-Notice .TableView-cell--split {
+ padding-top: 41px;
+}
+
+/**
+ * AndyI Where there's long error messages, don't inherit white-space wrapping
+ */
+
+.Notice-content p {
+ white-space: normal;
+}
diff --git a/docs/assets/scss/components/_segmented-control.scss b/docs/assets/scss/components/_segmented-control.scss
new file mode 100644
index 0000000000..4e91757e71
--- /dev/null
+++ b/docs/assets/scss/components/_segmented-control.scss
@@ -0,0 +1,144 @@
+/**
+ * Segmented control
+ *
+ * A segmented control is a horizontal control made of multiple segments, each
+ * segment functioning as a discrete button. Segment text get truncated when
+ * too long to fit into the width of the segment.
+ *
+ * There are three variants of SegmentedControl:
+ * — Low contrast variant: your default choice; contrasts well with other form elements
+ * — Base colour variant: use within a view when it really needs to stick out
+ * — High contrast version: to be used against a base colour background (like the NavBar)
+ */
+
+.SegmentedControl {
+ border: 1px solid $color--gray-9;
+ height: 30px;
+ margin: 0;
+ padding: 0;
+ text-align: center;
+ @include border-radius(default);
+ @include line-height(tight);
+ @include flexbox(flex);
+ @include flex-align-items(stretch);
+ @include flex-direction(row);
+ @include flex-justify-content(center);
+}
+
+/**
+ * Individual segment buttons
+ */
+
+.SegmentedControl-segment {
+ background: none;
+ border-color: $color--gray-9;
+ border-style: solid;
+ border-width: 0 1px 0 0;
+ display: inline-block;
+ margin: 0;
+ padding: 0 4px 1px 4px;
+ @include flex(1);
+ @include text-truncate;
+ @include text-color(gray-9);
+}
+
+/**
+ * Individual segment buttons in their active state
+ */
+
+.SegmentedControl-segment:active {
+ @include background-color(gray-15);
+}
+
+/**
+ * Currently selected individual segment button
+ */
+
+.SegmentedControl-segment--selected,
+.SegmentedControl-segment--selected:active {
+ color: #fff;
+ @include background-color(gray-9);
+}
+
+/**
+ * Apply appropriate border radius to the first segment in a SegmentedControl
+ */
+
+.SegmentedControl .SegmentedControl-segment:first-child {
+ border: 0;
+ border-radius: 3px 0 0 3px;
+}
+
+/**
+ * Apply appropriate border radius to the last segment in a SegmentedControl
+ */
+
+.SegmentedControl .SegmentedControl-segment:last-child {
+ border: 0;
+ border-radius: 0 3px 3px 0;
+}
+
+/* High contrast variant
+ ========================================================================== */
+
+/**
+ * A higher contrast variant of the SegmentedControl, to be used primarily on
+ * the base colour background
+ */
+
+.SegmentedControl--contrastHigh {
+ border-color: darken($color--base, 10%);
+}
+
+.SegmentedControl--contrastHigh .SegmentedControl-segment {
+ color: darken($color--base, 10%);
+ border-color: darken($color--base, 10%);
+}
+
+.u-background-color--fa-blue .SegmentedControl--contrastHigh .SegmentedControl-segment {
+ color: darken($color--base, 15%);
+}
+
+.u-background-color--fa-blue .SegmentedControl--contrastHigh .SegmentedControl-segment:active {
+ background: darken($color--base, 1.5%);
+}
+
+.SegmentedControl--contrastHigh .SegmentedControl-segment--selected,
+.SegmentedControl--contrastHigh .SegmentedControl-segment--selected:active {
+ background: darken($color--base, 10%);
+ color: #fff !important;
+}
+
+/* Low contrast variant
+ ========================================================================== */
+
+/**
+ * Light grey variant which sits well when placed amongst other form fields
+ * and/or TableView-cells
+ */
+
+.SegmentedControl--contrastLow {
+ border-color: $color--gray-11;
+}
+
+/**
+ * Reduce opacity of the SegmentedControl when its parent TableView-cell is in a
+ * disabled state
+ */
+
+.TableView-cell.is-disabled .SegmentedControl--contrastLow {
+ opacity: 0.8;
+}
+
+.SegmentedControl--contrastLow .SegmentedControl-segment {
+ color: darken($color--gray-11, 15%);
+ border-color: $color--gray-11;
+}
+
+.SegmentedControl--contrastLow .SegmentedControl-segment--selected,
+.SegmentedControl--contrastLow .SegmentedControl-segment--selected:active,
+.TableView-cell.is-disabled .SegmentedControl--contrastLow .SegmentedControl-segment--selected,
+.TableView-cell.is-disabled .SegmentedControl--contrastLow .SegmentedControl-segment--selected:active {
+ color: #fff !important;
+ @include background-color(gray-11);
+}
diff --git a/docs/assets/scss/components/_tabs.scss b/docs/assets/scss/components/_tabs.scss
new file mode 100644
index 0000000000..3e3cd52ef0
--- /dev/null
+++ b/docs/assets/scss/components/_tabs.scss
@@ -0,0 +1,124 @@
+/* Tabs
+ ========================================================================== */
+
+/**
+ * The `Tabs` component is a horizontal control made of multiple tabs, each
+ * tab functioning as a discrete button. Tab text get truncated when
+ * too long to fit into the width of its parent.
+ */
+
+.Tabs {
+ display: block;
+ height: 55px;
+ margin: 0;
+ padding: 0;
+ position: relative;
+ text-align: center;
+ width: 100%;
+ @include background-color(fa-blue--dark);
+ @include box-shadow(0, 1px, 2px, rgba(0, 0, 0, 0.08), inset);
+ @include line-height(default);
+ @include flexbox(flex);
+ @include flex-align-items(stretch);
+ @include flex-direction(row);
+ @include flex-justify-content(center);
+}
+
+/**
+ * Individual tabs
+ */
+
+.Tabs-tab {
+ background: none;
+ border-color: $color--fa-blue--x-dark;
+ border-style: solid;
+ border-width: 0 1px 0 0;
+ color: rgba(255, 255, 255, 0.5);
+ display: inline-block;
+ height: 100%;
+ margin: 0;
+ overflow: visible !important;
+ padding: 0 0.5em;
+ position: relative;
+ @include font-size(small);
+ @include flex(1);
+ @include text-truncate;
+}
+
+.retina .Tabs-tab {
+ border-right-width: 0.5px;
+}
+
+/**
+ * Individual tabs in their active state
+ *
+ * 1. Custom colour local to this particular state of this component in FreeAgent
+ * Mobile. This is a deliberate deviation from the palette in our utility
+ * library, as adding a new colour purely for this state is excessive and
+ * unnecessary. Variable value can be found in stylesheets/variables/_colours.scss.
+ */
+
+.Tabs-tab:active,
+.Tabs-tab:hover {
+ /* 1 */
+ background-color: #0060A3;
+}
+
+/**
+ * Currently selected tab
+ */
+
+.Tabs-tab--selected,
+.Tabs-tab--selected:active {
+ color: #fff;
+ @include background-color(fa-blue--x-dark);
+}
+
+/**
+ * Apply appropriate border radius to the last tab
+ */
+
+.Tabs .Tabs-tab:last-child {
+ border: 0;
+}
+
+.Count--tab-count {
+ left: 50%;
+ position: absolute;
+ top: 0;
+ @include transform(translateX(-50%) translateY(-50%));
+}
+
+.Count--tab-count--bottom {
+ bottom: 0;
+ top: auto;
+ @include transform(translateX(-50%) translateY(50%));
+}
+
+.Count--tab-count:before {
+ background: rgba(0, 0, 0, 0.1);
+ border-radius: 100px;
+ content: "";
+ left: -4px;
+ height: calc(100% + 8px);
+ position: absolute;
+ top: -4px;
+ width: calc(100% + 8px);
+}
+
+.Count--tab-count--outerTab {
+ @include transform(translateX(-50%) translateY(-35%));
+}
+
+.Count-digit {
+ color: #fff;
+ border-radius: 100px;
+ display: inline-block;
+ min-width: 1.75em;
+ padding: 0.35em;
+ position: relative;
+ text-align: center;
+ @include font-size(x-small);
+ @include font-weight(semi-bold);
+ @include line-height(tight);
+}
diff --git a/docs/assets/scss/docs.scss b/docs/assets/scss/docs.scss
new file mode 100644
index 0000000000..2cad41386a
--- /dev/null
+++ b/docs/assets/scss/docs.scss
@@ -0,0 +1,30 @@
+---
+# This front matter ensures Jekyll compiles this file into CSS.
+---
+
+@charset "UTF-8";
+
+/* Define font settings */
+@import "fonts/_font-settings";
+
+/* Load fonts for `@font-face` use */
+@import "fonts/_source-sans-pro";
+
+/* Define CSS utility settings */
+@import "_utility-settings";
+
+/* Import utilities from npm or Bower directories, depending on install method */
+@import "../../../node_modules/fa-css-utilities/_utilities";
+
+/* Import base typographic, box model and colour declarations */
+@import "_base";
+
+/* Styles used for docs; based on GitHub’s Primer: http://primercss.io */
+@import "_primer";
+
+/* Global components */
+@import "components/_button";
+@import "components/_navbar";
+@import "components/_notice";
+@import "components/_segmented-control";
+@import "components/_tabs";
diff --git a/docs/assets/scss/fonts/_font-settings.scss b/docs/assets/scss/fonts/_font-settings.scss
new file mode 100644
index 0000000000..8e3e8ea2f8
--- /dev/null
+++ b/docs/assets/scss/fonts/_font-settings.scss
@@ -0,0 +1,90 @@
+/* Font settings
+ ========================================================================== */
+
+/* Directory path where fonts live */
+$font-path: "../fonts" !default;
+
+/* If `false` the `src` references to EOT format files won’t be rendered */
+$support-ie8: true !default;
+
+/* If `true` OpenType variants will be used instead of TrueType */
+$use-opentype: false !default;
+
+
+/* Note: below are utility functions for generating correct `@font-face` code
+ ========================================================================== */
+
+/**
+ * Function to return a list of values associated with a list of keys
+ *
+ * Examples
+ * $map: (a: 1, b: 2, c: 3)
+ * map-selected-values($map, (a, c))
+ * => (1, 3)
+ * Returns list
+ */
+
+@function map-select-values($map, $selection, $separator) {
+ $values: ();
+ @each $key in $selection {
+ $values: append($values, map-get($map, $key), $separator);
+ }
+ @return $values;
+}
+
+
+/**
+ * Internal: This builds the list of font formats based on what browsers and font
+ * types we're supporting. These are defined by the global variables
+ * $support-ie8 and $use-opentype.
+ * The default is to support ie8 but not to use opentype.
+ *
+ * Supporting ie8 enables additional formats. Using opentype makes more font
+ * styles available but for a larger download.
+ */
+
+@function choose-browser-formats() {
+ $chosen-formats: ();
+
+ @if $support-ie8 {
+ $chosen-formats: append($chosen-formats, embedded-opentype);
+ }
+
+ @if $use-opentype {
+ $chosen-formats: join($chosen-formats, opentype-woff opentype-woff2 opentype);
+ } @else {
+ $chosen-formats: join($chosen-formats, truetype-woff truetype-woff2 truetype);
+ }
+
+ @return $chosen-formats;
+}
+
+
+/**
+ * This chooses the font sources based on font type and browser support, which
+ * is set by global variables.
+ *
+ * Examples
+ * Given the following SASS:
+ * @font-face {
+ * src: supported-font-sources((
+ * embedded-opentype: url('font.eot') format('embedded-opentype'),
+ * truetype-woff2: url('font.ttf.woff2') format('woff2'),
+ * opentype-woff2: url('font.otf.woff2') format('woff2'),
+ * truetype-woff: url('font.ttf.woff') format('woff'),
+ * opentype-woff: url('font.otf.woff') format('woff')
+ * }
+ *
+ * if $enable-ie8: true and $use-opentype: true the following CSS is generated:
+ * font-face {
+ * src: url('font.eot') format('embedded-opentype'),
+ * opentype-woff2: url('font.otf.woff2') format('woff2'),
+ * opentype-woff: url('font.otf.woff') format('woff')
+ * }
+ * Returns a list suitable for the src attribute of @font-face
+ */
+
+@function supported-font-sources($sources) {
+ $chosen-formats: choose-browser-formats();
+ @return map-select-values($sources, $chosen-formats, comma);
+}
diff --git a/docs/assets/scss/fonts/_source-sans-pro.scss b/docs/assets/scss/fonts/_source-sans-pro.scss
new file mode 100644
index 0000000000..ef56f47ff9
--- /dev/null
+++ b/docs/assets/scss/fonts/_source-sans-pro.scss
@@ -0,0 +1,215 @@
+/**
+ * Source Sans Pro is an open-source face designed specifically for UI work, and
+ * it's our primary face at FreeAgent. We serve it up via @font-face in a number
+ * of formats, as required by different browsers. WOFF2 is preferred due to it's
+ * better compression, followed by WOFF.
+ *
+ * Settings for browser support, OpenType vs TrueType, and font directory path
+ * can all be changed in _font-settings.scss.
+ *
+ * Source Sans repo:
+ * https://github.com/adobe-fonts/source-sans-pro
+ */
+
+
+/* Extra Light (200) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 200;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-ExtraLight.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLight.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLight.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-ExtraLight.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-ExtraLight.ttf') format('truetype')
+ ));
+ }
+
+ /* Extra Light Italic (200) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 200;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-ExtraLightIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-ExtraLightIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-ExtraLightIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-ExtraLightIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-ExtraLightIt.ttf') format('truetype')
+ ));
+ }
+
+ /* Light (300) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 300;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Light.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Light.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Light.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Light.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Light.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Light.ttf') format('truetype')
+ ));
+ }
+
+ /* Light Italic (300) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 300;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-LightIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-LightIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-LightIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-LightIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-LightIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-LightIt.ttf') format('truetype')
+ ));
+ }
+
+ /* Regular (400) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 400;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Regular.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Regular.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Regular.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Regular.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Regular.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Regular.ttf') format('truetype')
+ ));
+ }
+
+ /* Regular Italic (400) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 400;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-It.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-It.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-It.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-It.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-It.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-It.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-It.ttf') format('truetype')
+ ));
+ }
+ /* Semi-Bold (600) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 600;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Semibold.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Semibold.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Semibold.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Semibold.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Semibold.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Semibold.ttf') format('truetype')
+ ));
+ }
+
+ /* Semi-Bold Italic (600) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 600;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-SemiboldIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-SemiboldIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-SemiboldIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-SemiboldIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-SemiboldIt.ttf') format('truetype')
+ ));
+ }
+
+ /* Bold (700) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 700;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Bold.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Bold.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Bold.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Bold.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Bold.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Bold.ttf') format('truetype')
+ ));
+ }
+
+ /* Bold Italic (700) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 700;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-BoldIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-BoldIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-BoldIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-BoldIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-BoldIt.ttf') format('truetype')
+ ));
+ }
+ /* Black (900) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 900;
+ font-style: normal;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-Black.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-Black.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-Black.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-Black.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-Black.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-Black.ttf') format('truetype')
+ ));
+}
+
+ /* Black Italic (900) */
+ @font-face {
+ font-family: 'Source Sans Pro';
+ font-weight: 900;
+ font-style: italic;
+ font-stretch: normal;
+ src: supported-font-sources((
+ embedded-opentype: url('#{$font-path}/SourceSansPro/EOT/SourceSansPro-BlackIt.eot') format('embedded-opentype'),
+ truetype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2') format('woff2'),
+ opentype-woff2: url('#{$font-path}/SourceSansPro/WOFF2/OTF/SourceSansPro-BlackIt.otf.woff2') format('woff2'),
+ truetype-woff: url('#{$font-path}/SourceSansPro/WOFF/TTF/SourceSansPro-BlackIt.ttf.woff') format('woff'),
+ opentype-woff: url('#{$font-path}/SourceSansPro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff') format('woff'),
+ opentype: url('#{$font-path}/SourceSansPro/OTF/SourceSansPro-BlackIt.otf') format('opentype'),
+ truetype: url('#{$font-path}/SourceSansPro/TTF/SourceSansPro-BlackIt.ttf') format('truetype')
+ ));
+}
diff --git a/docs/css/_anchor.scss b/docs/assets/scss/primer/_anchor.scss
similarity index 100%
rename from docs/css/_anchor.scss
rename to docs/assets/scss/primer/_anchor.scss
diff --git a/scss/_layout.scss b/docs/assets/scss/primer/_layout.scss
similarity index 100%
rename from scss/_layout.scss
rename to docs/assets/scss/primer/_layout.scss
diff --git a/scss/_mixins.scss b/docs/assets/scss/primer/_mixins.scss
similarity index 100%
rename from scss/_mixins.scss
rename to docs/assets/scss/primer/_mixins.scss
diff --git a/docs/css/_syntax.scss b/docs/assets/scss/primer/_syntax.scss
similarity index 100%
rename from docs/css/_syntax.scss
rename to docs/assets/scss/primer/_syntax.scss
diff --git a/scss/_variables.scss b/docs/assets/scss/primer/_variables.scss
similarity index 69%
rename from scss/_variables.scss
rename to docs/assets/scss/primer/_variables.scss
index bf4149b44c..0923042ee6 100644
--- a/scss/_variables.scss
+++ b/docs/assets/scss/primer/_variables.scss
@@ -11,15 +11,6 @@ $brand-red: #bd2c00 !default;
$brand-orange: #c9510c !default;
$brand-purple: #6e5494 !default;
-// Font stack
-$body-font: Helvetica, arial, nimbussansl, liberationsans, freesans, clean, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol" !default;
-
-// The base body size
-$body-font-size: 13px !default;
-
-// Monospace font stack
-$mono-font: Consolas, "Liberation Mono", Menlo, Courier, monospace !default;
-
// State indicators.
$status-open: $brand-green;
$status-closed: $brand-red;
diff --git a/scss/_buttons.scss b/docs/assets/scss/primer/components/_buttons.scss
similarity index 100%
rename from scss/_buttons.scss
rename to docs/assets/scss/primer/components/_buttons.scss
diff --git a/docs/assets/scss/primer/components/_docs-example.scss b/docs/assets/scss/primer/components/_docs-example.scss
new file mode 100644
index 0000000000..559f56762d
--- /dev/null
+++ b/docs/assets/scss/primer/components/_docs-example.scss
@@ -0,0 +1,5 @@
+.DocsExample-comment {
+ margin-top: -0.5rem;
+ @include margin-bottom(large);
+ @include text-color(gray-9);
+}
diff --git a/scss/_menu.scss b/docs/assets/scss/primer/components/_menu.scss
similarity index 90%
rename from scss/_menu.scss
rename to docs/assets/scss/primer/components/_menu.scss
index e6a78418e1..13078e92f5 100644
--- a/scss/_menu.scss
+++ b/docs/assets/scss/primer/components/_menu.scss
@@ -6,16 +6,15 @@
margin-bottom: 15px;
list-style: none;
background-color: #fff;
- border: 1px solid #d8d8d8;
border-radius: 3px;
+ @include border(default, gray-14);
}
.menu-item {
position: relative;
display: block;
padding: 8px 10px;
- text-shadow: 0 1px 0 #fff;
- border-bottom: 1px solid #eee;
+ @include border-bottom(default, gray-14);
&:first-child {
border-top: 0;
@@ -40,18 +39,18 @@
&.selected {
font-weight: bold;
- color: #222;
cursor: default;
background-color: #fff;
+ @include text-color(fa-blue--x-dark);
&:before {
position: absolute;
top: 0;
left: 0;
bottom: 0;
- width: 2px;
+ width: 3px;
content: "";
- background-color: #d26911;
+ @include background-color(fa-green);
}
}
diff --git a/docs/assets/scss/primer/components/_spacing.scss b/docs/assets/scss/primer/components/_spacing.scss
new file mode 100644
index 0000000000..0029592139
--- /dev/null
+++ b/docs/assets/scss/primer/components/_spacing.scss
@@ -0,0 +1,72 @@
+.DocsExample-preview--spacing {
+ border-color: $color--gray-12 !important;
+ @include background-color(gray-12);
+}
+
+.DocsExample-preview--spacing--1 {
+ @include padding(1, !important);
+}
+
+.DocsExample-preview--spacing--2 {
+ @include padding(2, !important);
+}
+
+.DocsExample-preview--spacing--3 {
+ @include padding(3, !important);
+}
+
+.DocsExample-preview--spacing--4 {
+ @include padding(4, !important);
+}
+
+.DocsExample-preview--spacing--5 {
+ @include padding(5, !important);
+}
+
+.DocsExample-preview--spacing--6 {
+ @include padding(6, !important);
+}
+
+.DocsExample-preview--spacing--7 {
+ @include padding(7, !important);
+}
+
+.DocsExample-preview--spacing--8 {
+ @include padding(8, !important);
+}
+
+.DocsExample-preview--spacing--9 {
+ @include padding(9, !important);
+}
+
+.DocsExample-preview--spacing--10 {
+ @include padding(10, !important);
+}
+
+.DocsExample-preview--spacing--11 {
+ @include padding(11, !important);
+}
+
+.DocsExample-preview--spacing--12 {
+ @include padding(12, !important);
+}
+
+.DocsExample-preview--spacing--13 {
+ @include padding(13, !important);
+}
+
+.DocsExample-preview--spacing--14 {
+ @include padding(14, !important);
+}
+
+.DocsExample-preview--spacing--15 {
+ @include padding(15, !important);
+}
+
+.DocsExample-preview--spacing--16 {
+ @include padding(16, !important);
+}
+
+.DocsExample-preview--spacing--17 {
+ @include padding(17, !important);
+}
diff --git a/docs/assets/scss/primer/components/_swatches.scss b/docs/assets/scss/primer/components/_swatches.scss
new file mode 100644
index 0000000000..c14d92632a
--- /dev/null
+++ b/docs/assets/scss/primer/components/_swatches.scss
@@ -0,0 +1,208 @@
+
+.SwatchGroup {
+ margin: 0;
+ padding: 0;
+}
+
+.Swatch {
+ background-color: white;
+ padding: 0;
+ @include box-shadow(0, 1px, 3px, rgba(0, 0, 0, 0.12));
+ @include margin-bottom(large);
+}
+
+.Swatch-preview {
+ content: "";
+ display: block;
+ height: 60px;
+}
+
+.Swatch-detail {
+ @include padding(small);
+ @include text-color(gray-8);
+}
+
+.Swatch-detail-variable {
+ display: block;
+ @include font-family(monospace);
+ @include font-size(small);
+}
+
+
+
+.DocsExample-preview--fa-yellow {
+ @include background-color(fa-yellow);
+}
+
+.DocsExample-preview--fa-amber {
+ @include background-color(fa-amber);
+}
+
+.DocsExample-preview--fa-amber .Swatch-detail {
+ @include text-color(fa-amber);
+}
+
+.DocsExample-preview--fa-amber--dark {
+ @include background-color(fa-amber--dark);
+}
+
+.DocsExample-preview--fa-amber--dark .Swatch-detail {
+ @include text-color(fa-amber--dark);
+}
+
+
+
+.DocsExample-preview--fa-red {
+ @include background-color(fa-red);
+}
+
+.DocsExample-preview--fa-red .Swatch-detail {
+ @include text-color(fa-red--text);
+}
+
+.DocsExample-preview--fa-red--dark {
+ @include background-color(fa-red--dark);
+}
+
+.DocsExample-preview--fa-red--dark .Swatch-detail {
+ @include text-color(fa-red--dark);
+}
+
+
+
+.DocsExample-preview--fa-green {
+ @include background-color(fa-green);
+}
+
+.DocsExample-preview--fa-green .Swatch-detail {
+ @include text-color(fa-green--text);
+}
+
+.DocsExample-preview--fa-green--dark {
+ @include background-color(fa-green--dark);
+}
+
+.DocsExample-preview--fa-green--dark .Swatch-detail {
+ @include text-color(fa-green--dark);
+}
+
+
+
+.DocsExample-preview--fa-blue {
+ @include background-color(fa-blue);
+}
+
+.DocsExample-preview--fa-blue .Swatch-detail {
+ @include text-color(fa-blue);
+}
+
+.DocsExample-preview--fa-blue--dark {
+ @include background-color(fa-blue--dark);
+}
+
+.DocsExample-preview--fa-blue--dark .Swatch-detail {
+ @include text-color(fa-blue--dark);
+}
+
+.DocsExample-preview--fa-blue--x-dark {
+ @include background-color(fa-blue--x-dark);
+}
+
+.DocsExample-preview--fa-blue--x-dark .Swatch-detail {
+ @include text-color(fa-blue--x-dark);
+}
+
+
+.DocsExample-preview--fa-purple {
+ @include background-color(fa-purple);
+}
+
+.DocsExample-preview--fa-purple .Swatch-detail {
+ @include text-color(fa-purple);
+}
+
+
+.DocsExample-preview--fa-blue--x-light {
+ @include background-color(fa-blue--x-light);
+}
+
+.DocsExample-preview--fa-red--x-light {
+ @include background-color(fa-red--x-light);
+}
+
+.DocsExample-preview--fa-green--x-light {
+ @include background-color(fa-green--x-light);
+}
+
+.DocsExample-preview--fa-yellow--x-light {
+ @include background-color(fa-yellow--x-light);
+}
+
+.DocsExample-preview--fa-purple--x-light {
+ @include background-color(fa-purple--x-light);
+}
+
+
+.DocsExample-preview--gray-1 {
+ @include background-color(gray-1);
+}
+
+.DocsExample-preview--gray-2 {
+ @include background-color(gray-2);
+}
+
+.DocsExample-preview--gray-3 {
+ @include background-color(gray-3);
+}
+
+.DocsExample-preview--gray-4 {
+ @include background-color(gray-4);
+}
+
+.DocsExample-preview--gray-5 {
+ @include background-color(gray-5);
+}
+
+.DocsExample-preview--gray-6 {
+ @include background-color(gray-6);
+}
+
+.DocsExample-preview--gray-7 {
+ @include background-color(gray-7);
+}
+
+.DocsExample-preview--gray-8 {
+ @include background-color(gray-8);
+}
+
+.DocsExample-preview--gray-9 {
+ @include background-color(gray-9);
+}
+
+.DocsExample-preview--gray-10 {
+ @include background-color(gray-10);
+}
+
+.DocsExample-preview--gray-11 {
+ @include background-color(gray-11);
+}
+
+.DocsExample-preview--gray-12 {
+ @include background-color(gray-12);
+}
+
+.DocsExample-preview--gray-13 {
+ @include background-color(gray-13);
+}
+
+.DocsExample-preview--gray-14 {
+ @include background-color(gray-14);
+}
+
+.DocsExample-preview--gray-15 {
+ @include background-color(gray-15);
+}
+
+.DocsExample-preview--gray-16 {
+ @include background-color(gray-16);
+}
diff --git a/docs/assets/scss/primer/components/_text-color.scss b/docs/assets/scss/primer/components/_text-color.scss
new file mode 100644
index 0000000000..c92479f85e
--- /dev/null
+++ b/docs/assets/scss/primer/components/_text-color.scss
@@ -0,0 +1,112 @@
+.DocsExample-preview--text-color--default {
+ @include text-color(default);
+}
+
+.DocsExample-preview--text-color--dark {
+ @include text-color(dark);
+}
+
+.DocsExample-preview--text-color--light {
+ @include text-color(light);
+}
+
+.DocsExample-preview--text-color--x-light {
+ @include text-color(x-light);
+}
+
+.DocsExample-preview--text-color--xx-light {
+ @include text-color(xx-light);
+}
+
+.DocsExample-preview--text-color--positive {
+ @include text-color(positive);
+}
+
+.DocsExample-preview--text-color--warning {
+ @include text-color(warning);
+}
+
+.DocsExample-preview--text-color--negative {
+ @include text-color(negative);
+}
+
+
+.DocsExample-preview--text-color--fa-blue {
+ @include text-color(fa-blue);
+}
+
+.DocsExample-preview--text-color--fa-blue--dark {
+ @include text-color(fa-blue--dark);
+}
+
+.DocsExample-preview--text-color--fa-blue--x-dark {
+ @include text-color(fa-blue--x-dark);
+}
+
+.DocsExample-preview--text-color--fa-green--text {
+ @include text-color(fa-green--text);
+}
+
+.DocsExample-preview--text-color--fa-green--dark {
+ @include text-color(fa-green--dark);
+}
+
+.DocsExample-preview--text-color--fa-purple {
+ @include text-color(fa-purple);
+}
+
+.DocsExample-preview--text-color--fa-red--text {
+ @include text-color(fa-red--text);
+}
+
+.DocsExample-preview--text-color--fa-red--dark {
+ @include text-color(fa-red--dark);
+}
+
+.DocsExample-preview--text-color--fa-amber {
+ @include text-color(fa-amber);
+}
+
+.DocsExample-preview--text-color--gray-1 {
+ @include text-color(gray-1);
+}
+
+.DocsExample-preview--text-color--gray-2 {
+ @include text-color(gray-2);
+}
+
+.DocsExample-preview--text-color--gray-3 {
+ @include text-color(gray-3);
+}
+
+.DocsExample-preview--text-color--gray-4 {
+ @include text-color(gray-4);
+}
+
+.DocsExample-preview--text-color--gray-5 {
+ @include text-color(gray-5);
+}
+
+.DocsExample-preview--text-color--gray-6 {
+ @include text-color(gray-6);
+}
+
+.DocsExample-preview--text-color--gray-7 {
+ @include text-color(gray-7);
+}
+
+.DocsExample-preview--text-color--gray-8 {
+ @include text-color(gray-8);
+}
+
+.DocsExample-preview--text-color--gray-9 {
+ @include text-color(gray-9);
+}
+
+.DocsExample-preview--text-color--gray-10 {
+ @include text-color(gray-10);
+}
+
+.DocsExample-preview--text-color--gray-11 {
+ @include text-color(gray-11);
+}
diff --git a/docs/assets/scss/primer/components/_text-example.scss b/docs/assets/scss/primer/components/_text-example.scss
new file mode 100644
index 0000000000..453ae5cd70
--- /dev/null
+++ b/docs/assets/scss/primer/components/_text-example.scss
@@ -0,0 +1,209 @@
+.TextExample {
+ margin-top: 0;
+ max-width: 40em;
+ @include font-size(xx-large);
+ @include line-height(default);
+ @include margin-bottom(default);
+}
+
+.TextExample--small {
+ @include font-size(large);
+}
+
+.TextExample--x-light {
+ @include font-weight(x-light);
+}
+
+.TextExample--x-light--italic {
+ font-style: italic;
+ @include font-weight(x-light);
+}
+
+.TextExample--light {
+ @include font-weight(light);
+}
+
+.TextExample--light--italic {
+ font-style: italic;
+ @include font-weight(light);
+}
+
+.TextExample--regular {
+ @include font-weight(normal);
+}
+
+.TextExample--regular--italic {
+ font-style: italic;
+ @include font-weight(normal);
+}
+
+.TextExample--semi-bold {
+ @include font-weight(semi-bold);
+}
+
+.TextExample--semi-bold--italic {
+ font-style: italic;
+ @include font-weight(semi-bold);
+}
+
+.TextExample--bold {
+ @include font-weight(bold);
+}
+
+.TextExample--bold--italic {
+ font-style: italic;
+ @include font-weight(bold);
+}
+
+.TextExample--black {
+ @include font-weight(black);
+}
+
+.TextExample--black--italic {
+ font-style: italic;
+ @include font-weight(black);
+}
+
+.TextExample--font-family--default {
+ @include font-family(default);
+}
+
+.TextExample--font-family--legacy {
+ @include font-family(legacy);
+}
+
+.TextExample--font-family--editorial {
+ @include font-family(editorial);
+}
+
+.TextExample--font-family--handwritten {
+ @include font-family(handwritten);
+}
+
+.TextExample--font-family--monospace {
+ @include font-family(monospace);
+}
+
+.TextExample--font-size--1 {
+ @include font-size(1);
+}
+
+.TextExample--font-size--2 {
+ @include font-size(2);
+}
+
+.TextExample--font-size--3 {
+ @include font-size(3);
+}
+
+.TextExample--font-size--4 {
+ @include font-size(4);
+}
+
+.TextExample--font-size--5 {
+ @include font-size(5);
+}
+
+.TextExample--font-size--6 {
+ @include font-size(6);
+}
+
+.TextExample--font-size--7 {
+ @include font-size(7);
+}
+
+.TextExample--font-size--8 {
+ @include font-size(8);
+ @include line-height(tight);
+}
+
+.TextExample--font-size--9 {
+ @include font-size(9);
+ @include line-height(tight);
+}
+
+.TextExample--font-size--10 {
+ @include font-size(10);
+ @include line-height(x-tight);
+}
+
+.TextExample--font-size--11 {
+ @include font-size(11);
+ @include line-height(x-tight);
+}
+
+.TextExample--font-size--12 {
+ @include font-size(12);
+ @include line-height(xx-tight);
+}
+
+.TextExample--font-size--13 {
+ @include font-size(13);
+ @include line-height(xx-tight);
+}
+
+.TextExample--font-size--14 {
+ @include font-size(14);
+ @include line-height(xx-tight);
+}
+
+.TextExample--font-size--15 {
+ @include font-size(15);
+ @include line-height(xx-tight);
+}
+
+.TextExample--font-size--16 {
+ @include font-size(16);
+ @include line-height(xx-tight);
+}
+
+.TextExample--font-size--17 {
+ @include font-size(17);
+ @include line-height(xx-tight);
+}
+
+
+
+.TextExample--line-height--1 {
+ @include line-height(1);
+}
+
+.TextExample--line-height--2 {
+ @include line-height(2);
+}
+
+.TextExample--line-height--3 {
+ @include line-height(3);
+}
+
+.TextExample--line-height--4 {
+ @include line-height(4);
+}
+
+.TextExample--line-height--5 {
+ @include line-height(5);
+}
+
+.TextExample--line-height--6 {
+ @include line-height(6);
+}
+
+.TextExample--line-height--7 {
+ @include line-height(7);
+}
+
+.TextExample--line-height--8 {
+ @include line-height(8);
+}
+
+.TextExample--line-height--9 {
+ @include line-height(9);
+}
+
+.TextExample--line-height--10 {
+ @include line-height(10);
+}
+
+.TextExample--line-height--11 {
+ @include line-height(11);
+}
diff --git a/docs/avatars.md b/docs/avatars.md
deleted file mode 100644
index 8fc576492d..0000000000
--- a/docs/avatars.md
+++ /dev/null
@@ -1,40 +0,0 @@
----
-layout: page
-title: Avatars
----
-
-Avatars are images that users can set as their profile picture. On GitHub, they're always going to be rounded squares. They can be custom photos, uploaded by users, or generated as Identicons as a placeholder.
-
-## Contents
-
-* Will be replaced with the ToC, excluding the "Contents" header
-{:toc}
-
-## Basic example
-
-Add `.avatar` to any ` ` element to make it an avatar. This resets some key styles for alignment, address a Firefox image placeholder bug, and rounds the corners.
-
-Be sure to set `width` and `height` attributes for maximum browser performance.
-
-{% example html %}
-
-{% endexample %}
-
-## Small avatars
-
-We occasionally use smaller avatars. Anything less than `48px` wide should include the `.avatar-small` modifier class to reset the `border-radius` to a more appropriate level.
-
-{% example html %}
-
-{% endexample %}
-
-## Parent-child avatars
-
-When you need a larger parent avatar, and a smaller child one, overlaid slightly, use the parent-child classes.
-
-{% example html %}
-
-
-
-
-{% endexample %}
diff --git a/docs/blankslate.md b/docs/blankslate.md
deleted file mode 100644
index 1b54104e50..0000000000
--- a/docs/blankslate.md
+++ /dev/null
@@ -1,84 +0,0 @@
----
-layout: page
-title: Blankslate
----
-
-Blankslates are for when there is a lack of content within a page or section. Use them as placeholders to tell users why something isn't there. Be sure to provide an action to add content as well.
-
-## Contents
-
-* Will be replaced with the ToC, excluding the "Contents" header
-{:toc}
-
-## Basic example
-
-Wrap some content in the outer `.blankslate` wrapper to give it the blankslate appearance.
-
-{% example html %}
-
-
This is a blank slate
-
Use it to provide information when no dynamic content exists.
-
-{% endexample %}
-
-## With Octicons
-
-When it helps the message, include `.mega-octicon`s as the first elements in the blank slate. Be sure to use relevant icons.
-
-{% example html %}
-
-
-
-
-
This is a blank slate
-
Use it to provide information when no dynamic content exists.
-
-{% endexample %}
-
-## Variations
-
-Add an additional optional class to the `.blankslate` to change its appearance.
-
-### Fixed width
-
-Narrows the blankslate container to not occupy the entire available width.
-
-{% example html %}
-
-
This is a blank slate
-
Use it to provide information when no dynamic content exists.
-
-{% endexample %}
-
-### Capped
-
-Removes the `border-radius` on the top corners.
-
-{% example html %}
-
-
This is a blank slate
-
Use it to provide information when no dynamic content exists.
-
-{% endexample %}
-
-### Spacious
-
-Significantly increases the vertical padding.
-
-{% example html %}
-
-
This is a blank slate
-
Use it to provide information when no dynamic content exists.
-
-{% endexample %}
-
-### No background
-
-Removes the `background-color` and `border`.
-
-{% example html %}
-
-
This is a blank slate
-
Use it to provide information when no dynamic content exists.
-
-{% endexample %}
diff --git a/docs/bower_components/octicons/.bower.json b/docs/bower_components/octicons/.bower.json
deleted file mode 100644
index 0213af1cf2..0000000000
--- a/docs/bower_components/octicons/.bower.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "name": "octicons",
- "description": "GitHub's icon font",
- "license": "SIL OFL 1.1, MIT",
- "homepage": "http://octicons.github.com",
- "authors": [
- "GitHub "
- ],
- "main": [
- "octicons/sprockets-octicons.scss",
- "octicons/octicons.eot",
- "octicons/octicons.svg",
- "octicons/octicons.ttf",
- "octicons/octicons.woff"
- ],
- "keywords": [
- "GitHub",
- "icons",
- "font",
- "web font",
- "icon font"
- ],
- "ignore": [
- "**/.*",
- "bower_components"
- ],
- "version": "2.1.2",
- "_release": "2.1.2",
- "_resolution": {
- "type": "version",
- "tag": "v2.1.2",
- "commit": "0af5befb63798321e05901518796288a3932d226"
- },
- "_source": "git://github.com/github/octicons.git",
- "_target": "*",
- "_originalSource": "octicons"
-}
\ No newline at end of file
diff --git a/docs/bower_components/octicons/CHANGELOG.md b/docs/bower_components/octicons/CHANGELOG.md
deleted file mode 100644
index 04441135d8..0000000000
--- a/docs/bower_components/octicons/CHANGELOG.md
+++ /dev/null
@@ -1,7 +0,0 @@
-## 2.0.1 (June 16, 2014)
-
-- Add mention of github.com/logos to the license
-
-## 2.0.0 (June 16, 2014)
-
-- Hello world
diff --git a/docs/bower_components/octicons/CONTRIBUTING.md b/docs/bower_components/octicons/CONTRIBUTING.md
deleted file mode 100644
index 57694316f0..0000000000
--- a/docs/bower_components/octicons/CONTRIBUTING.md
+++ /dev/null
@@ -1,3 +0,0 @@
-The contents of */octicons* */svg* are generated by an automated process. Changes to these files may be accepted, but may also be overwritten.
-
-Octicons is GitHub's icon font. At this time, new icons will only add icons when they are needed for GitHub products.
diff --git a/docs/bower_components/octicons/LICENSE.txt b/docs/bower_components/octicons/LICENSE.txt
deleted file mode 100644
index 259b43d14d..0000000000
--- a/docs/bower_components/octicons/LICENSE.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-(c) 2012-2014 GitHub
-
-When using the GitHub logos, be sure to follow the GitHub logo guidelines (https://github.com/logos)
-
-Font License: SIL OFL 1.1 (http://scripts.sil.org/OFL)
-Applies to all font files
-
-Code License: MIT (http://choosealicense.com/licenses/mit/)
-Applies to all other files
diff --git a/docs/bower_components/octicons/README.md b/docs/bower_components/octicons/README.md
deleted file mode 100644
index b462e68318..0000000000
--- a/docs/bower_components/octicons/README.md
+++ /dev/null
@@ -1,127 +0,0 @@
-# Octicons!
-
-This is the [Bower][bower] package for [GitHub Octicons][octicons].
-
-## Add Octicons to your project
-
-1. Create a new file called *bower.json* (if you don't have one already).
-
-2. Add a new line for the Octicon dependency, pointing to the correct repository:
-
- ``` json
- {
- "name": "my_great_project",
- "dependencies": {
- "octicons": "*"
- }
- }
- ```
-
-3. Run `bower install`. The Octicons styles will be downloaded to *bower_components/octicons*.
-
-4. Link to the `octicons.css` stylesheet in the `` of your `` page:
-
- ``` html
-
- ```
-
-4. Simply use an icon in your HTML page:
-
- ``` html
-
- ```
-
-### Rails' asset pipeline
-
-Octicons includes a stylesheet specifically for [Rails 4/Sprockets][sprockets].
-
-1. Create a new file called *vendor/assets/bower.json* (if you don't have one already).
-
-2. Add a new line for the Octicon dependency, pointing to the correct repository:
-
- ``` json
- {
- "name": "my_great_project",
- "dependencies": {
- "octicons": "*"
- }
- }
- ```
-
-3. `cd` into `vendor/assets` and run `bower install`. The Octicons styles will be downloaded to *vendor/assets/bower_components/octicons*.
-
-4. Open your config/application.rb, and add this line inside your Application:
-
- ``` ruby
- config.assets.precompile += %w(*.svg *.eot *.woff *.ttf)
- ```
-
-5. In your application stylesheet, require `sprockets-octicons`:
-
- ``` css
- /*
- = require sprockets-octicons
- */
- ```
-
-6. Simply use an icon in your HTML page:
-
- ``` html
-
- ```
-
-7. If you want a view helper, add something like this to *app/helpers/application_helper.rb*:
-
- ``` ruby
- def octicon(code)
- content_tag :span, '', :class => "octicon octicon-#{code.to_s.dasherize}"
- end
- ```
-
-## Best practices
-
-- Octicons look best in sizes that are multiples of 16px. You can update the size using the `font-size` CSS property. For example:
-
- ``` css
- .octicon {
- font-size: 32px;
- }
- ```
-
-- Octicons are not monospaced. This lets them work well next to type, but it means they won’t stack nicely by default. If you intend to stack octicons, such as in navigation, you will want to add some CSS to make them the same width, and centered. For example:
-
- ``` css
- .navigation .octicon {
- width: 16px;
- text-align: center;
- }
- ```
-
-### Resources
-
-- [octicons.github.com](http://octicons.github.com/) - the Octicons website
-- Read why [icon fonts are awesome](http://css-tricks.com/examples/IconFont/)
-- How to compose your [HTML for icon font usage](http://css-tricks.com/html-for-icon-font-usage/)
-
-## Why can't I see the characters in Font Book??
-
-Give this a try, you should be all set:
-
-
-
-## FAQ
-
-Check out [issues with the FAQ label](https://github.com/github/octicons/issues?q=is%3Aclosed+is%3Aissue+label%3AFAQ).
-
-## Versions
-
-Octicons operates similarly to [Semver](http://semver.org/) with the following version convention:
-
-- Major: Breaking changes — removed icons, markup changes, unicode switches, css renames, icon redesigns
-- Minor: Non-breaking changes — new icons, new aliases, minor icon changes
-- Patch: Unnoticeable tweaks — slight visual changes, package updates
-
-
-[octicons]: http://octicons.github.com
-[bower]: http://bower.io/
-[sprockets]: http://guides.rubyonrails.org/asset_pipeline.html
diff --git a/docs/bower_components/octicons/bower.json b/docs/bower_components/octicons/bower.json
deleted file mode 100644
index 53b99836e7..0000000000
--- a/docs/bower_components/octicons/bower.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "name": "octicons",
- "description": "GitHub's icon font",
- "license": "SIL OFL 1.1, MIT",
- "homepage": "http://octicons.github.com",
- "authors": [
- "GitHub "
- ],
- "main": [
- "octicons/sprockets-octicons.scss",
- "octicons/octicons.eot",
- "octicons/octicons.svg",
- "octicons/octicons.ttf",
- "octicons/octicons.woff"
- ],
- "keywords": [
- "GitHub",
- "icons",
- "font",
- "web font",
- "icon font"
- ],
- "ignore": [
- "**/.*",
- "bower_components"
- ]
-}
diff --git a/docs/bower_components/octicons/octicons/README.md b/docs/bower_components/octicons/octicons/README.md
deleted file mode 100644
index 1007073350..0000000000
--- a/docs/bower_components/octicons/octicons/README.md
+++ /dev/null
@@ -1 +0,0 @@
-If you intend to install Octicons locally, install `octicons-local.ttf`. It should appear as “github-octicons” in your font list. It is specially designed not to conflict with GitHub's web fonts.
diff --git a/docs/bower_components/octicons/octicons/octicons-local.ttf b/docs/bower_components/octicons/octicons/octicons-local.ttf
deleted file mode 100644
index 9de0e916cf..0000000000
Binary files a/docs/bower_components/octicons/octicons/octicons-local.ttf and /dev/null differ
diff --git a/docs/bower_components/octicons/octicons/octicons.css b/docs/bower_components/octicons/octicons/octicons.css
deleted file mode 100644
index a29736df9a..0000000000
--- a/docs/bower_components/octicons/octicons/octicons.css
+++ /dev/null
@@ -1,234 +0,0 @@
-@font-face {
- font-family: 'octicons';
- src: url('octicons.eot?#iefix') format('embedded-opentype'),
- url('octicons.woff') format('woff'),
- url('octicons.ttf') format('truetype'),
- url('octicons.svg#octicons') format('svg');
- font-weight: normal;
- font-style: normal;
-}
-
-/*
-
-.octicon is optimized for 16px.
-.mega-octicon is optimized for 32px but can be used larger.
-
-*/
-.octicon, .mega-octicon {
- font: normal normal normal 16px/1 octicons;
- display: inline-block;
- text-decoration: none;
- text-rendering: auto;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.mega-octicon { font-size: 32px; }
-
-.octicon-alert:before { content: '\f02d'} /* */
-.octicon-alignment-align:before { content: '\f08a'} /* */
-.octicon-alignment-aligned-to:before { content: '\f08e'} /* */
-.octicon-alignment-unalign:before { content: '\f08b'} /* */
-.octicon-arrow-down:before { content: '\f03f'} /* */
-.octicon-arrow-left:before { content: '\f040'} /* */
-.octicon-arrow-right:before { content: '\f03e'} /* */
-.octicon-arrow-small-down:before { content: '\f0a0'} /* */
-.octicon-arrow-small-left:before { content: '\f0a1'} /* */
-.octicon-arrow-small-right:before { content: '\f071'} /* */
-.octicon-arrow-small-up:before { content: '\f09f'} /* */
-.octicon-arrow-up:before { content: '\f03d'} /* */
-.octicon-beer:before { content: '\f069'} /* */
-.octicon-book:before { content: '\f007'} /* */
-.octicon-bookmark:before { content: '\f07b'} /* */
-.octicon-briefcase:before { content: '\f0d3'} /* */
-.octicon-broadcast:before { content: '\f048'} /* */
-.octicon-browser:before { content: '\f0c5'} /* */
-.octicon-bug:before { content: '\f091'} /* */
-.octicon-calendar:before { content: '\f068'} /* */
-.octicon-check:before { content: '\f03a'} /* */
-.octicon-checklist:before { content: '\f076'} /* */
-.octicon-chevron-down:before { content: '\f0a3'} /* */
-.octicon-chevron-left:before { content: '\f0a4'} /* */
-.octicon-chevron-right:before { content: '\f078'} /* */
-.octicon-chevron-up:before { content: '\f0a2'} /* */
-.octicon-circle-slash:before { content: '\f084'} /* */
-.octicon-circuit-board:before { content: '\f0d6'} /* */
-.octicon-clippy:before { content: '\f035'} /* */
-.octicon-clock:before { content: '\f046'} /* */
-.octicon-cloud-download:before { content: '\f00b'} /* */
-.octicon-cloud-upload:before { content: '\f00c'} /* */
-.octicon-code:before { content: '\f05f'} /* */
-.octicon-color-mode:before { content: '\f065'} /* */
-.octicon-comment-add:before,
-.octicon-comment:before { content: '\f02b'} /* */
-.octicon-comment-discussion:before { content: '\f04f'} /* */
-.octicon-credit-card:before { content: '\f045'} /* */
-.octicon-dash:before { content: '\f0ca'} /* */
-.octicon-dashboard:before { content: '\f07d'} /* */
-.octicon-database:before { content: '\f096'} /* */
-.octicon-device-camera:before { content: '\f056'} /* */
-.octicon-device-camera-video:before { content: '\f057'} /* */
-.octicon-device-desktop:before { content: '\f27c'} /* */
-.octicon-device-mobile:before { content: '\f038'} /* */
-.octicon-diff:before { content: '\f04d'} /* */
-.octicon-diff-added:before { content: '\f06b'} /* */
-.octicon-diff-ignored:before { content: '\f099'} /* */
-.octicon-diff-modified:before { content: '\f06d'} /* */
-.octicon-diff-removed:before { content: '\f06c'} /* */
-.octicon-diff-renamed:before { content: '\f06e'} /* */
-.octicon-ellipsis:before { content: '\f09a'} /* */
-.octicon-eye-unwatch:before,
-.octicon-eye-watch:before,
-.octicon-eye:before { content: '\f04e'} /* */
-.octicon-file-binary:before { content: '\f094'} /* */
-.octicon-file-code:before { content: '\f010'} /* */
-.octicon-file-directory:before { content: '\f016'} /* */
-.octicon-file-media:before { content: '\f012'} /* */
-.octicon-file-pdf:before { content: '\f014'} /* */
-.octicon-file-submodule:before { content: '\f017'} /* */
-.octicon-file-symlink-directory:before { content: '\f0b1'} /* */
-.octicon-file-symlink-file:before { content: '\f0b0'} /* */
-.octicon-file-text:before { content: '\f011'} /* */
-.octicon-file-zip:before { content: '\f013'} /* */
-.octicon-flame:before { content: '\f0d2'} /* */
-.octicon-fold:before { content: '\f0cc'} /* */
-.octicon-gear:before { content: '\f02f'} /* */
-.octicon-gift:before { content: '\f042'} /* */
-.octicon-gist:before { content: '\f00e'} /* */
-.octicon-gist-secret:before { content: '\f08c'} /* */
-.octicon-git-branch-create:before,
-.octicon-git-branch-delete:before,
-.octicon-git-branch:before { content: '\f020'} /* */
-.octicon-git-commit:before { content: '\f01f'} /* */
-.octicon-git-compare:before { content: '\f0ac'} /* */
-.octicon-git-merge:before { content: '\f023'} /* */
-.octicon-git-pull-request-abandoned:before,
-.octicon-git-pull-request:before { content: '\f009'} /* */
-.octicon-globe:before { content: '\f0b6'} /* */
-.octicon-graph:before { content: '\f043'} /* */
-.octicon-heart:before { content: '\2665'} /* ♥ */
-.octicon-history:before { content: '\f07e'} /* */
-.octicon-home:before { content: '\f08d'} /* */
-.octicon-horizontal-rule:before { content: '\f070'} /* */
-.octicon-hourglass:before { content: '\f09e'} /* */
-.octicon-hubot:before { content: '\f09d'} /* */
-.octicon-inbox:before { content: '\f0cf'} /* */
-.octicon-info:before { content: '\f059'} /* */
-.octicon-issue-closed:before { content: '\f028'} /* */
-.octicon-issue-opened:before { content: '\f026'} /* */
-.octicon-issue-reopened:before { content: '\f027'} /* */
-.octicon-jersey:before { content: '\f019'} /* */
-.octicon-jump-down:before { content: '\f072'} /* */
-.octicon-jump-left:before { content: '\f0a5'} /* */
-.octicon-jump-right:before { content: '\f0a6'} /* */
-.octicon-jump-up:before { content: '\f073'} /* */
-.octicon-key:before { content: '\f049'} /* */
-.octicon-keyboard:before { content: '\f00d'} /* */
-.octicon-law:before { content: '\f0d8'} /* */
-.octicon-light-bulb:before { content: '\f000'} /* */
-.octicon-link:before { content: '\f05c'} /* */
-.octicon-link-external:before { content: '\f07f'} /* */
-.octicon-list-ordered:before { content: '\f062'} /* */
-.octicon-list-unordered:before { content: '\f061'} /* */
-.octicon-location:before { content: '\f060'} /* */
-.octicon-gist-private:before,
-.octicon-mirror-private:before,
-.octicon-git-fork-private:before,
-.octicon-lock:before { content: '\f06a'} /* */
-.octicon-logo-github:before { content: '\f092'} /* */
-.octicon-mail:before { content: '\f03b'} /* */
-.octicon-mail-read:before { content: '\f03c'} /* */
-.octicon-mail-reply:before { content: '\f051'} /* */
-.octicon-mark-github:before { content: '\f00a'} /* */
-.octicon-markdown:before { content: '\f0c9'} /* */
-.octicon-megaphone:before { content: '\f077'} /* */
-.octicon-mention:before { content: '\f0be'} /* */
-.octicon-microscope:before { content: '\f089'} /* */
-.octicon-milestone:before { content: '\f075'} /* */
-.octicon-mirror-public:before,
-.octicon-mirror:before { content: '\f024'} /* */
-.octicon-mortar-board:before { content: '\f0d7'} /* */
-.octicon-move-down:before { content: '\f0a8'} /* */
-.octicon-move-left:before { content: '\f074'} /* */
-.octicon-move-right:before { content: '\f0a9'} /* */
-.octicon-move-up:before { content: '\f0a7'} /* */
-.octicon-mute:before { content: '\f080'} /* */
-.octicon-no-newline:before { content: '\f09c'} /* */
-.octicon-octoface:before { content: '\f008'} /* */
-.octicon-organization:before { content: '\f037'} /* */
-.octicon-package:before { content: '\f0c4'} /* */
-.octicon-paintcan:before { content: '\f0d1'} /* */
-.octicon-pencil:before { content: '\f058'} /* */
-.octicon-person-add:before,
-.octicon-person-follow:before,
-.octicon-person:before { content: '\f018'} /* */
-.octicon-pin:before { content: '\f041'} /* */
-.octicon-playback-fast-forward:before { content: '\f0bd'} /* */
-.octicon-playback-pause:before { content: '\f0bb'} /* */
-.octicon-playback-play:before { content: '\f0bf'} /* */
-.octicon-playback-rewind:before { content: '\f0bc'} /* */
-.octicon-plug:before { content: '\f0d4'} /* */
-.octicon-repo-create:before,
-.octicon-gist-new:before,
-.octicon-file-directory-create:before,
-.octicon-file-add:before,
-.octicon-plus:before { content: '\f05d'} /* */
-.octicon-podium:before { content: '\f0af'} /* */
-.octicon-primitive-dot:before { content: '\f052'} /* */
-.octicon-primitive-square:before { content: '\f053'} /* */
-.octicon-pulse:before { content: '\f085'} /* */
-.octicon-puzzle:before { content: '\f0c0'} /* */
-.octicon-question:before { content: '\f02c'} /* */
-.octicon-quote:before { content: '\f063'} /* */
-.octicon-radio-tower:before { content: '\f030'} /* */
-.octicon-repo-delete:before,
-.octicon-repo:before { content: '\f001'} /* */
-.octicon-repo-clone:before { content: '\f04c'} /* */
-.octicon-repo-force-push:before { content: '\f04a'} /* */
-.octicon-gist-fork:before,
-.octicon-repo-forked:before { content: '\f002'} /* */
-.octicon-repo-pull:before { content: '\f006'} /* */
-.octicon-repo-push:before { content: '\f005'} /* */
-.octicon-rocket:before { content: '\f033'} /* */
-.octicon-rss:before { content: '\f034'} /* */
-.octicon-ruby:before { content: '\f047'} /* */
-.octicon-screen-full:before { content: '\f066'} /* */
-.octicon-screen-normal:before { content: '\f067'} /* */
-.octicon-search-save:before,
-.octicon-search:before { content: '\f02e'} /* */
-.octicon-server:before { content: '\f097'} /* */
-.octicon-settings:before { content: '\f07c'} /* */
-.octicon-log-in:before,
-.octicon-sign-in:before { content: '\f036'} /* */
-.octicon-log-out:before,
-.octicon-sign-out:before { content: '\f032'} /* */
-.octicon-split:before { content: '\f0c6'} /* */
-.octicon-squirrel:before { content: '\f0b2'} /* */
-.octicon-star-add:before,
-.octicon-star-delete:before,
-.octicon-star:before { content: '\f02a'} /* */
-.octicon-steps:before { content: '\f0c7'} /* */
-.octicon-stop:before { content: '\f08f'} /* */
-.octicon-repo-sync:before,
-.octicon-sync:before { content: '\f087'} /* */
-.octicon-tag-remove:before,
-.octicon-tag-add:before,
-.octicon-tag:before { content: '\f015'} /* */
-.octicon-telescope:before { content: '\f088'} /* */
-.octicon-terminal:before { content: '\f0c8'} /* */
-.octicon-three-bars:before { content: '\f05e'} /* */
-.octicon-tools:before { content: '\f031'} /* */
-.octicon-trashcan:before { content: '\f0d0'} /* */
-.octicon-triangle-down:before { content: '\f05b'} /* */
-.octicon-triangle-left:before { content: '\f044'} /* */
-.octicon-triangle-right:before { content: '\f05a'} /* */
-.octicon-triangle-up:before { content: '\f0aa'} /* */
-.octicon-unfold:before { content: '\f039'} /* */
-.octicon-unmute:before { content: '\f0ba'} /* */
-.octicon-versions:before { content: '\f064'} /* */
-.octicon-remove-close:before,
-.octicon-x:before { content: '\f081'} /* */
-.octicon-zap:before { content: '\26A1'} /* ⚡ */
diff --git a/docs/bower_components/octicons/octicons/octicons.eot b/docs/bower_components/octicons/octicons/octicons.eot
deleted file mode 100644
index 89f55a315c..0000000000
Binary files a/docs/bower_components/octicons/octicons/octicons.eot and /dev/null differ
diff --git a/docs/bower_components/octicons/octicons/octicons.less b/docs/bower_components/octicons/octicons/octicons.less
deleted file mode 100644
index 61754e576e..0000000000
--- a/docs/bower_components/octicons/octicons/octicons.less
+++ /dev/null
@@ -1,233 +0,0 @@
-@octicons-font-path: ".";
-@octicons-version: "6d0976c7609c435a1353fcfc5de3cd95cee2a673";
-
-@font-face {
- font-family: 'octicons';
- src: ~"url('@{octicons-font-path}/octicons.eot?#iefix&v=@{octicons-version}') format('embedded-opentype')",
- ~"url('@{octicons-font-path}/octicons.woff?v=@{octicons-version}') format('woff')",
- ~"url('@{octicons-font-path}/octicons.ttf?v=@{octicons-version}') format('truetype')",
- ~"url('@{octicons-font-path}/octicons.svg?v=@{octicons-version}#octicons') format('svg')";
- font-weight: normal;
- font-style: normal;
-}
-
-// .octicon is optimized for 16px.
-// .mega-octicon is optimized for 32px but can be used larger.
-.octicon, .mega-octicon {
- font: normal normal normal 16px/1 octicons;
- display: inline-block;
- text-decoration: none;
- text-rendering: auto;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.mega-octicon { font-size: 32px; }
-
-.octicon-alert:before { content: '\f02d'} /* */
-.octicon-alignment-align:before { content: '\f08a'} /* */
-.octicon-alignment-aligned-to:before { content: '\f08e'} /* */
-.octicon-alignment-unalign:before { content: '\f08b'} /* */
-.octicon-arrow-down:before { content: '\f03f'} /* */
-.octicon-arrow-left:before { content: '\f040'} /* */
-.octicon-arrow-right:before { content: '\f03e'} /* */
-.octicon-arrow-small-down:before { content: '\f0a0'} /* */
-.octicon-arrow-small-left:before { content: '\f0a1'} /* */
-.octicon-arrow-small-right:before { content: '\f071'} /* */
-.octicon-arrow-small-up:before { content: '\f09f'} /* */
-.octicon-arrow-up:before { content: '\f03d'} /* */
-.octicon-beer:before { content: '\f069'} /* */
-.octicon-book:before { content: '\f007'} /* */
-.octicon-bookmark:before { content: '\f07b'} /* */
-.octicon-briefcase:before { content: '\f0d3'} /* */
-.octicon-broadcast:before { content: '\f048'} /* */
-.octicon-browser:before { content: '\f0c5'} /* */
-.octicon-bug:before { content: '\f091'} /* */
-.octicon-calendar:before { content: '\f068'} /* */
-.octicon-check:before { content: '\f03a'} /* */
-.octicon-checklist:before { content: '\f076'} /* */
-.octicon-chevron-down:before { content: '\f0a3'} /* */
-.octicon-chevron-left:before { content: '\f0a4'} /* */
-.octicon-chevron-right:before { content: '\f078'} /* */
-.octicon-chevron-up:before { content: '\f0a2'} /* */
-.octicon-circle-slash:before { content: '\f084'} /* */
-.octicon-circuit-board:before { content: '\f0d6'} /* */
-.octicon-clippy:before { content: '\f035'} /* */
-.octicon-clock:before { content: '\f046'} /* */
-.octicon-cloud-download:before { content: '\f00b'} /* */
-.octicon-cloud-upload:before { content: '\f00c'} /* */
-.octicon-code:before { content: '\f05f'} /* */
-.octicon-color-mode:before { content: '\f065'} /* */
-.octicon-comment-add:before,
-.octicon-comment:before { content: '\f02b'} /* */
-.octicon-comment-discussion:before { content: '\f04f'} /* */
-.octicon-credit-card:before { content: '\f045'} /* */
-.octicon-dash:before { content: '\f0ca'} /* */
-.octicon-dashboard:before { content: '\f07d'} /* */
-.octicon-database:before { content: '\f096'} /* */
-.octicon-device-camera:before { content: '\f056'} /* */
-.octicon-device-camera-video:before { content: '\f057'} /* */
-.octicon-device-desktop:before { content: '\f27c'} /* */
-.octicon-device-mobile:before { content: '\f038'} /* */
-.octicon-diff:before { content: '\f04d'} /* */
-.octicon-diff-added:before { content: '\f06b'} /* */
-.octicon-diff-ignored:before { content: '\f099'} /* */
-.octicon-diff-modified:before { content: '\f06d'} /* */
-.octicon-diff-removed:before { content: '\f06c'} /* */
-.octicon-diff-renamed:before { content: '\f06e'} /* */
-.octicon-ellipsis:before { content: '\f09a'} /* */
-.octicon-eye-unwatch:before,
-.octicon-eye-watch:before,
-.octicon-eye:before { content: '\f04e'} /* */
-.octicon-file-binary:before { content: '\f094'} /* */
-.octicon-file-code:before { content: '\f010'} /* */
-.octicon-file-directory:before { content: '\f016'} /* */
-.octicon-file-media:before { content: '\f012'} /* */
-.octicon-file-pdf:before { content: '\f014'} /* */
-.octicon-file-submodule:before { content: '\f017'} /* */
-.octicon-file-symlink-directory:before { content: '\f0b1'} /* */
-.octicon-file-symlink-file:before { content: '\f0b0'} /* */
-.octicon-file-text:before { content: '\f011'} /* */
-.octicon-file-zip:before { content: '\f013'} /* */
-.octicon-flame:before { content: '\f0d2'} /* */
-.octicon-fold:before { content: '\f0cc'} /* */
-.octicon-gear:before { content: '\f02f'} /* */
-.octicon-gift:before { content: '\f042'} /* */
-.octicon-gist:before { content: '\f00e'} /* */
-.octicon-gist-secret:before { content: '\f08c'} /* */
-.octicon-git-branch-create:before,
-.octicon-git-branch-delete:before,
-.octicon-git-branch:before { content: '\f020'} /* */
-.octicon-git-commit:before { content: '\f01f'} /* */
-.octicon-git-compare:before { content: '\f0ac'} /* */
-.octicon-git-merge:before { content: '\f023'} /* */
-.octicon-git-pull-request-abandoned:before,
-.octicon-git-pull-request:before { content: '\f009'} /* */
-.octicon-globe:before { content: '\f0b6'} /* */
-.octicon-graph:before { content: '\f043'} /* */
-.octicon-heart:before { content: '\2665'} /* ♥ */
-.octicon-history:before { content: '\f07e'} /* */
-.octicon-home:before { content: '\f08d'} /* */
-.octicon-horizontal-rule:before { content: '\f070'} /* */
-.octicon-hourglass:before { content: '\f09e'} /* */
-.octicon-hubot:before { content: '\f09d'} /* */
-.octicon-inbox:before { content: '\f0cf'} /* */
-.octicon-info:before { content: '\f059'} /* */
-.octicon-issue-closed:before { content: '\f028'} /* */
-.octicon-issue-opened:before { content: '\f026'} /* */
-.octicon-issue-reopened:before { content: '\f027'} /* */
-.octicon-jersey:before { content: '\f019'} /* */
-.octicon-jump-down:before { content: '\f072'} /* */
-.octicon-jump-left:before { content: '\f0a5'} /* */
-.octicon-jump-right:before { content: '\f0a6'} /* */
-.octicon-jump-up:before { content: '\f073'} /* */
-.octicon-key:before { content: '\f049'} /* */
-.octicon-keyboard:before { content: '\f00d'} /* */
-.octicon-law:before { content: '\f0d8'} /* */
-.octicon-light-bulb:before { content: '\f000'} /* */
-.octicon-link:before { content: '\f05c'} /* */
-.octicon-link-external:before { content: '\f07f'} /* */
-.octicon-list-ordered:before { content: '\f062'} /* */
-.octicon-list-unordered:before { content: '\f061'} /* */
-.octicon-location:before { content: '\f060'} /* */
-.octicon-gist-private:before,
-.octicon-mirror-private:before,
-.octicon-git-fork-private:before,
-.octicon-lock:before { content: '\f06a'} /* */
-.octicon-logo-github:before { content: '\f092'} /* */
-.octicon-mail:before { content: '\f03b'} /* */
-.octicon-mail-read:before { content: '\f03c'} /* */
-.octicon-mail-reply:before { content: '\f051'} /* */
-.octicon-mark-github:before { content: '\f00a'} /* */
-.octicon-markdown:before { content: '\f0c9'} /* */
-.octicon-megaphone:before { content: '\f077'} /* */
-.octicon-mention:before { content: '\f0be'} /* */
-.octicon-microscope:before { content: '\f089'} /* */
-.octicon-milestone:before { content: '\f075'} /* */
-.octicon-mirror-public:before,
-.octicon-mirror:before { content: '\f024'} /* */
-.octicon-mortar-board:before { content: '\f0d7'} /* */
-.octicon-move-down:before { content: '\f0a8'} /* */
-.octicon-move-left:before { content: '\f074'} /* */
-.octicon-move-right:before { content: '\f0a9'} /* */
-.octicon-move-up:before { content: '\f0a7'} /* */
-.octicon-mute:before { content: '\f080'} /* */
-.octicon-no-newline:before { content: '\f09c'} /* */
-.octicon-octoface:before { content: '\f008'} /* */
-.octicon-organization:before { content: '\f037'} /* */
-.octicon-package:before { content: '\f0c4'} /* */
-.octicon-paintcan:before { content: '\f0d1'} /* */
-.octicon-pencil:before { content: '\f058'} /* */
-.octicon-person-add:before,
-.octicon-person-follow:before,
-.octicon-person:before { content: '\f018'} /* */
-.octicon-pin:before { content: '\f041'} /* */
-.octicon-playback-fast-forward:before { content: '\f0bd'} /* */
-.octicon-playback-pause:before { content: '\f0bb'} /* */
-.octicon-playback-play:before { content: '\f0bf'} /* */
-.octicon-playback-rewind:before { content: '\f0bc'} /* */
-.octicon-plug:before { content: '\f0d4'} /* */
-.octicon-repo-create:before,
-.octicon-gist-new:before,
-.octicon-file-directory-create:before,
-.octicon-file-add:before,
-.octicon-plus:before { content: '\f05d'} /* */
-.octicon-podium:before { content: '\f0af'} /* */
-.octicon-primitive-dot:before { content: '\f052'} /* */
-.octicon-primitive-square:before { content: '\f053'} /* */
-.octicon-pulse:before { content: '\f085'} /* */
-.octicon-puzzle:before { content: '\f0c0'} /* */
-.octicon-question:before { content: '\f02c'} /* */
-.octicon-quote:before { content: '\f063'} /* */
-.octicon-radio-tower:before { content: '\f030'} /* */
-.octicon-repo-delete:before,
-.octicon-repo:before { content: '\f001'} /* */
-.octicon-repo-clone:before { content: '\f04c'} /* */
-.octicon-repo-force-push:before { content: '\f04a'} /* */
-.octicon-gist-fork:before,
-.octicon-repo-forked:before { content: '\f002'} /* */
-.octicon-repo-pull:before { content: '\f006'} /* */
-.octicon-repo-push:before { content: '\f005'} /* */
-.octicon-rocket:before { content: '\f033'} /* */
-.octicon-rss:before { content: '\f034'} /* */
-.octicon-ruby:before { content: '\f047'} /* */
-.octicon-screen-full:before { content: '\f066'} /* */
-.octicon-screen-normal:before { content: '\f067'} /* */
-.octicon-search-save:before,
-.octicon-search:before { content: '\f02e'} /* */
-.octicon-server:before { content: '\f097'} /* */
-.octicon-settings:before { content: '\f07c'} /* */
-.octicon-log-in:before,
-.octicon-sign-in:before { content: '\f036'} /* */
-.octicon-log-out:before,
-.octicon-sign-out:before { content: '\f032'} /* */
-.octicon-split:before { content: '\f0c6'} /* */
-.octicon-squirrel:before { content: '\f0b2'} /* */
-.octicon-star-add:before,
-.octicon-star-delete:before,
-.octicon-star:before { content: '\f02a'} /* */
-.octicon-steps:before { content: '\f0c7'} /* */
-.octicon-stop:before { content: '\f08f'} /* */
-.octicon-repo-sync:before,
-.octicon-sync:before { content: '\f087'} /* */
-.octicon-tag-remove:before,
-.octicon-tag-add:before,
-.octicon-tag:before { content: '\f015'} /* */
-.octicon-telescope:before { content: '\f088'} /* */
-.octicon-terminal:before { content: '\f0c8'} /* */
-.octicon-three-bars:before { content: '\f05e'} /* */
-.octicon-tools:before { content: '\f031'} /* */
-.octicon-trashcan:before { content: '\f0d0'} /* */
-.octicon-triangle-down:before { content: '\f05b'} /* */
-.octicon-triangle-left:before { content: '\f044'} /* */
-.octicon-triangle-right:before { content: '\f05a'} /* */
-.octicon-triangle-up:before { content: '\f0aa'} /* */
-.octicon-unfold:before { content: '\f039'} /* */
-.octicon-unmute:before { content: '\f0ba'} /* */
-.octicon-versions:before { content: '\f064'} /* */
-.octicon-remove-close:before,
-.octicon-x:before { content: '\f081'} /* */
-.octicon-zap:before { content: '\26A1'} /* ⚡ */
diff --git a/docs/bower_components/octicons/octicons/octicons.svg b/docs/bower_components/octicons/octicons/octicons.svg
deleted file mode 100644
index ea3e0f1615..0000000000
--- a/docs/bower_components/octicons/octicons/octicons.svg
+++ /dev/null
@@ -1,198 +0,0 @@
-
-
-
-
-(c) 2012-2014 GitHub
-
-When using the GitHub logos, be sure to follow the GitHub logo guidelines (https://github.com/logos)
-
-Font License: SIL OFL 1.1 (http://scripts.sil.org/OFL)
-Applies to all font files
-
-Code License: MIT (http://choosealicense.com/licenses/mit/)
-Applies to all other files
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/bower_components/octicons/octicons/octicons.ttf b/docs/bower_components/octicons/octicons/octicons.ttf
deleted file mode 100644
index 557b893dc5..0000000000
Binary files a/docs/bower_components/octicons/octicons/octicons.ttf and /dev/null differ
diff --git a/docs/bower_components/octicons/octicons/octicons.woff b/docs/bower_components/octicons/octicons/octicons.woff
deleted file mode 100644
index 3c0e36ad6f..0000000000
Binary files a/docs/bower_components/octicons/octicons/octicons.woff and /dev/null differ
diff --git a/docs/bower_components/octicons/octicons/sprockets-octicons.scss b/docs/bower_components/octicons/octicons/sprockets-octicons.scss
deleted file mode 100644
index 0e518fc171..0000000000
--- a/docs/bower_components/octicons/octicons/sprockets-octicons.scss
+++ /dev/null
@@ -1,230 +0,0 @@
-@font-face {
- font-family: 'octicons';
- src: font-url('octicons.eot?#iefix') format('embedded-opentype'),
- font-url('octicons.woff') format('woff'),
- font-url('octicons.ttf') format('truetype'),
- font-url('octicons.svg#octicons') format('svg');
- font-weight: normal;
- font-style: normal;
-}
-
-// .octicon is optimized for 16px.
-// .mega-octicon is optimized for 32px but can be used larger.
-.octicon, .mega-octicon {
- font: normal normal normal 16px/1 octicons;
- display: inline-block;
- text-decoration: none;
- text-rendering: auto;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.mega-octicon { font-size: 32px; }
-
-.octicon-alert:before { content: '\f02d'} /* */
-.octicon-alignment-align:before { content: '\f08a'} /* */
-.octicon-alignment-aligned-to:before { content: '\f08e'} /* */
-.octicon-alignment-unalign:before { content: '\f08b'} /* */
-.octicon-arrow-down:before { content: '\f03f'} /* */
-.octicon-arrow-left:before { content: '\f040'} /* */
-.octicon-arrow-right:before { content: '\f03e'} /* */
-.octicon-arrow-small-down:before { content: '\f0a0'} /* */
-.octicon-arrow-small-left:before { content: '\f0a1'} /* */
-.octicon-arrow-small-right:before { content: '\f071'} /* */
-.octicon-arrow-small-up:before { content: '\f09f'} /* */
-.octicon-arrow-up:before { content: '\f03d'} /* */
-.octicon-beer:before { content: '\f069'} /* */
-.octicon-book:before { content: '\f007'} /* */
-.octicon-bookmark:before { content: '\f07b'} /* */
-.octicon-briefcase:before { content: '\f0d3'} /* */
-.octicon-broadcast:before { content: '\f048'} /* */
-.octicon-browser:before { content: '\f0c5'} /* */
-.octicon-bug:before { content: '\f091'} /* */
-.octicon-calendar:before { content: '\f068'} /* */
-.octicon-check:before { content: '\f03a'} /* */
-.octicon-checklist:before { content: '\f076'} /* */
-.octicon-chevron-down:before { content: '\f0a3'} /* */
-.octicon-chevron-left:before { content: '\f0a4'} /* */
-.octicon-chevron-right:before { content: '\f078'} /* */
-.octicon-chevron-up:before { content: '\f0a2'} /* */
-.octicon-circle-slash:before { content: '\f084'} /* */
-.octicon-circuit-board:before { content: '\f0d6'} /* */
-.octicon-clippy:before { content: '\f035'} /* */
-.octicon-clock:before { content: '\f046'} /* */
-.octicon-cloud-download:before { content: '\f00b'} /* */
-.octicon-cloud-upload:before { content: '\f00c'} /* */
-.octicon-code:before { content: '\f05f'} /* */
-.octicon-color-mode:before { content: '\f065'} /* */
-.octicon-comment-add:before,
-.octicon-comment:before { content: '\f02b'} /* */
-.octicon-comment-discussion:before { content: '\f04f'} /* */
-.octicon-credit-card:before { content: '\f045'} /* */
-.octicon-dash:before { content: '\f0ca'} /* */
-.octicon-dashboard:before { content: '\f07d'} /* */
-.octicon-database:before { content: '\f096'} /* */
-.octicon-device-camera:before { content: '\f056'} /* */
-.octicon-device-camera-video:before { content: '\f057'} /* */
-.octicon-device-desktop:before { content: '\f27c'} /* */
-.octicon-device-mobile:before { content: '\f038'} /* */
-.octicon-diff:before { content: '\f04d'} /* */
-.octicon-diff-added:before { content: '\f06b'} /* */
-.octicon-diff-ignored:before { content: '\f099'} /* */
-.octicon-diff-modified:before { content: '\f06d'} /* */
-.octicon-diff-removed:before { content: '\f06c'} /* */
-.octicon-diff-renamed:before { content: '\f06e'} /* */
-.octicon-ellipsis:before { content: '\f09a'} /* */
-.octicon-eye-unwatch:before,
-.octicon-eye-watch:before,
-.octicon-eye:before { content: '\f04e'} /* */
-.octicon-file-binary:before { content: '\f094'} /* */
-.octicon-file-code:before { content: '\f010'} /* */
-.octicon-file-directory:before { content: '\f016'} /* */
-.octicon-file-media:before { content: '\f012'} /* */
-.octicon-file-pdf:before { content: '\f014'} /* */
-.octicon-file-submodule:before { content: '\f017'} /* */
-.octicon-file-symlink-directory:before { content: '\f0b1'} /* */
-.octicon-file-symlink-file:before { content: '\f0b0'} /* */
-.octicon-file-text:before { content: '\f011'} /* */
-.octicon-file-zip:before { content: '\f013'} /* */
-.octicon-flame:before { content: '\f0d2'} /* */
-.octicon-fold:before { content: '\f0cc'} /* */
-.octicon-gear:before { content: '\f02f'} /* */
-.octicon-gift:before { content: '\f042'} /* */
-.octicon-gist:before { content: '\f00e'} /* */
-.octicon-gist-secret:before { content: '\f08c'} /* */
-.octicon-git-branch-create:before,
-.octicon-git-branch-delete:before,
-.octicon-git-branch:before { content: '\f020'} /* */
-.octicon-git-commit:before { content: '\f01f'} /* */
-.octicon-git-compare:before { content: '\f0ac'} /* */
-.octicon-git-merge:before { content: '\f023'} /* */
-.octicon-git-pull-request-abandoned:before,
-.octicon-git-pull-request:before { content: '\f009'} /* */
-.octicon-globe:before { content: '\f0b6'} /* */
-.octicon-graph:before { content: '\f043'} /* */
-.octicon-heart:before { content: '\2665'} /* ♥ */
-.octicon-history:before { content: '\f07e'} /* */
-.octicon-home:before { content: '\f08d'} /* */
-.octicon-horizontal-rule:before { content: '\f070'} /* */
-.octicon-hourglass:before { content: '\f09e'} /* */
-.octicon-hubot:before { content: '\f09d'} /* */
-.octicon-inbox:before { content: '\f0cf'} /* */
-.octicon-info:before { content: '\f059'} /* */
-.octicon-issue-closed:before { content: '\f028'} /* */
-.octicon-issue-opened:before { content: '\f026'} /* */
-.octicon-issue-reopened:before { content: '\f027'} /* */
-.octicon-jersey:before { content: '\f019'} /* */
-.octicon-jump-down:before { content: '\f072'} /* */
-.octicon-jump-left:before { content: '\f0a5'} /* */
-.octicon-jump-right:before { content: '\f0a6'} /* */
-.octicon-jump-up:before { content: '\f073'} /* */
-.octicon-key:before { content: '\f049'} /* */
-.octicon-keyboard:before { content: '\f00d'} /* */
-.octicon-law:before { content: '\f0d8'} /* */
-.octicon-light-bulb:before { content: '\f000'} /* */
-.octicon-link:before { content: '\f05c'} /* */
-.octicon-link-external:before { content: '\f07f'} /* */
-.octicon-list-ordered:before { content: '\f062'} /* */
-.octicon-list-unordered:before { content: '\f061'} /* */
-.octicon-location:before { content: '\f060'} /* */
-.octicon-gist-private:before,
-.octicon-mirror-private:before,
-.octicon-git-fork-private:before,
-.octicon-lock:before { content: '\f06a'} /* */
-.octicon-logo-github:before { content: '\f092'} /* */
-.octicon-mail:before { content: '\f03b'} /* */
-.octicon-mail-read:before { content: '\f03c'} /* */
-.octicon-mail-reply:before { content: '\f051'} /* */
-.octicon-mark-github:before { content: '\f00a'} /* */
-.octicon-markdown:before { content: '\f0c9'} /* */
-.octicon-megaphone:before { content: '\f077'} /* */
-.octicon-mention:before { content: '\f0be'} /* */
-.octicon-microscope:before { content: '\f089'} /* */
-.octicon-milestone:before { content: '\f075'} /* */
-.octicon-mirror-public:before,
-.octicon-mirror:before { content: '\f024'} /* */
-.octicon-mortar-board:before { content: '\f0d7'} /* */
-.octicon-move-down:before { content: '\f0a8'} /* */
-.octicon-move-left:before { content: '\f074'} /* */
-.octicon-move-right:before { content: '\f0a9'} /* */
-.octicon-move-up:before { content: '\f0a7'} /* */
-.octicon-mute:before { content: '\f080'} /* */
-.octicon-no-newline:before { content: '\f09c'} /* */
-.octicon-octoface:before { content: '\f008'} /* */
-.octicon-organization:before { content: '\f037'} /* */
-.octicon-package:before { content: '\f0c4'} /* */
-.octicon-paintcan:before { content: '\f0d1'} /* */
-.octicon-pencil:before { content: '\f058'} /* */
-.octicon-person-add:before,
-.octicon-person-follow:before,
-.octicon-person:before { content: '\f018'} /* */
-.octicon-pin:before { content: '\f041'} /* */
-.octicon-playback-fast-forward:before { content: '\f0bd'} /* */
-.octicon-playback-pause:before { content: '\f0bb'} /* */
-.octicon-playback-play:before { content: '\f0bf'} /* */
-.octicon-playback-rewind:before { content: '\f0bc'} /* */
-.octicon-plug:before { content: '\f0d4'} /* */
-.octicon-repo-create:before,
-.octicon-gist-new:before,
-.octicon-file-directory-create:before,
-.octicon-file-add:before,
-.octicon-plus:before { content: '\f05d'} /* */
-.octicon-podium:before { content: '\f0af'} /* */
-.octicon-primitive-dot:before { content: '\f052'} /* */
-.octicon-primitive-square:before { content: '\f053'} /* */
-.octicon-pulse:before { content: '\f085'} /* */
-.octicon-puzzle:before { content: '\f0c0'} /* */
-.octicon-question:before { content: '\f02c'} /* */
-.octicon-quote:before { content: '\f063'} /* */
-.octicon-radio-tower:before { content: '\f030'} /* */
-.octicon-repo-delete:before,
-.octicon-repo:before { content: '\f001'} /* */
-.octicon-repo-clone:before { content: '\f04c'} /* */
-.octicon-repo-force-push:before { content: '\f04a'} /* */
-.octicon-gist-fork:before,
-.octicon-repo-forked:before { content: '\f002'} /* */
-.octicon-repo-pull:before { content: '\f006'} /* */
-.octicon-repo-push:before { content: '\f005'} /* */
-.octicon-rocket:before { content: '\f033'} /* */
-.octicon-rss:before { content: '\f034'} /* */
-.octicon-ruby:before { content: '\f047'} /* */
-.octicon-screen-full:before { content: '\f066'} /* */
-.octicon-screen-normal:before { content: '\f067'} /* */
-.octicon-search-save:before,
-.octicon-search:before { content: '\f02e'} /* */
-.octicon-server:before { content: '\f097'} /* */
-.octicon-settings:before { content: '\f07c'} /* */
-.octicon-log-in:before,
-.octicon-sign-in:before { content: '\f036'} /* */
-.octicon-log-out:before,
-.octicon-sign-out:before { content: '\f032'} /* */
-.octicon-split:before { content: '\f0c6'} /* */
-.octicon-squirrel:before { content: '\f0b2'} /* */
-.octicon-star-add:before,
-.octicon-star-delete:before,
-.octicon-star:before { content: '\f02a'} /* */
-.octicon-steps:before { content: '\f0c7'} /* */
-.octicon-stop:before { content: '\f08f'} /* */
-.octicon-repo-sync:before,
-.octicon-sync:before { content: '\f087'} /* */
-.octicon-tag-remove:before,
-.octicon-tag-add:before,
-.octicon-tag:before { content: '\f015'} /* */
-.octicon-telescope:before { content: '\f088'} /* */
-.octicon-terminal:before { content: '\f0c8'} /* */
-.octicon-three-bars:before { content: '\f05e'} /* */
-.octicon-tools:before { content: '\f031'} /* */
-.octicon-trashcan:before { content: '\f0d0'} /* */
-.octicon-triangle-down:before { content: '\f05b'} /* */
-.octicon-triangle-left:before { content: '\f044'} /* */
-.octicon-triangle-right:before { content: '\f05a'} /* */
-.octicon-triangle-up:before { content: '\f0aa'} /* */
-.octicon-unfold:before { content: '\f039'} /* */
-.octicon-unmute:before { content: '\f0ba'} /* */
-.octicon-versions:before { content: '\f064'} /* */
-.octicon-remove-close:before,
-.octicon-x:before { content: '\f081'} /* */
-.octicon-zap:before { content: '\26A1'} /* ⚡ */
diff --git a/docs/bower_components/octicons/svg/alert.svg b/docs/bower_components/octicons/svg/alert.svg
deleted file mode 100644
index ba04d1c67f..0000000000
--- a/docs/bower_components/octicons/svg/alert.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/alignment-align.svg b/docs/bower_components/octicons/svg/alignment-align.svg
deleted file mode 100644
index d8d5ca7b39..0000000000
--- a/docs/bower_components/octicons/svg/alignment-align.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/alignment-aligned-to.svg b/docs/bower_components/octicons/svg/alignment-aligned-to.svg
deleted file mode 100644
index 9a682195ee..0000000000
--- a/docs/bower_components/octicons/svg/alignment-aligned-to.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/alignment-unalign.svg b/docs/bower_components/octicons/svg/alignment-unalign.svg
deleted file mode 100644
index cd05354cb4..0000000000
--- a/docs/bower_components/octicons/svg/alignment-unalign.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-down.svg b/docs/bower_components/octicons/svg/arrow-down.svg
deleted file mode 100644
index 67f3e8118c..0000000000
--- a/docs/bower_components/octicons/svg/arrow-down.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-left.svg b/docs/bower_components/octicons/svg/arrow-left.svg
deleted file mode 100644
index acbcee4d7c..0000000000
--- a/docs/bower_components/octicons/svg/arrow-left.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-right.svg b/docs/bower_components/octicons/svg/arrow-right.svg
deleted file mode 100644
index 848b4d82e9..0000000000
--- a/docs/bower_components/octicons/svg/arrow-right.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-small-down.svg b/docs/bower_components/octicons/svg/arrow-small-down.svg
deleted file mode 100644
index f38f60229f..0000000000
--- a/docs/bower_components/octicons/svg/arrow-small-down.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-small-left.svg b/docs/bower_components/octicons/svg/arrow-small-left.svg
deleted file mode 100644
index 2c6ebc1cd1..0000000000
--- a/docs/bower_components/octicons/svg/arrow-small-left.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-small-right.svg b/docs/bower_components/octicons/svg/arrow-small-right.svg
deleted file mode 100644
index 805ff36335..0000000000
--- a/docs/bower_components/octicons/svg/arrow-small-right.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-small-up.svg b/docs/bower_components/octicons/svg/arrow-small-up.svg
deleted file mode 100644
index 3604cd9824..0000000000
--- a/docs/bower_components/octicons/svg/arrow-small-up.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/arrow-up.svg b/docs/bower_components/octicons/svg/arrow-up.svg
deleted file mode 100644
index 5cca743313..0000000000
--- a/docs/bower_components/octicons/svg/arrow-up.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/beer.svg b/docs/bower_components/octicons/svg/beer.svg
deleted file mode 100644
index e6966c29e3..0000000000
--- a/docs/bower_components/octicons/svg/beer.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/book.svg b/docs/bower_components/octicons/svg/book.svg
deleted file mode 100644
index cde3a750b5..0000000000
--- a/docs/bower_components/octicons/svg/book.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/bookmark.svg b/docs/bower_components/octicons/svg/bookmark.svg
deleted file mode 100644
index fbbb397752..0000000000
--- a/docs/bower_components/octicons/svg/bookmark.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/briefcase.svg b/docs/bower_components/octicons/svg/briefcase.svg
deleted file mode 100644
index 9850835f45..0000000000
--- a/docs/bower_components/octicons/svg/briefcase.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/broadcast.svg b/docs/bower_components/octicons/svg/broadcast.svg
deleted file mode 100644
index 99a66a14c4..0000000000
--- a/docs/bower_components/octicons/svg/broadcast.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/browser.svg b/docs/bower_components/octicons/svg/browser.svg
deleted file mode 100644
index c21a4cb2bb..0000000000
--- a/docs/bower_components/octicons/svg/browser.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/bug.svg b/docs/bower_components/octicons/svg/bug.svg
deleted file mode 100644
index 421b57b9c3..0000000000
--- a/docs/bower_components/octicons/svg/bug.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/calendar.svg b/docs/bower_components/octicons/svg/calendar.svg
deleted file mode 100644
index 1b942f09c4..0000000000
--- a/docs/bower_components/octicons/svg/calendar.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/check.svg b/docs/bower_components/octicons/svg/check.svg
deleted file mode 100644
index 6a0d1e0d74..0000000000
--- a/docs/bower_components/octicons/svg/check.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/checklist.svg b/docs/bower_components/octicons/svg/checklist.svg
deleted file mode 100644
index 2662a5062d..0000000000
--- a/docs/bower_components/octicons/svg/checklist.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/chevron-down.svg b/docs/bower_components/octicons/svg/chevron-down.svg
deleted file mode 100644
index 8480155fb2..0000000000
--- a/docs/bower_components/octicons/svg/chevron-down.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/chevron-left.svg b/docs/bower_components/octicons/svg/chevron-left.svg
deleted file mode 100644
index c62ba39c58..0000000000
--- a/docs/bower_components/octicons/svg/chevron-left.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/chevron-right.svg b/docs/bower_components/octicons/svg/chevron-right.svg
deleted file mode 100644
index 8bf8547a4b..0000000000
--- a/docs/bower_components/octicons/svg/chevron-right.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/chevron-up.svg b/docs/bower_components/octicons/svg/chevron-up.svg
deleted file mode 100644
index 17ecb5d1dc..0000000000
--- a/docs/bower_components/octicons/svg/chevron-up.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/circle-slash.svg b/docs/bower_components/octicons/svg/circle-slash.svg
deleted file mode 100644
index 3032d6ff1c..0000000000
--- a/docs/bower_components/octicons/svg/circle-slash.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/circuit-board.svg b/docs/bower_components/octicons/svg/circuit-board.svg
deleted file mode 100644
index 3e1e4d1e2d..0000000000
--- a/docs/bower_components/octicons/svg/circuit-board.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/clippy.svg b/docs/bower_components/octicons/svg/clippy.svg
deleted file mode 100644
index d9122d70e2..0000000000
--- a/docs/bower_components/octicons/svg/clippy.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/clock.svg b/docs/bower_components/octicons/svg/clock.svg
deleted file mode 100644
index d4cea05e8a..0000000000
--- a/docs/bower_components/octicons/svg/clock.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/cloud-download.svg b/docs/bower_components/octicons/svg/cloud-download.svg
deleted file mode 100644
index ca7b3c6319..0000000000
--- a/docs/bower_components/octicons/svg/cloud-download.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/cloud-upload.svg b/docs/bower_components/octicons/svg/cloud-upload.svg
deleted file mode 100644
index 35ae6466cf..0000000000
--- a/docs/bower_components/octicons/svg/cloud-upload.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/code.svg b/docs/bower_components/octicons/svg/code.svg
deleted file mode 100644
index e5d4ac69e0..0000000000
--- a/docs/bower_components/octicons/svg/code.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/color-mode.svg b/docs/bower_components/octicons/svg/color-mode.svg
deleted file mode 100644
index 1e37cbadf0..0000000000
--- a/docs/bower_components/octicons/svg/color-mode.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/comment-discussion.svg b/docs/bower_components/octicons/svg/comment-discussion.svg
deleted file mode 100644
index 3e9e97b17b..0000000000
--- a/docs/bower_components/octicons/svg/comment-discussion.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/comment.svg b/docs/bower_components/octicons/svg/comment.svg
deleted file mode 100644
index da6cc00f87..0000000000
--- a/docs/bower_components/octicons/svg/comment.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/credit-card.svg b/docs/bower_components/octicons/svg/credit-card.svg
deleted file mode 100644
index 009332231d..0000000000
--- a/docs/bower_components/octicons/svg/credit-card.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/dash.svg b/docs/bower_components/octicons/svg/dash.svg
deleted file mode 100644
index f32e98bbd7..0000000000
--- a/docs/bower_components/octicons/svg/dash.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/dashboard.svg b/docs/bower_components/octicons/svg/dashboard.svg
deleted file mode 100644
index cbf44ebe96..0000000000
--- a/docs/bower_components/octicons/svg/dashboard.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/database.svg b/docs/bower_components/octicons/svg/database.svg
deleted file mode 100644
index 050e97227e..0000000000
--- a/docs/bower_components/octicons/svg/database.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/device-camera-video.svg b/docs/bower_components/octicons/svg/device-camera-video.svg
deleted file mode 100644
index 4edd28385b..0000000000
--- a/docs/bower_components/octicons/svg/device-camera-video.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/device-camera.svg b/docs/bower_components/octicons/svg/device-camera.svg
deleted file mode 100644
index 06cbe96ebe..0000000000
--- a/docs/bower_components/octicons/svg/device-camera.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/device-desktop.svg b/docs/bower_components/octicons/svg/device-desktop.svg
deleted file mode 100644
index 439c1745fc..0000000000
--- a/docs/bower_components/octicons/svg/device-desktop.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/device-mobile.svg b/docs/bower_components/octicons/svg/device-mobile.svg
deleted file mode 100644
index 1ec23ab598..0000000000
--- a/docs/bower_components/octicons/svg/device-mobile.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/diff-added.svg b/docs/bower_components/octicons/svg/diff-added.svg
deleted file mode 100644
index ae8392c542..0000000000
--- a/docs/bower_components/octicons/svg/diff-added.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/diff-ignored.svg b/docs/bower_components/octicons/svg/diff-ignored.svg
deleted file mode 100644
index 56b24e7a8c..0000000000
--- a/docs/bower_components/octicons/svg/diff-ignored.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/diff-modified.svg b/docs/bower_components/octicons/svg/diff-modified.svg
deleted file mode 100644
index 7708dac1df..0000000000
--- a/docs/bower_components/octicons/svg/diff-modified.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/diff-removed.svg b/docs/bower_components/octicons/svg/diff-removed.svg
deleted file mode 100644
index 4a107a92d4..0000000000
--- a/docs/bower_components/octicons/svg/diff-removed.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/diff-renamed.svg b/docs/bower_components/octicons/svg/diff-renamed.svg
deleted file mode 100644
index 2bab07767d..0000000000
--- a/docs/bower_components/octicons/svg/diff-renamed.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/diff.svg b/docs/bower_components/octicons/svg/diff.svg
deleted file mode 100644
index a4f6ff807f..0000000000
--- a/docs/bower_components/octicons/svg/diff.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/ellipsis.svg b/docs/bower_components/octicons/svg/ellipsis.svg
deleted file mode 100644
index c8be3812c1..0000000000
--- a/docs/bower_components/octicons/svg/ellipsis.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/eye.svg b/docs/bower_components/octicons/svg/eye.svg
deleted file mode 100644
index aaa91b3370..0000000000
--- a/docs/bower_components/octicons/svg/eye.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-binary.svg b/docs/bower_components/octicons/svg/file-binary.svg
deleted file mode 100644
index 69d9c1e445..0000000000
--- a/docs/bower_components/octicons/svg/file-binary.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-code.svg b/docs/bower_components/octicons/svg/file-code.svg
deleted file mode 100644
index 8067fbebfa..0000000000
--- a/docs/bower_components/octicons/svg/file-code.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-directory.svg b/docs/bower_components/octicons/svg/file-directory.svg
deleted file mode 100644
index cecebe0050..0000000000
--- a/docs/bower_components/octicons/svg/file-directory.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-media.svg b/docs/bower_components/octicons/svg/file-media.svg
deleted file mode 100644
index b927e86591..0000000000
--- a/docs/bower_components/octicons/svg/file-media.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-pdf.svg b/docs/bower_components/octicons/svg/file-pdf.svg
deleted file mode 100644
index 89394d6f25..0000000000
--- a/docs/bower_components/octicons/svg/file-pdf.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-submodule.svg b/docs/bower_components/octicons/svg/file-submodule.svg
deleted file mode 100644
index d1952877b0..0000000000
--- a/docs/bower_components/octicons/svg/file-submodule.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-symlink-directory.svg b/docs/bower_components/octicons/svg/file-symlink-directory.svg
deleted file mode 100644
index df8ecfff23..0000000000
--- a/docs/bower_components/octicons/svg/file-symlink-directory.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-symlink-file.svg b/docs/bower_components/octicons/svg/file-symlink-file.svg
deleted file mode 100644
index af4a054309..0000000000
--- a/docs/bower_components/octicons/svg/file-symlink-file.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-text.svg b/docs/bower_components/octicons/svg/file-text.svg
deleted file mode 100644
index c00aae4abe..0000000000
--- a/docs/bower_components/octicons/svg/file-text.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/file-zip.svg b/docs/bower_components/octicons/svg/file-zip.svg
deleted file mode 100644
index f9ab80cdb4..0000000000
--- a/docs/bower_components/octicons/svg/file-zip.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/flame.svg b/docs/bower_components/octicons/svg/flame.svg
deleted file mode 100644
index f22a2307a0..0000000000
--- a/docs/bower_components/octicons/svg/flame.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/fold.svg b/docs/bower_components/octicons/svg/fold.svg
deleted file mode 100644
index 033a778f34..0000000000
--- a/docs/bower_components/octicons/svg/fold.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/gear.svg b/docs/bower_components/octicons/svg/gear.svg
deleted file mode 100644
index 31855b2d27..0000000000
--- a/docs/bower_components/octicons/svg/gear.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/gift.svg b/docs/bower_components/octicons/svg/gift.svg
deleted file mode 100644
index 1af20fa81a..0000000000
--- a/docs/bower_components/octicons/svg/gift.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/gist-secret.svg b/docs/bower_components/octicons/svg/gist-secret.svg
deleted file mode 100644
index dca15c2488..0000000000
--- a/docs/bower_components/octicons/svg/gist-secret.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/gist.svg b/docs/bower_components/octicons/svg/gist.svg
deleted file mode 100644
index 6deba75640..0000000000
--- a/docs/bower_components/octicons/svg/gist.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/git-branch.svg b/docs/bower_components/octicons/svg/git-branch.svg
deleted file mode 100644
index 81508b9cc3..0000000000
--- a/docs/bower_components/octicons/svg/git-branch.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/git-commit.svg b/docs/bower_components/octicons/svg/git-commit.svg
deleted file mode 100644
index 0ac449f957..0000000000
--- a/docs/bower_components/octicons/svg/git-commit.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/git-compare.svg b/docs/bower_components/octicons/svg/git-compare.svg
deleted file mode 100644
index d5b2cb4fcd..0000000000
--- a/docs/bower_components/octicons/svg/git-compare.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/git-merge.svg b/docs/bower_components/octicons/svg/git-merge.svg
deleted file mode 100644
index 3dce3ca583..0000000000
--- a/docs/bower_components/octicons/svg/git-merge.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/git-pull-request.svg b/docs/bower_components/octicons/svg/git-pull-request.svg
deleted file mode 100644
index 62f9afe48d..0000000000
--- a/docs/bower_components/octicons/svg/git-pull-request.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/globe.svg b/docs/bower_components/octicons/svg/globe.svg
deleted file mode 100644
index 5108ca0e3d..0000000000
--- a/docs/bower_components/octicons/svg/globe.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/graph.svg b/docs/bower_components/octicons/svg/graph.svg
deleted file mode 100644
index 26943043f2..0000000000
--- a/docs/bower_components/octicons/svg/graph.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/heart.svg b/docs/bower_components/octicons/svg/heart.svg
deleted file mode 100644
index 4c0bec0d0c..0000000000
--- a/docs/bower_components/octicons/svg/heart.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/history.svg b/docs/bower_components/octicons/svg/history.svg
deleted file mode 100644
index 83ff3d89f7..0000000000
--- a/docs/bower_components/octicons/svg/history.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/home.svg b/docs/bower_components/octicons/svg/home.svg
deleted file mode 100644
index db77f4356c..0000000000
--- a/docs/bower_components/octicons/svg/home.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/horizontal-rule.svg b/docs/bower_components/octicons/svg/horizontal-rule.svg
deleted file mode 100644
index 38e5975654..0000000000
--- a/docs/bower_components/octicons/svg/horizontal-rule.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/hourglass.svg b/docs/bower_components/octicons/svg/hourglass.svg
deleted file mode 100644
index 1acfeb3afb..0000000000
--- a/docs/bower_components/octicons/svg/hourglass.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/hubot.svg b/docs/bower_components/octicons/svg/hubot.svg
deleted file mode 100644
index d2dbbc44c6..0000000000
--- a/docs/bower_components/octicons/svg/hubot.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/inbox.svg b/docs/bower_components/octicons/svg/inbox.svg
deleted file mode 100644
index fd5367897d..0000000000
--- a/docs/bower_components/octicons/svg/inbox.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/info.svg b/docs/bower_components/octicons/svg/info.svg
deleted file mode 100644
index d4cecec306..0000000000
--- a/docs/bower_components/octicons/svg/info.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/issue-closed.svg b/docs/bower_components/octicons/svg/issue-closed.svg
deleted file mode 100644
index 6acc0f2274..0000000000
--- a/docs/bower_components/octicons/svg/issue-closed.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/issue-opened.svg b/docs/bower_components/octicons/svg/issue-opened.svg
deleted file mode 100644
index fb3bff2555..0000000000
--- a/docs/bower_components/octicons/svg/issue-opened.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/issue-reopened.svg b/docs/bower_components/octicons/svg/issue-reopened.svg
deleted file mode 100644
index 3e7df4f2f7..0000000000
--- a/docs/bower_components/octicons/svg/issue-reopened.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/jersey.svg b/docs/bower_components/octicons/svg/jersey.svg
deleted file mode 100644
index 544ac1fcf2..0000000000
--- a/docs/bower_components/octicons/svg/jersey.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/jump-down.svg b/docs/bower_components/octicons/svg/jump-down.svg
deleted file mode 100644
index e8f5394260..0000000000
--- a/docs/bower_components/octicons/svg/jump-down.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/jump-left.svg b/docs/bower_components/octicons/svg/jump-left.svg
deleted file mode 100644
index 1cb331b778..0000000000
--- a/docs/bower_components/octicons/svg/jump-left.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/jump-right.svg b/docs/bower_components/octicons/svg/jump-right.svg
deleted file mode 100644
index 09c4702ddc..0000000000
--- a/docs/bower_components/octicons/svg/jump-right.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/jump-up.svg b/docs/bower_components/octicons/svg/jump-up.svg
deleted file mode 100644
index 89356f5dcf..0000000000
--- a/docs/bower_components/octicons/svg/jump-up.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/key.svg b/docs/bower_components/octicons/svg/key.svg
deleted file mode 100644
index dd2c577c85..0000000000
--- a/docs/bower_components/octicons/svg/key.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/keyboard.svg b/docs/bower_components/octicons/svg/keyboard.svg
deleted file mode 100644
index 2611824f52..0000000000
--- a/docs/bower_components/octicons/svg/keyboard.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/law.svg b/docs/bower_components/octicons/svg/law.svg
deleted file mode 100644
index d0fbf9050f..0000000000
--- a/docs/bower_components/octicons/svg/law.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/light-bulb.svg b/docs/bower_components/octicons/svg/light-bulb.svg
deleted file mode 100644
index c1131f3b1d..0000000000
--- a/docs/bower_components/octicons/svg/light-bulb.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/link-external.svg b/docs/bower_components/octicons/svg/link-external.svg
deleted file mode 100644
index 596f0b1743..0000000000
--- a/docs/bower_components/octicons/svg/link-external.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/link.svg b/docs/bower_components/octicons/svg/link.svg
deleted file mode 100644
index 96a4171c7b..0000000000
--- a/docs/bower_components/octicons/svg/link.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/list-ordered.svg b/docs/bower_components/octicons/svg/list-ordered.svg
deleted file mode 100644
index 5ffadb6de4..0000000000
--- a/docs/bower_components/octicons/svg/list-ordered.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/list-unordered.svg b/docs/bower_components/octicons/svg/list-unordered.svg
deleted file mode 100644
index dc3ab72d27..0000000000
--- a/docs/bower_components/octicons/svg/list-unordered.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/location.svg b/docs/bower_components/octicons/svg/location.svg
deleted file mode 100644
index 06a1d597b7..0000000000
--- a/docs/bower_components/octicons/svg/location.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/lock.svg b/docs/bower_components/octicons/svg/lock.svg
deleted file mode 100644
index 0315b85835..0000000000
--- a/docs/bower_components/octicons/svg/lock.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/logo-github.svg b/docs/bower_components/octicons/svg/logo-github.svg
deleted file mode 100644
index 136ed38609..0000000000
--- a/docs/bower_components/octicons/svg/logo-github.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mail-read.svg b/docs/bower_components/octicons/svg/mail-read.svg
deleted file mode 100644
index f4eeccd1c7..0000000000
--- a/docs/bower_components/octicons/svg/mail-read.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mail-reply.svg b/docs/bower_components/octicons/svg/mail-reply.svg
deleted file mode 100644
index a96d77873f..0000000000
--- a/docs/bower_components/octicons/svg/mail-reply.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mail.svg b/docs/bower_components/octicons/svg/mail.svg
deleted file mode 100644
index 0c2b2caa8a..0000000000
--- a/docs/bower_components/octicons/svg/mail.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mark-github.svg b/docs/bower_components/octicons/svg/mark-github.svg
deleted file mode 100644
index 146f66fcf3..0000000000
--- a/docs/bower_components/octicons/svg/mark-github.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/markdown.svg b/docs/bower_components/octicons/svg/markdown.svg
deleted file mode 100644
index 3a3bddb148..0000000000
--- a/docs/bower_components/octicons/svg/markdown.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/megaphone.svg b/docs/bower_components/octicons/svg/megaphone.svg
deleted file mode 100644
index bdf1501ef2..0000000000
--- a/docs/bower_components/octicons/svg/megaphone.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mention.svg b/docs/bower_components/octicons/svg/mention.svg
deleted file mode 100644
index 877568a5ff..0000000000
--- a/docs/bower_components/octicons/svg/mention.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/microscope.svg b/docs/bower_components/octicons/svg/microscope.svg
deleted file mode 100644
index 933558af48..0000000000
--- a/docs/bower_components/octicons/svg/microscope.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/milestone.svg b/docs/bower_components/octicons/svg/milestone.svg
deleted file mode 100644
index 4ac2e2de14..0000000000
--- a/docs/bower_components/octicons/svg/milestone.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mirror.svg b/docs/bower_components/octicons/svg/mirror.svg
deleted file mode 100644
index 303d8afdef..0000000000
--- a/docs/bower_components/octicons/svg/mirror.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mortar-board.svg b/docs/bower_components/octicons/svg/mortar-board.svg
deleted file mode 100644
index 48d46d2dcd..0000000000
--- a/docs/bower_components/octicons/svg/mortar-board.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/move-down.svg b/docs/bower_components/octicons/svg/move-down.svg
deleted file mode 100644
index d04ea82292..0000000000
--- a/docs/bower_components/octicons/svg/move-down.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/move-left.svg b/docs/bower_components/octicons/svg/move-left.svg
deleted file mode 100644
index 60c42889ca..0000000000
--- a/docs/bower_components/octicons/svg/move-left.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/move-right.svg b/docs/bower_components/octicons/svg/move-right.svg
deleted file mode 100644
index b926072292..0000000000
--- a/docs/bower_components/octicons/svg/move-right.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/move-up.svg b/docs/bower_components/octicons/svg/move-up.svg
deleted file mode 100644
index 80321cfe14..0000000000
--- a/docs/bower_components/octicons/svg/move-up.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/mute.svg b/docs/bower_components/octicons/svg/mute.svg
deleted file mode 100644
index bb69183aeb..0000000000
--- a/docs/bower_components/octicons/svg/mute.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/no-newline.svg b/docs/bower_components/octicons/svg/no-newline.svg
deleted file mode 100644
index bedb868b9d..0000000000
--- a/docs/bower_components/octicons/svg/no-newline.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/octoface.svg b/docs/bower_components/octicons/svg/octoface.svg
deleted file mode 100644
index de191e8e6d..0000000000
--- a/docs/bower_components/octicons/svg/octoface.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/organization.svg b/docs/bower_components/octicons/svg/organization.svg
deleted file mode 100644
index 38dbc500a4..0000000000
--- a/docs/bower_components/octicons/svg/organization.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/package.svg b/docs/bower_components/octicons/svg/package.svg
deleted file mode 100644
index 16c91220e8..0000000000
--- a/docs/bower_components/octicons/svg/package.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/paintcan.svg b/docs/bower_components/octicons/svg/paintcan.svg
deleted file mode 100644
index d62f91e934..0000000000
--- a/docs/bower_components/octicons/svg/paintcan.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/pencil.svg b/docs/bower_components/octicons/svg/pencil.svg
deleted file mode 100644
index 4173ba4c1b..0000000000
--- a/docs/bower_components/octicons/svg/pencil.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/person.svg b/docs/bower_components/octicons/svg/person.svg
deleted file mode 100644
index b6b42b1992..0000000000
--- a/docs/bower_components/octicons/svg/person.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/pin.svg b/docs/bower_components/octicons/svg/pin.svg
deleted file mode 100644
index 95b2e055f1..0000000000
--- a/docs/bower_components/octicons/svg/pin.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/playback-fast-forward.svg b/docs/bower_components/octicons/svg/playback-fast-forward.svg
deleted file mode 100644
index d85c73a4db..0000000000
--- a/docs/bower_components/octicons/svg/playback-fast-forward.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/playback-pause.svg b/docs/bower_components/octicons/svg/playback-pause.svg
deleted file mode 100644
index 36c638bb77..0000000000
--- a/docs/bower_components/octicons/svg/playback-pause.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/playback-play.svg b/docs/bower_components/octicons/svg/playback-play.svg
deleted file mode 100644
index 62c1571808..0000000000
--- a/docs/bower_components/octicons/svg/playback-play.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/playback-rewind.svg b/docs/bower_components/octicons/svg/playback-rewind.svg
deleted file mode 100644
index 6ffd787208..0000000000
--- a/docs/bower_components/octicons/svg/playback-rewind.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/plug.svg b/docs/bower_components/octicons/svg/plug.svg
deleted file mode 100644
index 174446df6a..0000000000
--- a/docs/bower_components/octicons/svg/plug.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/plus.svg b/docs/bower_components/octicons/svg/plus.svg
deleted file mode 100644
index 029a7d46d5..0000000000
--- a/docs/bower_components/octicons/svg/plus.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/podium.svg b/docs/bower_components/octicons/svg/podium.svg
deleted file mode 100644
index bb8ec4b1ae..0000000000
--- a/docs/bower_components/octicons/svg/podium.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/primitive-dot.svg b/docs/bower_components/octicons/svg/primitive-dot.svg
deleted file mode 100644
index 9e1a80bce7..0000000000
--- a/docs/bower_components/octicons/svg/primitive-dot.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/primitive-square.svg b/docs/bower_components/octicons/svg/primitive-square.svg
deleted file mode 100644
index 84b06a9472..0000000000
--- a/docs/bower_components/octicons/svg/primitive-square.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/pulse.svg b/docs/bower_components/octicons/svg/pulse.svg
deleted file mode 100644
index 4c91e1835e..0000000000
--- a/docs/bower_components/octicons/svg/pulse.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/puzzle.svg b/docs/bower_components/octicons/svg/puzzle.svg
deleted file mode 100644
index b39823b9df..0000000000
--- a/docs/bower_components/octicons/svg/puzzle.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/question.svg b/docs/bower_components/octicons/svg/question.svg
deleted file mode 100644
index 2f817787eb..0000000000
--- a/docs/bower_components/octicons/svg/question.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/quote.svg b/docs/bower_components/octicons/svg/quote.svg
deleted file mode 100644
index 6648dc0ba0..0000000000
--- a/docs/bower_components/octicons/svg/quote.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/radio-tower.svg b/docs/bower_components/octicons/svg/radio-tower.svg
deleted file mode 100644
index bcbf90636e..0000000000
--- a/docs/bower_components/octicons/svg/radio-tower.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/repo-clone.svg b/docs/bower_components/octicons/svg/repo-clone.svg
deleted file mode 100644
index 4e61520c92..0000000000
--- a/docs/bower_components/octicons/svg/repo-clone.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/repo-force-push.svg b/docs/bower_components/octicons/svg/repo-force-push.svg
deleted file mode 100644
index 0b82fa90c7..0000000000
--- a/docs/bower_components/octicons/svg/repo-force-push.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/repo-forked.svg b/docs/bower_components/octicons/svg/repo-forked.svg
deleted file mode 100644
index 634ee777a6..0000000000
--- a/docs/bower_components/octicons/svg/repo-forked.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/repo-pull.svg b/docs/bower_components/octicons/svg/repo-pull.svg
deleted file mode 100644
index e9e267d6f7..0000000000
--- a/docs/bower_components/octicons/svg/repo-pull.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/repo-push.svg b/docs/bower_components/octicons/svg/repo-push.svg
deleted file mode 100644
index 80c85043ed..0000000000
--- a/docs/bower_components/octicons/svg/repo-push.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/repo.svg b/docs/bower_components/octicons/svg/repo.svg
deleted file mode 100644
index f14a1b7dfe..0000000000
--- a/docs/bower_components/octicons/svg/repo.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/rocket.svg b/docs/bower_components/octicons/svg/rocket.svg
deleted file mode 100644
index 8aefbcdf84..0000000000
--- a/docs/bower_components/octicons/svg/rocket.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/rss.svg b/docs/bower_components/octicons/svg/rss.svg
deleted file mode 100644
index 0cda32fdd0..0000000000
--- a/docs/bower_components/octicons/svg/rss.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/ruby.svg b/docs/bower_components/octicons/svg/ruby.svg
deleted file mode 100644
index 9fff84f09f..0000000000
--- a/docs/bower_components/octicons/svg/ruby.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/screen-full.svg b/docs/bower_components/octicons/svg/screen-full.svg
deleted file mode 100644
index caa4dfadee..0000000000
--- a/docs/bower_components/octicons/svg/screen-full.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/screen-normal.svg b/docs/bower_components/octicons/svg/screen-normal.svg
deleted file mode 100644
index 1bcf6a89e3..0000000000
--- a/docs/bower_components/octicons/svg/screen-normal.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/search.svg b/docs/bower_components/octicons/svg/search.svg
deleted file mode 100644
index 8c207c15b2..0000000000
--- a/docs/bower_components/octicons/svg/search.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/server.svg b/docs/bower_components/octicons/svg/server.svg
deleted file mode 100644
index 3d58c25e32..0000000000
--- a/docs/bower_components/octicons/svg/server.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/settings.svg b/docs/bower_components/octicons/svg/settings.svg
deleted file mode 100644
index 5a0d862153..0000000000
--- a/docs/bower_components/octicons/svg/settings.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/sign-in.svg b/docs/bower_components/octicons/svg/sign-in.svg
deleted file mode 100644
index 4713877adf..0000000000
--- a/docs/bower_components/octicons/svg/sign-in.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/sign-out.svg b/docs/bower_components/octicons/svg/sign-out.svg
deleted file mode 100644
index 75d3eeed87..0000000000
--- a/docs/bower_components/octicons/svg/sign-out.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/split.svg b/docs/bower_components/octicons/svg/split.svg
deleted file mode 100644
index 9588884ae1..0000000000
--- a/docs/bower_components/octicons/svg/split.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/squirrel.svg b/docs/bower_components/octicons/svg/squirrel.svg
deleted file mode 100644
index 4a80ab7812..0000000000
--- a/docs/bower_components/octicons/svg/squirrel.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/star.svg b/docs/bower_components/octicons/svg/star.svg
deleted file mode 100644
index 6c51448765..0000000000
--- a/docs/bower_components/octicons/svg/star.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/steps.svg b/docs/bower_components/octicons/svg/steps.svg
deleted file mode 100644
index 9ac01c0fa4..0000000000
--- a/docs/bower_components/octicons/svg/steps.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/stop.svg b/docs/bower_components/octicons/svg/stop.svg
deleted file mode 100644
index 1324c1dbf5..0000000000
--- a/docs/bower_components/octicons/svg/stop.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/sync.svg b/docs/bower_components/octicons/svg/sync.svg
deleted file mode 100644
index ad9b161cdc..0000000000
--- a/docs/bower_components/octicons/svg/sync.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/tag.svg b/docs/bower_components/octicons/svg/tag.svg
deleted file mode 100644
index 5f2e5cee90..0000000000
--- a/docs/bower_components/octicons/svg/tag.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/telescope.svg b/docs/bower_components/octicons/svg/telescope.svg
deleted file mode 100644
index 524e24677c..0000000000
--- a/docs/bower_components/octicons/svg/telescope.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/terminal.svg b/docs/bower_components/octicons/svg/terminal.svg
deleted file mode 100644
index 3ba4b611b0..0000000000
--- a/docs/bower_components/octicons/svg/terminal.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/three-bars.svg b/docs/bower_components/octicons/svg/three-bars.svg
deleted file mode 100644
index e01a2fae06..0000000000
--- a/docs/bower_components/octicons/svg/three-bars.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/tools.svg b/docs/bower_components/octicons/svg/tools.svg
deleted file mode 100644
index 658a3bf515..0000000000
--- a/docs/bower_components/octicons/svg/tools.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/trashcan.svg b/docs/bower_components/octicons/svg/trashcan.svg
deleted file mode 100644
index c6356893bc..0000000000
--- a/docs/bower_components/octicons/svg/trashcan.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/triangle-down.svg b/docs/bower_components/octicons/svg/triangle-down.svg
deleted file mode 100644
index ce87663087..0000000000
--- a/docs/bower_components/octicons/svg/triangle-down.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/triangle-left.svg b/docs/bower_components/octicons/svg/triangle-left.svg
deleted file mode 100644
index 5d13d84205..0000000000
--- a/docs/bower_components/octicons/svg/triangle-left.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/triangle-right.svg b/docs/bower_components/octicons/svg/triangle-right.svg
deleted file mode 100644
index b05f3ae288..0000000000
--- a/docs/bower_components/octicons/svg/triangle-right.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/triangle-up.svg b/docs/bower_components/octicons/svg/triangle-up.svg
deleted file mode 100644
index 915f95158b..0000000000
--- a/docs/bower_components/octicons/svg/triangle-up.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/unfold.svg b/docs/bower_components/octicons/svg/unfold.svg
deleted file mode 100644
index 73053764ee..0000000000
--- a/docs/bower_components/octicons/svg/unfold.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/unmute.svg b/docs/bower_components/octicons/svg/unmute.svg
deleted file mode 100644
index 6f949f6ea3..0000000000
--- a/docs/bower_components/octicons/svg/unmute.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/versions.svg b/docs/bower_components/octicons/svg/versions.svg
deleted file mode 100644
index eb4065506e..0000000000
--- a/docs/bower_components/octicons/svg/versions.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/x.svg b/docs/bower_components/octicons/svg/x.svg
deleted file mode 100644
index b359fffe2e..0000000000
--- a/docs/bower_components/octicons/svg/x.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/octicons/svg/zap.svg b/docs/bower_components/octicons/svg/zap.svg
deleted file mode 100644
index c330af6a19..0000000000
--- a/docs/bower_components/octicons/svg/zap.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/docs/bower_components/primer-user-content/.bower.json b/docs/bower_components/primer-user-content/.bower.json
deleted file mode 100644
index e4ebc9e351..0000000000
--- a/docs/bower_components/primer-user-content/.bower.json
+++ /dev/null
@@ -1,30 +0,0 @@
-{
- "name": "primer-user-content",
- "keywords": [
- "github",
- "markdown",
- "css"
- ],
- "main": [
- "dist/github-markdown.css"
- ],
- "ignore": [
- "**/.*",
- "*.js",
- "README.md",
- "Gruntfile.js",
- "package.json",
- "render-test.md"
- ],
- "homepage": "https://github.com/primer/user-content",
- "version": "2.1.7",
- "_release": "2.1.7",
- "_resolution": {
- "type": "version",
- "tag": "v2.1.7",
- "commit": "66c71cd395676b58fe3de587fb643eb0c11509d8"
- },
- "_source": "https://github.com/primer/user-content.git",
- "_target": "2.1.7",
- "_originalSource": "https://github.com/primer/user-content.git"
-}
\ No newline at end of file
diff --git a/docs/bower_components/primer-user-content/CLA.md b/docs/bower_components/primer-user-content/CLA.md
deleted file mode 100644
index d73f7db313..0000000000
--- a/docs/bower_components/primer-user-content/CLA.md
+++ /dev/null
@@ -1,49 +0,0 @@
-# GitHub CLA
-
-## Don't give up - please go ahead and create this PR.
-We welcome you to follow, fork, and work on, our open source projects. If you want to contribute back to this project, or any other GitHub project, we need to ask you to complete the Contributor License Agreement (CLA) below. If you are contributing on behalf of your employer, or as part of your role as an employee, remember that you are signing in the name of your employer and you have to make sure that that's okay before you sign.
-
-## What is this?
-This is GitHub Inc.’s Contributor License Agreement. If you’ve worked in the technology space before, contributed or maintained an open source project, there’s a good chance that you’ve run across one or more of these in the past. What CLAs aim to do is make sure the project is able to merge contributions from multiple contributors without getting itself into different types of trouble. This one is no different in that sense.
-
-## Why is this?
-The answer is that we need to protect the open source projects that we maintain, their users and their contributors (including Hubber contributors, of course, but not just). Why? Just imagine a case when a contributor is making a contribution to a project and that contribution is subsequently merged and becomes an integral part of the project. Now, go on to imagine that our contributor copied the code, or that this contributor works for a company that doesn't want its employees to make contributions to this project or any project. What then? Well, the person the code was copied from or the company can do whatever the hell they like, including to come after the project and its users if using it, make them stop or even sue. If either has patent rights in the code, the project is in even deeper trouble.
-
-
-## So.
-Please read the following terms, make sure you understand, and that if you agree, that you sign. Then, your pull request would be created and the project and the other contributors would be safe. It's important to us that you remember that except for the license you grant by signing this document - to GitHub, to your fellow contributors and to the project, you reserve all right, title, and interest in your contributions.
-
-###1. Definitions.
-
-*You*, *you* (*Your*, or *your*) means the copyright owner or legal entity authorized by the copyright owner to sign this agreement.
-
-*Contribution* or *contribution* means any original work of authorship, including any modifications or additions to an existing work, that is submitted to a GitHub project. "Submitted" means via a Pull Request, an issue or any form of electronic, verbal, or written communication sent to GitHub.
-
-###2. Grant of Copyright License.
-
-Subject to the terms and conditions of this agreement, you grant to GitHub, to fellow contributors and to the project a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute your contributions and such derivative works.
-
-###3. Grant of Patent License.
-
-Subject to the terms and conditions of this agreement, You hereby grant to GitHub, to fellow contributors to the project, and to its users a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer your contribution as part of the project, where such license applies only to those patent claims licensable by you that are necessarily infringed by your contribution or by combination of your contribution with the project to which this contribution was submitted. If any entity institutes patent litigation against you or any other entity (including a cross-claim or counterclaim in a lawsuit) alleging that your contribution, or the project to which you have contributed, constitutes direct or contributory patent infringement, then any patent licenses granted to that entity under this agreement for that contribution shall terminate as of the date such litigation is filed.
-
-###4. You Can Grant this License.
-
-Signing would mean that you are legally entitled to grant the above license. If your employer(s) has rights to intellectual property that you create that includes your contributions, you have verified and are certain that you have received permission to make your contribution on behalf of that employer, that your employer has waived such rights for your contribution, or that your employer has executed a separate license with GitHub or the project.
-
-###5. Your Contribution is Yours.
-
-Signing doesn't change the fact that your contribution is your original creation (see section 7 for submissions on behalf of others) and that they include complete details of any third-party license or other restriction (including related patents and trademarks) of which you are personally aware and which are associated with any part of your contributions.
-
-###6. You Provide Your Contribution "as is".
-
-Signing this won't mean anybody will argue otherwise. In other words, your contributions are made without warranties or conditions of any kind.
-
-###7. If Some or All Your Contributions Is Not Yours.
-
-That's fine but you need to identify the source or sources of the contribution and any license or other restriction (like related patents, trademarks, and license agreements) of which you are personally aware, and conspicuously marking the contribution as "Submitted on behalf of a third-party or third parties: [named here]". A place where you can do this is in a commit comment to the PR.
-
-###8. If Any Circumstances of Your Contribution change.
-You agree to notify the project and GitHub of any facts or circumstances of which you become aware.
-
-###9. That's it!
diff --git a/docs/bower_components/primer-user-content/CONTRIBUTING.md b/docs/bower_components/primer-user-content/CONTRIBUTING.md
deleted file mode 100644
index dfb563b0c9..0000000000
--- a/docs/bower_components/primer-user-content/CONTRIBUTING.md
+++ /dev/null
@@ -1,79 +0,0 @@
-## Contributing
-
-[fork]: https://github.com/github/primer/fork
-[pr]: https://github.com/github/primer/compare
-[style]: http://primercss.io/guidelines/
-
-Hi there! We're thrilled that you'd like to contribute to this project. Your help is essential for keeping it great.
-
-Before you do, would you mind reading [this license agreement](CLA.md)? If you open a PR, we'll assume you agree to it. If you have any hesitation or disagreement, please do open a PR still, but note your concerns as well.
-
-## Using the issue tracker
-
-The [issue tracker](https://github.com/twbs/bootstrap/issues) is the preferred channel for [bug reports](#bug-reports), [features requests](#feature-requests) and [submitting pull requests](#pull-requests), but please respect the following restrictions:
-
-* Please **do not** use the issue tracker for personal support requests.
-* Please **do not** derail or troll issues. Keep the discussion on topic and respect the opinions of others.
-* Please **do not** open issues or pull requests regarding the code in [`Normalize`](https://github.com/necolas/normalize.css) (open them in their respective repositories).
-
-## Bug reports
-
-A bug is a _demonstrable problem_ that is caused by the code in the repository. Good bug reports are extremely helpful, so thanks!
-
-Guidelines for bug reports:
-
-0. **Validate and lint your code** — [validate your HTML](http://html5.validator.nu) to ensure your problem isn't caused by a simple error in your own code.
-
-1. **Use the GitHub issue search** — check if the issue has already been reported.
-
-2. **Check if the issue has been fixed** — try to reproduce it using the latest `master` or development branch in the repository.
-
-3. **Isolate the problem** — ideally create a [reduced test case](http://css-tricks.com/6263-reduced-test-cases/) and a live example. [This JS Bin](http://jsbin.com/lefey/1/edit?html,output) is a helpful template.
-
-A good bug report shouldn't leave others needing to chase you up for more information. Please try to be as detailed as possible in your report. What is your environment? What steps will reproduce the issue? What browser(s) and OS experience the problem? Do other browsers show the bug differently? What would you expect to be the outcome? All these details will help people to fix any potential bugs.
-
-Example:
-
-> Short and descriptive example bug report title
->
-> A summary of the issue and the browser/OS environment in which it occurs. If
-> suitable, include the steps required to reproduce the bug.
->
-> 1. This is the first step
-> 2. This is the second step
-> 3. Further steps, etc.
->
-> `` - a link to the reduced test case
->
-> Any other information you want to share that is relevant to the issue being reported. This might include the lines of code that you have identified as causing the bug, and potential solutions (and your opinions on their merits).
-
-## Feature requests
-
-Feature requests are welcome. But take a moment to find out whether your idea fits with the scope and aims of the project. It's up to *you* to make a strong case to convince the project's developers of the merits of this feature. Please provide as much detail and context as possible.
-
-## Pull requests
-
-Good pull requests—patches, improvements, new features—are a fantastic help. They should remain focused in scope and avoid containing unrelated commits.
-
-**Please ask first** before embarking on any significant pull request (e.g. implementing features, refactoring code, porting to a different language), otherwise you risk spending a lot of time working on something that the project's developers might not want to merge into the project.
-
-Adhering to the following process is the best way to get your work included in the project:
-
-1. Fork and clone the repository
-2. Configure and install the dependencies: `bower install`
-3. Create a new branch: `git checkout -b my-branch-name`
-4. Make your change, add tests, and make sure the tests still pass
-5. Push to your fork and [submit a pull request][pr]
-6. Pat your self on the back and wait for your pull request to be reviewed and merged.
-
-Here are a few things you can do that will increase the likelihood of your pull request being accepted:
-
-- Follow the [style guide][style].
-- Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests.
-- Write a [good commit message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html).
-
-## Resources
-
-- [Contributing to Open Source on GitHub](https://guides.github.com/activities/contributing-to-open-source/)
-- [Using Pull Requests](https://help.github.com/articles/using-pull-requests/)
-- [GitHub Help](https://help.github.com)
diff --git a/docs/bower_components/primer-user-content/LICENSE.md b/docs/bower_components/primer-user-content/LICENSE.md
deleted file mode 100644
index 02f1449601..0000000000
--- a/docs/bower_components/primer-user-content/LICENSE.md
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2014 GitHub, Inc
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/docs/bower_components/primer-user-content/bower.json b/docs/bower_components/primer-user-content/bower.json
deleted file mode 100644
index f56eb02092..0000000000
--- a/docs/bower_components/primer-user-content/bower.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "name": "primer-user-content",
- "keywords": [
- "github",
- "markdown",
- "css"
- ],
- "main": [
- "dist/github-markdown.css"
- ],
- "ignore": [
- "**/.*",
- "*.js",
- "README.md",
- "Gruntfile.js",
- "package.json",
- "render-test.md"
- ]
-}
diff --git a/docs/bower_components/primer-user-content/components/markdown.scss b/docs/bower_components/primer-user-content/components/markdown.scss
deleted file mode 100644
index 3f2e6e9013..0000000000
--- a/docs/bower_components/primer-user-content/components/markdown.scss
+++ /dev/null
@@ -1,694 +0,0 @@
-// GitHub Flavored Markdown
-// ================================
-//
-// *View the [source of this content](http://github.github.com/github-flavored-markdown/sample_content.html).*
-//
-// Let's get the whole "linebreak" thing out of the way. The next paragraph contains two phrases separated by a single newline character:
-//
-// Roses are red
-// Violets are blue
-//
-// The next paragraph has the same phrases, but now they are separated by two spaces and a newline character:
-//
-// Roses are red
-// Violets are blue
-//
-// Oh, and one thing I cannot stand is the mangling of words with multiple underscores in them like perform_complicated_task or do_this_and_do_that_and_another_thing.
-//
-// A bit of the GitHub spice
-// -------------------------
-//
-// In addition to the changes in the previous section, certain references are auto-linked:
-//
-// * SHA: be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
-// * User@SHA ref: mojombo@be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
-// * User/Project@SHA: mojombo/god@be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
-// * \#Num: #1
-// * User/#Num: mojombo#1
-// * SHA: be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
-// * User@SHA ref: mojombo@be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
-// * User/Project@SHA: mojombo/god@be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
-// * \#Num: #1
-// * User/#Num: mojombo#1
-// * User/Project#Num: mojombo/god#1
-//
-// These are dangerous goodies though, and we need to make sure email addresses don't get mangled:
-//
-// My email addy is tom@github.com.
-//
-// Good rules
-// -------------
-//
-// Actually there's nothing wrong with this ` `
-//
-// ---
-//
-// A mathematician is a device for turning coffee into theorems
-// -------------------------------
-//
-// In first grade I learned that 5 > 3 and 2 < 7. Maybe some arrows. 1 -> 2 -> 3. 9 <- 8 <- 7.
-//
-// Triangles man! a^2 + b^2 = c^2
-//
-// We all like making lists
-// ------------------------
-//
-// The above header should be an H2 tag. Now, for a list of fruits:
-//
-// * Red Apples
-// * Purple Grapes
-// * Green Kiwifruits
-//
-// Let's get crazy:
-//
-// 1. This is a list item with two paragraphs. Lorem ipsum dolor
-// sit amet, consectetuer adipiscing elit. Aliquam hendrerit
-// mi posuere lectus.
-//
-// Vestibulum enim wisi, viverra nec, fringilla in, laoreet
-// vitae, risus. Donec sit amet nisl. Aliquam semper ipsum
-// sit amet velit.
-//
-// 2. Suspendisse id sem consectetuer libero luctus adipiscing.
-//
-// What about some code **in** a list? That's insane, right?
-//
-// 1. In Ruby you can map like this:
-//
-// ['a', 'b'].map { |x| x.uppercase }
-//
-// 2. In Rails, you can do a shortcut:
-//
-// ['a', 'b'].map(&:uppercase)
-//
-// Some people seem to like definition lists
-//
-//
-// Lower cost
-// The new version of this product costs significantly less than the previous one!
-// Easier to use
-// We've changed the product so that it's much easier to use!
-//
-//
-// I am a robot
-// ------------
-//
-// Maybe you want to print `robot` to the console 1000 times. Why not?
-//
-// def robot_invasion
-// puts("robot " * 1000)
-// end
-//
-// You see, that was formatted as code because it's been indented by four spaces.
-//
-// How about we throw some angle braces and ampersands in there?
-//
-//
-//
-// Set in stone
-// ------------
-//
-// Playing the blame game
-// ----------------------
-//
-// If you need to blame someone, the best way to do so is by quoting them:
-//
-// > I, at any rate, am convinced that He does not throw dice.
-//
-// Or perhaps someone a little less eloquent:
-//
-// > I wish you'd have given me this written question ahead of time so I
-// > could plan for it... I'm sure something will pop into my head here in
-// > the midst of this press conference, with all the pressure of trying to
-// > come up with answer, but it hadn't yet...
-// >
-// > I don't want to sound like
-// > I have made no mistakes. I'm confident I have. I just haven't - you
-// > just put me under the spot here, and maybe I'm not as quick on my feet
-// > as I should be in coming up with one.
-//
-// Table for two
-// -------------
-//
-//
-//
-// ID Name Profession
-//
-//
-// 1 Beethoven Composer
-//
-//
-// 2 Beethoven (the dog) Dog
-//
-//
-//
-// Crazy linking action
-// --------------------
-//
-// I get 10 times more traffic from [Google] [1] than from
-// [Yahoo] [2] or [MSN] [3].
-//
-// [1]: http://google.com/ "Google"
-// [2]: http://search.yahoo.com/ "Yahoo Search"
-// [3]: http://search.msn.com/ "MSN Search"
-//
-//
-// # Header 1
-//
-// Bacon ipsum dolor sit amet cillum tail ea sint dolor veniam ```sirloin``` laborum hamburger fugiat mollit exercitation consectetur. Beef ribs leberkas fugiat, minim velit ball tip ham hock deserunt anim aliqua cillum ut officia sint. Shankle filet mignon t-bone laboris nulla. Sunt pig ham hock nulla biltong capicola tempor reprehenderit, swine pariatur flank doner pancetta. Cupidatat leberkas esse andouille magna prosciutto chicken. Non fugiat dolor, shank nulla swine sausage. Ut short loin kielbasa tail pork belly salami veniam sed eiusmod est enim drumstick strip steak brisket.
-//
-// ## Header 2
-//
-// Bacon ipsum dolor sit amet cillum tail ea sint dolor veniam ```sirloin``` laborum hamburger fugiat mollit exercitation consectetur. Beef ribs leberkas fugiat, minim velit ball tip ham hock deserunt anim aliqua cillum ut officia sint. Shankle filet mignon t-bone laboris nulla. Sunt pig ham hock nulla biltong capicola tempor reprehenderit, swine pariatur flank doner pancetta. Cupidatat leberkas esse andouille magna prosciutto chicken. Non fugiat dolor, shank nulla swine sausage. Ut short loin kielbasa tail pork belly salami veniam sed eiusmod est enim drumstick strip steak brisket.
-//
-// ### Header 3
-//
-// Bacon ipsum dolor sit amet cillum tail ea sint dolor veniam ```sirloin``` laborum hamburger fugiat mollit exercitation consectetur. Beef ribs leberkas fugiat, minim velit ball tip ham hock deserunt anim aliqua cillum ut officia sint. Shankle filet mignon t-bone laboris nulla. Sunt pig ham hock nulla biltong capicola tempor reprehenderit, swine pariatur flank doner pancetta. Cupidatat leberkas esse andouille magna prosciutto chicken. Non fugiat dolor, shank nulla swine sausage. Ut short loin kielbasa tail pork belly salami veniam sed eiusmod est enim drumstick strip steak brisket.
-//
-// #### Header 4
-//
-// Bacon ipsum dolor sit amet cillum tail ea sint dolor veniam ```sirloin``` laborum hamburger fugiat mollit exercitation consectetur. Beef ribs leberkas fugiat, minim velit ball tip ham hock deserunt anim aliqua cillum ut officia sint. Shankle filet mignon t-bone laboris nulla. Sunt pig ham hock nulla biltong capicola tempor reprehenderit, swine pariatur flank doner pancetta. Cupidatat leberkas esse andouille magna prosciutto chicken. Non fugiat dolor, shank nulla swine sausage. Ut short loin kielbasa tail pork belly salami veniam sed eiusmod est enim drumstick strip steak brisket.
-//
-// ##### Header 5
-//
-// Bacon ipsum dolor sit amet cillum tail ea sint dolor veniam ```sirloin``` laborum hamburger fugiat mollit exercitation consectetur. Beef ribs leberkas fugiat, minim velit ball tip ham hock deserunt anim aliqua cillum ut officia sint. Shankle filet mignon t-bone laboris nulla. Sunt pig ham hock nulla biltong capicola tempor reprehenderit, swine pariatur flank doner pancetta. Cupidatat leberkas esse andouille magna prosciutto chicken. Non fugiat dolor, shank nulla swine sausage. Ut short loin kielbasa tail pork belly salami veniam sed eiusmod est enim drumstick strip steak brisket.
-//
-// ###### Header 6
-//
-// Bacon ipsum dolor sit amet cillum tail ea sint dolor veniam ```sirloin``` laborum hamburger fugiat mollit exercitation consectetur. Beef ribs leberkas fugiat, minim velit ball tip ham hock deserunt anim aliqua cillum ut officia sint. Shankle filet mignon t-bone laboris nulla. Sunt pig ham hock nulla biltong capicola tempor reprehenderit, swine pariatur flank doner pancetta. Cupidatat leberkas esse andouille magna prosciutto chicken. Non fugiat dolor, shank nulla swine sausage. Ut short loin kielbasa tail pork belly salami veniam sed eiusmod est enim drumstick strip steak brisket.
-//
-// Ode to Code
-// -----------
-//
-// ### Code block
-//
-// ``` coffeescript
-// ameta.append('span')
-// .attr('class', 'cmeta')
-// .html((d) -> "#{$.commafy(d.cmts)} commits / #{$.commafy(d.adds)} ++ / #{$.commafy(d.dels)} -- ")
-//
-// svg = person.append('svg')
-// .attr('width', sparkw + (padl + padr))
-// .attr('height', sparkh + padt + padb)
-// .attr('class', 'spark')
-// .append('g')
-// .attr('transform', "translate(#{padl},#{padt})")
-//
-// svg.append("g")
-// .attr("class", "x axis")
-// .attr("transform", "translate(0, #{sparkh - padt - padb})")
-// .call(xAxis)
-// .selectAll('.x.axis g text')
-// .style('display', (d, i) -> if i % 2 != 0 then 'none' else 'block')
-//
-// yax = svg.append("g")
-// .attr("class", "y axis")
-// .call(yAxis)
-// .selectAll('.y.axis g text')
-// .attr('dx', sparkw / 2)
-// .style('display', (d, i) -> if i == 0 then 'none' else 'block')
-// .classed 'midlabel', true
-// ```
-//
-// ### Single tick with spaces
-//
-// `You can use the HTML5 custom data attributes by passing the values inside a data hash. For example: data => { :something => "bla bla bla", :confirm => "You sure?" }`
-//
-// ### Multiple single ticks
-//
-// `2012-03-28 09:19:58.0908|INFO|FileLogger|Processing xml: 18456 0 4 0x90000000000000 399270 Application dallas sa Reason: Password did not match that for the login provided. [CLIENT: 118.186.64.242] 184800000E00000007000000440041004C004C00410053000000070000006D00610073007400650072000000 `
-//
-// `2012-03-28 09:19:58.0908|INFO|FileLogger|No regex, so counting as a match sdf sdf sdf sdfsd lksdfj lksjdf lksjdf lksdjf lksjdf lsdfj werwer werwer`
-//
-// ### Unbroken single tick
-//
-// `longlonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglong`
-//
-// ### Unbroken triple tick
-//
-// ``` ruby
-// longlonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglong
-// ```
-//
-// ### Single tick between a block of text that wraps
-//
-// this is a line with some text and `inline code test test test test test test test test test test test test test test test test test test test test test test test test` and more text here
-//
-// ### Single tick between a block of text that doesn't wrap
-//
-// this is some text, `and this is some code`, lines don't break, they do what they're told
-//
-// Styleguide 4.0
-
-
-// All of our block level items should have the same margin
-$margin: 16px;
-
-// This is styling for generic markdownized text. Anything you put in a
-// container with .markdown-body on it should render generally well. It also
-// includes some GitHub Flavored Markdown specific styling (like @mentions)
-.markdown-body {
- overflow: hidden;
- font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif;
- font-size: 16px;
- line-height: 1.6;
- word-wrap: break-word;
-
- > *:first-child {
- margin-top: 0 !important;
- }
-
- > *:last-child {
- margin-bottom: 0 !important;
- }
-
- // Anchors like . These sometimes end up wrapped around
- // text when users mistakenly forget to close the tag or use self-closing tag
- // syntax. We don't want them to appear like links.
- // FIXME: a:not(:link):not(:visited) would be a little clearer here (and
- // possibly faster to match), but it breaks styling of elements due
- // to https://bugs.webkit.org/show_bug.cgi?id=142737.
- a:not([href]) {
- color: inherit;
- text-decoration: none;
- }
-
- // Link Colors
- .absent {
- color: #c00;
- }
-
- .anchor {
- position: absolute;
- top: 0;
- left: 0;
- display: block;
- padding-right: 6px;
- padding-left: 30px;
- margin-left: -30px;
-
- &:focus {
- outline: none;
- }
- }
-
- // Headings
- h1, h2, h3, h4, h5, h6 {
- position: relative;
- margin-top: 1em;
- margin-bottom: $margin;
- font-weight: bold;
- line-height: 1.4;
-
- .octicon-link {
- display: none;
- color: #000;
- vertical-align: middle;
- }
-
- &:hover .anchor {
- padding-left: 8px;
- margin-left: -30px;
- text-decoration: none;
-
- .octicon-link {
- display: inline-block;
- }
- }
-
- tt,
- code {
- font-size: inherit;
- }
- }
-
- h1 {
- padding-bottom: 0.3em;
- font-size: 2.25em;
- line-height: 1.2;
- border-bottom: 1px solid #eee;
-
- .anchor {
- line-height: 1;
- }
- }
-
- h2 {
- padding-bottom: 0.3em;
- font-size: 1.75em;
- line-height: 1.225;
- border-bottom: 1px solid #eee;
-
- .anchor {
- line-height: 1;
- }
- }
-
- h3 {
- font-size: 1.5em;
- line-height: 1.43;
-
- .anchor {
- line-height: 1.2;
- }
- }
-
- h4 {
- font-size: 1.25em;
-
- .anchor {
- line-height: 1.2;
- }
- }
-
- h5 {
- font-size: 1em;
-
- .anchor {
- line-height: 1.1;
- }
- }
-
- h6 {
- font-size: 1em;
- color: #777;
-
- .anchor {
- line-height: 1.1;
- }
- }
-
- p,
- blockquote,
- ul, ol, dl,
- table,
- pre {
- margin-top: 0;
- margin-bottom: $margin;
- }
-
- hr {
- height: 4px;
- padding: 0;
- margin: $margin 0;
- background-color: #e7e7e7;
- border: 0 none;
- }
-
- // Lists, Blockquotes & Such
- ul,
- ol {
- padding-left: 2em;
-
- &.no-list {
- padding: 0;
- list-style-type: none;
- }
- }
-
- // Did someone complain about list spacing? Encourage them
- // to create the spacing with their markdown formatting.
- // List behavior should be controled by the markup, not the css.
- //
- // For lists with padding between items, use blank
- // lines between items. This will generate paragraphs with
- // padding to space things out.
- //
- // - item
- //
- // - item
- //
- // - item
- //
- // For list without padding, don't use blank lines.
- //
- // - item
- // - item
- // - item
- //
- // Modifying the css to emulate these behaviors merely brakes
- // one case in the process of solving another. Don't change
- // this unless it's really really a bug.
- ul ul,
- ul ol,
- ol ol,
- ol ul {
- margin-top: 0;
- margin-bottom: 0;
- }
-
- li > p {
- margin-top: $margin;
- }
-
- dl {
- padding: 0;
- }
-
- dl dt {
- padding: 0;
- margin-top: $margin;
- font-size: 1em;
- font-style: italic;
- font-weight: bold;
- }
-
- dl dd {
- padding: 0 $margin;
- margin-bottom: $margin;
- }
-
- blockquote {
- padding: 0 15px;
- color: #777;
- border-left: 4px solid #ddd;
-
- > :first-child {
- margin-top: 0;
- }
-
- > :last-child {
- margin-bottom: 0;
- }
- }
-
- // Tables
- table {
- display: block;
- width: 100%;
- overflow: auto;
- word-break: normal;
- word-break: keep-all; // For Firefox to horizontally scroll wider tables.
-
- th {
- font-weight: bold;
- }
-
- th, td {
- padding: 6px 13px;
- border: 1px solid #ddd;
- }
-
- tr {
- background-color: #fff;
- border-top: 1px solid #ccc;
-
- &:nth-child(2n) {
- background-color: #f8f8f8;
- }
- }
- }
-
- // Images & Stuff
- img {
- max-width: 100%;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- }
-
- .emoji {
- max-width: none;
- }
-
- // Gollum Image Tags
-
- // Framed
- span.frame {
- display: block;
- overflow: hidden;
-
- & > span {
- display: block;
- float: left;
- width: auto;
- padding: 7px;
- margin: 13px 0 0;
- overflow: hidden;
- border: 1px solid #ddd;
- }
-
- span img {
- display: block;
- float: left;
- }
-
- span span {
- display: block;
- padding: 5px 0 0;
- clear: both;
- color: #333;
- }
- }
-
- span.align-center {
- display: block;
- overflow: hidden;
- clear: both;
-
- & > span {
- display: block;
- margin: 13px auto 0;
- overflow: hidden;
- text-align: center;
- }
-
- span img {
- margin: 0 auto;
- text-align: center;
- }
- }
-
- span.align-right {
- display: block;
- overflow: hidden;
- clear: both;
-
- & > span {
- display: block;
- margin: 13px 0 0;
- overflow: hidden;
- text-align: right;
- }
-
- span img {
- margin: 0;
- text-align: right;
- }
- }
-
- span.float-left {
- display: block;
- float: left;
- margin-right: 13px;
- overflow: hidden;
-
- span {
- margin: 13px 0 0;
- }
- }
-
- span.float-right {
- display: block;
- float: right;
- margin-left: 13px;
- overflow: hidden;
-
- & > span {
- display: block;
- margin: 13px auto 0;
- overflow: hidden;
- text-align: right;
- }
- }
-
- // Inline code snippets
- code,
- tt {
- padding: 0;
- padding-top: 0.2em;
- padding-bottom: 0.2em;
- margin: 0;
- font-size: 85%;
- background-color: rgba(0,0,0,0.04);
- border-radius: 3px; // don't add padding, gives scrollbars
-
- &:before,
- &:after {
- letter-spacing: -0.2em; // this creates padding
- content: "\00a0";
- }
-
- br { display: none; }
- }
-
- del code { text-decoration: inherit; }
-
- // Code tags within code blocks (s)
- pre > code {
- padding: 0;
- margin: 0;
- font-size: 100%;
- word-break: normal;
- white-space: pre;
- background: transparent;
- border: 0;
- }
-
- .highlight {
- margin-bottom: $margin;
- }
-
- .highlight pre,
- pre {
- padding: $margin;
- overflow: auto;
- font-size: 85%;
- line-height: 1.45;
- background-color: #f7f7f7;
- border-radius: 3px;
- }
-
- .highlight pre {
- margin-bottom: 0;
- word-break: normal;
- }
-
- pre {
- word-wrap: normal;
- }
-
- pre code,
- pre tt {
- display: inline;
- max-width: initial;
- padding: 0;
- margin: 0;
- overflow: initial;
- line-height: inherit;
- word-wrap: normal;
- background-color: transparent;
- border: 0;
-
- &:before,
- &:after {
- content: normal;
- }
- }
-
- kbd {
- display: inline-block;
- padding: 3px 5px;
- font-size: 11px;
- line-height: 10px;
- color: #555;
- vertical-align: middle;
- background-color: #fcfcfc;
- border: solid 1px #ccc;
- border-bottom-color: #bbb;
- border-radius: 3px;
- box-shadow: inset 0 -1px 0 #bbb;
- }
-}
-
diff --git a/docs/bower_components/primer-user-content/components/user-content.scss b/docs/bower_components/primer-user-content/components/user-content.scss
deleted file mode 100644
index 0ef4aac8ef..0000000000
--- a/docs/bower_components/primer-user-content/components/user-content.scss
+++ /dev/null
@@ -1 +0,0 @@
-@import "primer-user-content/components/markdown";
diff --git a/docs/bower_components/primer-user-content/dist/user-content.css b/docs/bower_components/primer-user-content/dist/user-content.css
deleted file mode 100644
index 2207d871cf..0000000000
--- a/docs/bower_components/primer-user-content/dist/user-content.css
+++ /dev/null
@@ -1,546 +0,0 @@
-/*!
- * GitHub User Content Stylesheets v1.2.4 (https://github.com/primer/user-content)
- * Copyright 2014 GitHub, Inc.
- * Licensed under MIT (https://github.com/primer/user-content/blob/master/LICENSE.md).
- */
-
-.markdown-body {
- overflow: hidden;
- font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif;
- font-size: 16px;
- line-height: 1.6;
- word-wrap: break-word;
-}
-.markdown-body > *:first-child {
- margin-top: 0 !important;
-}
-.markdown-body > *:last-child {
- margin-bottom: 0 !important;
-}
-.markdown-body .absent {
- color: #c00;
-}
-.markdown-body .anchor {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- display: block;
- padding-right: 6px;
- padding-left: 30px;
- margin-left: -30px;
-}
-.markdown-body .anchor:focus {
- outline: none;
-}
-.markdown-body h1, .markdown-body h2, .markdown-body h3, .markdown-body h4, .markdown-body h5, .markdown-body h6 {
- position: relative;
- margin-top: 1em;
- margin-bottom: 16px;
- font-weight: bold;
- line-height: 1.4;
-}
-.markdown-body h1 .octicon-link, .markdown-body h2 .octicon-link, .markdown-body h3 .octicon-link, .markdown-body h4 .octicon-link, .markdown-body h5 .octicon-link, .markdown-body h6 .octicon-link {
- display: none;
- color: #000;
- vertical-align: middle;
-}
-.markdown-body h1:hover .anchor, .markdown-body h2:hover .anchor, .markdown-body h3:hover .anchor, .markdown-body h4:hover .anchor, .markdown-body h5:hover .anchor, .markdown-body h6:hover .anchor {
- height: 1em;
- padding-left: 8px;
- margin-left: -30px;
- line-height: 1;
- text-decoration: none;
-}
-.markdown-body h1:hover .anchor .octicon-link, .markdown-body h2:hover .anchor .octicon-link, .markdown-body h3:hover .anchor .octicon-link, .markdown-body h4:hover .anchor .octicon-link, .markdown-body h5:hover .anchor .octicon-link, .markdown-body h6:hover .anchor .octicon-link {
- display: inline-block;
-}
-.markdown-body h1 tt,
- .markdown-body h1 code, .markdown-body h2 tt,
- .markdown-body h2 code, .markdown-body h3 tt,
- .markdown-body h3 code, .markdown-body h4 tt,
- .markdown-body h4 code, .markdown-body h5 tt,
- .markdown-body h5 code, .markdown-body h6 tt,
- .markdown-body h6 code {
- font-size: inherit;
-}
-.markdown-body h1 {
- padding-bottom: .3em;
- font-size: 2.25em;
- line-height: 1.2;
- border-bottom: 1px solid #eee;
-}
-.markdown-body h2 {
- padding-bottom: .3em;
- font-size: 1.75em;
- line-height: 1.225;
- border-bottom: 1px solid #eee;
-}
-.markdown-body h3 {
- font-size: 1.5em;
- line-height: 1.43;
-}
-.markdown-body h4 {
- font-size: 1.25em;
-}
-.markdown-body h5 {
- font-size: 1em;
-}
-.markdown-body h6 {
- font-size: 1em;
- color: #777;
-}
-.markdown-body p,
- .markdown-body blockquote,
- .markdown-body ul, .markdown-body ol, .markdown-body dl,
- .markdown-body table,
- .markdown-body pre {
- margin-top: 0;
- margin-bottom: 16px;
-}
-.markdown-body hr {
- height: 4px;
- padding: 0;
- margin: 16px 0;
- background-color: #e7e7e7;
- border: 0 none;
-}
-.markdown-body ul,
- .markdown-body ol {
- padding-left: 2em;
-}
-.markdown-body ul.no-list,
- .markdown-body ol.no-list {
- padding: 0;
- list-style-type: none;
-}
-.markdown-body ul ul,
- .markdown-body ul ol,
- .markdown-body ol ol,
- .markdown-body ol ul {
- margin-top: 0;
- margin-bottom: 0;
-}
-.markdown-body li > p {
- margin-top: 16px;
-}
-.markdown-body dl {
- padding: 0;
-}
-.markdown-body dl dt {
- padding: 0;
- margin-top: 16px;
- font-size: 1em;
- font-style: italic;
- font-weight: bold;
-}
-.markdown-body dl dd {
- padding: 0 16px;
- margin-bottom: 16px;
-}
-.markdown-body blockquote {
- padding: 0 15px;
- color: #777;
- border-left: 4px solid #ddd;
-}
-.markdown-body blockquote > :first-child {
- margin-top: 0;
-}
-.markdown-body blockquote > :last-child {
- margin-bottom: 0;
-}
-.markdown-body table {
- display: block;
- width: 100%;
- overflow: auto;
-}
-.markdown-body table th {
- font-weight: bold;
-}
-.markdown-body table th, .markdown-body table td {
- padding: 6px 13px;
- border: 1px solid #ddd;
-}
-.markdown-body table tr {
- background-color: #fff;
- border-top: 1px solid #ccc;
-}
-.markdown-body table tr:nth-child(2n) {
- background-color: #f8f8f8;
-}
-.markdown-body img {
- max-width: 100%;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-.markdown-body span.frame {
- display: block;
- overflow: hidden;
-}
-.markdown-body span.frame > span {
- display: block;
- float: left;
- width: auto;
- padding: 7px;
- margin: 13px 0 0;
- overflow: hidden;
- border: 1px solid #ddd;
-}
-.markdown-body span.frame span img {
- display: block;
- float: left;
-}
-.markdown-body span.frame span span {
- display: block;
- padding: 5px 0 0;
- clear: both;
- color: #333;
-}
-.markdown-body span.align-center {
- display: block;
- overflow: hidden;
- clear: both;
-}
-.markdown-body span.align-center > span {
- display: block;
- margin: 13px auto 0;
- overflow: hidden;
- text-align: center;
-}
-.markdown-body span.align-center span img {
- margin: 0 auto;
- text-align: center;
-}
-.markdown-body span.align-right {
- display: block;
- overflow: hidden;
- clear: both;
-}
-.markdown-body span.align-right > span {
- display: block;
- margin: 13px 0 0;
- overflow: hidden;
- text-align: right;
-}
-.markdown-body span.align-right span img {
- margin: 0;
- text-align: right;
-}
-.markdown-body span.float-left {
- display: block;
- float: left;
- margin-right: 13px;
- overflow: hidden;
-}
-.markdown-body span.float-left span {
- margin: 13px 0 0;
-}
-.markdown-body span.float-right {
- display: block;
- float: right;
- margin-left: 13px;
- overflow: hidden;
-}
-.markdown-body span.float-right > span {
- display: block;
- margin: 13px auto 0;
- overflow: hidden;
- text-align: right;
-}
-.markdown-body code,
- .markdown-body tt {
- padding: 0;
- padding-top: .2em;
- padding-bottom: .2em;
- margin: 0;
- font-size: 85%;
- background-color: rgba(0, 0, 0, .04);
- border-radius: 3px;
-}
-.markdown-body code:before, .markdown-body code:after,
- .markdown-body tt:before,
- .markdown-body tt:after {
- letter-spacing: -.2em;
- content: "\00a0";
-}
-.markdown-body code br,
- .markdown-body tt br {
- display: none;
-}
-.markdown-body del code {
- text-decoration: inherit;
- vertical-align: text-top;
-}
-.markdown-body pre > code {
- padding: 0;
- margin: 0;
- font-size: 100%;
- white-space: pre;
- background: transparent;
- border: 0;
-}
-.markdown-body .highlight {
- margin-bottom: 16px;
-}
-.markdown-body .highlight pre,
- .markdown-body pre {
- padding: 16px;
- overflow: auto;
- font-size: 85%;
- line-height: 1.45;
- background-color: #f7f7f7;
- border-radius: 3px;
-}
-.markdown-body .highlight pre {
- margin-bottom: 0;
-}
-.markdown-body pre {
- word-wrap: normal;
-}
-.markdown-body pre code,
- .markdown-body pre tt {
- display: inline;
- max-width: initial;
- padding: 0;
- margin: 0;
- overflow: initial;
- line-height: inherit;
- word-wrap: normal;
- background-color: transparent;
- border: 0;
-}
-.markdown-body pre code:before, .markdown-body pre code:after,
- .markdown-body pre tt:before,
- .markdown-body pre tt:after {
- content: normal;
-}
-
-.highlight {
- background: #fff;
-}
-.highlight .c {
- font-style: italic;
- color: #998;
-}
-.highlight .err {
- color: #a61717;
- background-color: #e3d2d2;
-}
-.highlight .k {
- font-weight: bold;
-}
-.highlight .o {
- font-weight: bold;
-}
-.highlight .cm {
- font-style: italic;
- color: #998;
-}
-.highlight .cp {
- font-weight: bold;
- color: #999;
-}
-.highlight .c1 {
- font-style: italic;
- color: #998;
-}
-.highlight .cs {
- font-style: italic;
- font-weight: bold;
- color: #999;
-}
-.highlight .gd {
- color: #000;
- background-color: #fdd;
-}
-.highlight .gd .x {
- color: #000;
- background-color: #faa;
-}
-.highlight .ge {
- font-style: italic;
-}
-.highlight .gr {
- color: #a00;
-}
-.highlight .gh {
- color: #999;
-}
-.highlight .gi {
- color: #000;
- background-color: #dfd;
-}
-.highlight .gi .x {
- color: #000;
- background-color: #afa;
-}
-.highlight .go {
- color: #888;
-}
-.highlight .gp {
- color: #555;
-}
-.highlight .gs {
- font-weight: bold;
-}
-.highlight .gu {
- font-weight: bold;
- color: #800080;
-}
-.highlight .gt {
- color: #a00;
-}
-.highlight .kc {
- font-weight: bold;
-}
-.highlight .kd {
- font-weight: bold;
-}
-.highlight .kn {
- font-weight: bold;
-}
-.highlight .kp {
- font-weight: bold;
-}
-.highlight .kr {
- font-weight: bold;
-}
-.highlight .kt {
- font-weight: bold;
- color: #458;
-}
-.highlight .m {
- color: #099;
-}
-.highlight .s {
- color: #d14;
-}
-.highlight .n {
- color: #333;
-}
-.highlight .na {
- color: teal;
-}
-.highlight .nb {
- color: #0086b3;
-}
-.highlight .nc {
- font-weight: bold;
- color: #458;
-}
-.highlight .no {
- color: teal;
-}
-.highlight .ni {
- color: purple;
-}
-.highlight .ne {
- font-weight: bold;
- color: #900;
-}
-.highlight .nf {
- font-weight: bold;
- color: #900;
-}
-.highlight .nn {
- color: #555;
-}
-.highlight .nt {
- color: navy;
-}
-.highlight .nv {
- color: teal;
-}
-.highlight .ow {
- font-weight: bold;
-}
-.highlight .w {
- color: #bbb;
-}
-.highlight .mf {
- color: #099;
-}
-.highlight .mh {
- color: #099;
-}
-.highlight .mi {
- color: #099;
-}
-.highlight .mo {
- color: #099;
-}
-.highlight .sb {
- color: #d14;
-}
-.highlight .sc {
- color: #d14;
-}
-.highlight .sd {
- color: #d14;
-}
-.highlight .s2 {
- color: #d14;
-}
-.highlight .se {
- color: #d14;
-}
-.highlight .sh {
- color: #d14;
-}
-.highlight .si {
- color: #d14;
-}
-.highlight .sx {
- color: #d14;
-}
-.highlight .sr {
- color: #009926;
-}
-.highlight .s1 {
- color: #d14;
-}
-.highlight .ss {
- color: #990073;
-}
-.highlight .bp {
- color: #999;
-}
-.highlight .vc {
- color: teal;
-}
-.highlight .vg {
- color: teal;
-}
-.highlight .vi {
- color: teal;
-}
-.highlight .il {
- color: #099;
-}
-.highlight .gc {
- color: #999;
- background-color: #eaf2f5;
-}
-
-.type-csharp .highlight .k {
- color: blue;
-}
-.type-csharp .highlight .kt {
- color: blue;
-}
-.type-csharp .highlight .nf {
- font-weight: normal;
- color: #000;
-}
-.type-csharp .highlight .nc {
- color: #2b91af;
-}
-.type-csharp .highlight .nn {
- color: black;
-}
-.type-csharp .highlight .s {
- color: #a31515;
-}
-.type-csharp .highlight .sc {
- color: #a31515;
-}
diff --git a/docs/bower_components/primer-user-content/dist/user-content.min.css b/docs/bower_components/primer-user-content/dist/user-content.min.css
deleted file mode 100644
index 88dab43f11..0000000000
--- a/docs/bower_components/primer-user-content/dist/user-content.min.css
+++ /dev/null
@@ -1,7 +0,0 @@
-/*!
- * GitHub User Content Stylesheets v1.2.4 (https://github.com/primer/user-content)
- * Copyright 2014 GitHub, Inc.
- * Licensed under MIT (https://github.com/primer/user-content/blob/master/LICENSE.md).
- */
-
-.markdown-body{overflow:hidden;font-family:"Helvetica Neue",Helvetica,"Segoe UI",Arial,freesans,sans-serif;font-size:16px;line-height:1.6;word-wrap:break-word}.markdown-body>:first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdown-body .absent{color:#c00}.markdown-body .anchor{position:absolute;top:0;bottom:0;left:0;display:block;padding-right:6px;padding-left:30px;margin-left:-30px}.markdown-body .anchor:focus{outline:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{position:relative;margin-top:1em;margin-bottom:16px;font-weight:700;line-height:1.4}.markdown-body h1 .octicon-link,.markdown-body h2 .octicon-link,.markdown-body h3 .octicon-link,.markdown-body h4 .octicon-link,.markdown-body h5 .octicon-link,.markdown-body h6 .octicon-link{display:none;color:#000;vertical-align:middle}.markdown-body h1:hover .anchor,.markdown-body h2:hover .anchor,.markdown-body h3:hover .anchor,.markdown-body h4:hover .anchor,.markdown-body h5:hover .anchor,.markdown-body h6:hover .anchor{height:1em;padding-left:8px;margin-left:-30px;line-height:1;text-decoration:none}.markdown-body h1:hover .anchor .octicon-link,.markdown-body h2:hover .anchor .octicon-link,.markdown-body h3:hover .anchor .octicon-link,.markdown-body h4:hover .anchor .octicon-link,.markdown-body h5:hover .anchor .octicon-link,.markdown-body h6:hover .anchor .octicon-link{display:inline-block}.markdown-body h1 tt,.markdown-body h1 code,.markdown-body h2 tt,.markdown-body h2 code,.markdown-body h3 tt,.markdown-body h3 code,.markdown-body h4 tt,.markdown-body h4 code,.markdown-body h5 tt,.markdown-body h5 code,.markdown-body h6 tt,.markdown-body h6 code{font-size:inherit}.markdown-body h1{padding-bottom:.3em;font-size:2.25em;line-height:1.2;border-bottom:1px solid #eee}.markdown-body h2{padding-bottom:.3em;font-size:1.75em;line-height:1.225;border-bottom:1px solid #eee}.markdown-body h3{font-size:1.5em;line-height:1.43}.markdown-body h4{font-size:1.25em}.markdown-body h5{font-size:1em}.markdown-body h6{font-size:1em;color:#777}.markdown-body p,.markdown-body blockquote,.markdown-body ul,.markdown-body ol,.markdown-body dl,.markdown-body table,.markdown-body pre{margin-top:0;margin-bottom:16px}.markdown-body hr{height:4px;padding:0;margin:16px 0;background-color:#e7e7e7;border:0 none}.markdown-body ul,.markdown-body ol{padding-left:2em}.markdown-body ul.no-list,.markdown-body ol.no-list{padding:0;list-style-type:none}.markdown-body ul ul,.markdown-body ul ol,.markdown-body ol ol,.markdown-body ol ul{margin-top:0;margin-bottom:0}.markdown-body li>p{margin-top:16px}.markdown-body dl{padding:0}.markdown-body dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:700}.markdown-body dl dd{padding:0 16px;margin-bottom:16px}.markdown-body blockquote{padding:0 15px;color:#777;border-left:4px solid #ddd}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body table{display:block;width:100%;overflow:auto}.markdown-body table th{font-weight:700}.markdown-body table th,.markdown-body table td{padding:6px 13px;border:1px solid #ddd}.markdown-body table tr{background-color:#fff;border-top:1px solid #ccc}.markdown-body table tr:nth-child(2n){background-color:#f8f8f8}.markdown-body img{max-width:100%;-moz-box-sizing:border-box;box-sizing:border-box}.markdown-body span.frame{display:block;overflow:hidden}.markdown-body span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid #ddd}.markdown-body span.frame span img{display:block;float:left}.markdown-body span.frame span span{display:block;padding:5px 0 0;clear:both;color:#333}.markdown-body span.align-center{display:block;overflow:hidden;clear:both}.markdown-body span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.markdown-body span.align-center span img{margin:0 auto;text-align:center}.markdown-body span.align-right{display:block;overflow:hidden;clear:both}.markdown-body span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.markdown-body span.align-right span img{margin:0;text-align:right}.markdown-body span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.markdown-body span.float-left span{margin:13px 0 0}.markdown-body span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.markdown-body span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.markdown-body code,.markdown-body tt{padding:0;padding-top:.2em;padding-bottom:.2em;margin:0;font-size:85%;background-color:rgba(0,0,0,.04);border-radius:3px}.markdown-body code:before,.markdown-body code:after,.markdown-body tt:before,.markdown-body tt:after{letter-spacing:-.2em;content:"\00a0"}.markdown-body code br,.markdown-body tt br{display:none}.markdown-body del code{text-decoration:inherit;vertical-align:text-top}.markdown-body pre>code{padding:0;margin:0;font-size:100%;white-space:pre;background:0 0;border:0}.markdown-body .highlight{margin-bottom:16px}.markdown-body .highlight pre,.markdown-body pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f7f7f7;border-radius:3px}.markdown-body .highlight pre{margin-bottom:0}.markdown-body pre{word-wrap:normal}.markdown-body pre code,.markdown-body pre tt{display:inline;max-width:initial;padding:0;margin:0;overflow:initial;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown-body pre code:before,.markdown-body pre code:after,.markdown-body pre tt:before,.markdown-body pre tt:after{content:normal}.highlight{background:#fff}.highlight .c{font-style:italic;color:#998}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .k{font-weight:700}.highlight .o{font-weight:700}.highlight .cm{font-style:italic;color:#998}.highlight .cp{font-weight:700;color:#999}.highlight .c1{font-style:italic;color:#998}.highlight .cs{font-style:italic;font-weight:700;color:#999}.highlight .gd{color:#000;background-color:#fdd}.highlight .gd .x{color:#000;background-color:#faa}.highlight .ge{font-style:italic}.highlight .gr{color:#a00}.highlight .gh{color:#999}.highlight .gi{color:#000;background-color:#dfd}.highlight .gi .x{color:#000;background-color:#afa}.highlight .go{color:#888}.highlight .gp{color:#555}.highlight .gs{font-weight:700}.highlight .gu{font-weight:700;color:purple}.highlight .gt{color:#a00}.highlight .kc{font-weight:700}.highlight .kd{font-weight:700}.highlight .kn{font-weight:700}.highlight .kp{font-weight:700}.highlight .kr{font-weight:700}.highlight .kt{font-weight:700;color:#458}.highlight .m{color:#099}.highlight .s{color:#d14}.highlight .n{color:#333}.highlight .na{color:teal}.highlight .nb{color:#0086b3}.highlight .nc{font-weight:700;color:#458}.highlight .no{color:teal}.highlight .ni{color:purple}.highlight .ne{font-weight:700;color:#900}.highlight .nf{font-weight:700;color:#900}.highlight .nn{color:#555}.highlight .nt{color:navy}.highlight .nv{color:teal}.highlight .ow{font-weight:700}.highlight .w{color:#bbb}.highlight .mf{color:#099}.highlight .mh{color:#099}.highlight .mi{color:#099}.highlight .mo{color:#099}.highlight .sb{color:#d14}.highlight .sc{color:#d14}.highlight .sd{color:#d14}.highlight .s2{color:#d14}.highlight .se{color:#d14}.highlight .sh{color:#d14}.highlight .si{color:#d14}.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .bp{color:#999}.highlight .vc{color:teal}.highlight .vg{color:teal}.highlight .vi{color:teal}.highlight .il{color:#099}.highlight .gc{color:#999;background-color:#eaf2f5}.type-csharp .highlight .k{color:#00f}.type-csharp .highlight .kt{color:#00f}.type-csharp .highlight .nf{font-weight:400;color:#000}.type-csharp .highlight .nc{color:#2b91af}.type-csharp .highlight .nn{color:#000}.type-csharp .highlight .s{color:#a31515}.type-csharp .highlight .sc{color:#a31515}
\ No newline at end of file
diff --git a/docs/buttons.md b/docs/buttons.md
deleted file mode 100644
index 116634a064..0000000000
--- a/docs/buttons.md
+++ /dev/null
@@ -1,181 +0,0 @@
----
-layout: page
-title: Buttons
----
-
-Buttons are used for **actions**, like in forms, while textual hyperlinks are used for **destinations**, or moving from one page to another.
-
-## Contents
-
-* Will be replaced with the ToC, excluding the "Contents" header
-{:toc}
-
-## Default buttons
-
-Use the standard—yet classy—`.btn` for form actions and primary page actions. These are used extensively around the site.
-
-When using a `` element, **always specify a `type`**. When using a `` element, **always add `role="button"` for accessibility**.
-
-{% example html %}
-Button button
- Link button
-{% endexample %}
-
-You can find them in two sizes: the default `.btn` and the smaller `.btn-sm`.
-
-{% example html %}
-Button
-Small button
-{% endexample %}
-
-## Primary
-
-Primary buttons are green and are used to indicate the *primary* action on a page. When you need your buttons to stand out, use `.btn.btn-primary`. You can use it with both button sizes—just add `.btn-primary`.
-
-{% example html %}
-Primary button
-Small primary button
-{% endexample %}
-
-## Danger
-
-Danger buttons are red. They help reiterate that the intended action is important or potentially dangerous (e.g., deleting a repo or transferring ownership). Similar to the primary buttons, just add `.btn-danger`.
-
-{% example html %}
-Danger button
-Small danger button
-{% endexample %}
-
-## Outline
-
-Outline buttons downplay an action as they appear like boxy links. Just add `.btn-outline` and go.
-
-{% example html %}
-Outline button
-Outline button
-{% endexample %}
-
-## Disabled state
-
-Disable `` elements with the boolean `disabled` attribute and `` elements with the `.disabled` class.
-
-{% example html %}
-Disabled button
- Disabled button
-{% endexample %}
-
-Similar styles are applied to primary, danger, and outline buttons:
-
-{% example html %}
-Disabled button
-Disabled button
-{% endexample %}
-
-{% example html %}
-Disabled button
-Disabled button
-{% endexample %}
-
-{% example html %}
-Disabled button
-Disabled button
-{% endexample %}
-
-## Block buttons
-
-Make any button full-width by adding `.btn-block`. It adds `width: 100%;`, changes the `display` from `inline-block` to `block`, and centers the button text.
-
-{% example html %}
-Block button
-Small block button
-{% endexample %}
-
-## With counts
-
-You can easily append a count to a **small button**. Add the `.with-count` class to the `.btn-sm` and then add the `.social-count` after the button.
-
-**Be sure to clear the float added by the additional class.**
-
-{% example html %}
-
-{% endexample %}
-
-You can also use the [counter](../utilities/#counter) component within buttons:
-
-{% example html %}
-
- Button
- 12
-
-
-
- Button
- 12
-
-
-
- Button
- 12
-
-
-
- Button
- 12
-
-{% endexample %}
-
-## Button groups
-
-Have a hankering for a series of buttons that are attached to one another? Wrap them in a `.btn-group` and the buttons will be rounded and spaced automatically.
-
-{% example html %}
-
- Button
- Button
- Button
-
-
-
- Button
- Button
- Button
-
-
-
- Button
- Button
- Button
-
-{% endexample %}
-
-Add `.button_to` to `