Replace website with new version
10
website/404.jade
Normal file
|
@ -0,0 +1,10 @@
|
|||
include _includes/_mixins
|
||||
|
||||
//- 404 Error
|
||||
//- ============================================================================
|
||||
|
||||
+lead.text-center Ooops, this page does not exist. Click #[a(href='javascript:history.go(-1)') here] to go back or check out one of the latest posts below.
|
||||
|
||||
+divider('bottom')
|
||||
|
||||
!=partial('_includes/_latest-posts', { max: 3 } )
|
|
@ -1,29 +1,22 @@
|
|||
Source for spacy.io
|
||||
==============================
|
||||
# Source files for the spacy.io website and docs
|
||||
|
||||
This directory contains the source for official spaCy website at http://spacy.io/.
|
||||
The [spacy.io](https://spacy.io) website is implemented in [Jade (aka Pug)](https://www.jade-lang.org), and is built or served by [Harp](https://harpjs.com).
|
||||
|
||||
Fixes, updates and suggestions are welcome.
|
||||
## Building the site
|
||||
|
||||
To build the site and start making changes:
|
||||
|
||||
Releases
|
||||
--------
|
||||
Changes made to this directory go live on spacy.io. <When / how often?>
|
||||
sudo npm install --global harp
|
||||
git clone https://github.com/spacy-io/website
|
||||
cd website
|
||||
harp server
|
||||
|
||||
This will serve the site on [http://localhost:9000](http://localhost:9000). You can then edit the jade source and refresh the page to see your changes.
|
||||
|
||||
The Stack
|
||||
--------
|
||||
The site is built with the [Jade](http://jade-lang.com/) template language.
|
||||
## Reading the source
|
||||
|
||||
See [fabfile.py](/fabfile.py) under ```web()``` for more
|
||||
Jade is an extensible templating language with a readable syntax, that compiles to HTML.
|
||||
The website source makes extensive use of Jade mixins, so that the design system is abstracted away from the content you're
|
||||
writing. You can read more about our approach in our blog post, ["Rebuilding a Site with Modular Markup"](https://spacy.io/blog/modular-markup).
|
||||
|
||||
|
||||
Developing
|
||||
--------
|
||||
To make and test changes
|
||||
```
|
||||
npm install jade --global
|
||||
fab web
|
||||
cd website/site; python -m SimpleHTTPServer 8000; cd -
|
||||
```
|
||||
Then visit [localhost:8000](http://localhost:8000)
|
||||
If you want to write or edit the pages, the site's [styleguide](http://spacy.io/styleguide) serves as a useful reference of the available mixins.
|
||||
|
|
51
website/_data.json
Normal file
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
"index": {
|
||||
"landing": true
|
||||
},
|
||||
|
||||
"feed": {
|
||||
"layout": false
|
||||
},
|
||||
|
||||
"robots": {
|
||||
"layout": false
|
||||
},
|
||||
|
||||
"404": {
|
||||
"title": "404 Error",
|
||||
"asides": false
|
||||
},
|
||||
|
||||
"team": {
|
||||
"title": "Team"
|
||||
},
|
||||
|
||||
"legal": {
|
||||
"title": "Legal & Imprint",
|
||||
"sidebar": true,
|
||||
"asides": true
|
||||
},
|
||||
|
||||
"styleguide": {
|
||||
"title" : "Styleguide",
|
||||
"standalone" : true,
|
||||
"asides": true,
|
||||
|
||||
"sidebar": {
|
||||
"About": [
|
||||
["Introduction", "#section-introduction", "introduction"]
|
||||
],
|
||||
"Design": [
|
||||
["Colors", "#section-colors", "colors"],
|
||||
["Logo", "#section-logo", "logo"],
|
||||
["Typography", "#section-typography", "typography"],
|
||||
["Grid", "#section-grid", "grid"],
|
||||
["Elements", "#section-elements", "elements"],
|
||||
["Components", "#section-components", "components"]
|
||||
],
|
||||
"Code": [
|
||||
["Source", "#section-source", "source"]
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
94
website/_fabfile.py
Normal file
|
@ -0,0 +1,94 @@
|
|||
from __future__ import print_function
|
||||
|
||||
from fabric.api import local
|
||||
import os
|
||||
import hashlib
|
||||
import mimetypes
|
||||
import shutil
|
||||
|
||||
import boto.s3.connection
|
||||
|
||||
|
||||
mimetypes.init()
|
||||
|
||||
buckets = {
|
||||
'staging': 'staging.spacy.io',
|
||||
'production': 'spacy.io',
|
||||
}
|
||||
|
||||
|
||||
def compile():
|
||||
shutil.rmtree('www')
|
||||
local('NODE_ENV=s3 harp compile')
|
||||
|
||||
|
||||
def publish(env='staging', site_path='www'):
|
||||
os.environ['S3_USE_SIGV4'] = 'True'
|
||||
conn = boto.s3.connection.S3Connection(host='s3.eu-central-1.amazonaws.com',
|
||||
calling_format=boto.s3.connection.OrdinaryCallingFormat())
|
||||
bucket = conn.get_bucket(buckets[env], validate=False)
|
||||
|
||||
keys = {k.name: k for k in bucket.list()}
|
||||
keys_left = set(keys)
|
||||
|
||||
for root, dirnames, filenames in os.walk(site_path):
|
||||
for dirname in dirnames:
|
||||
target = os.path.relpath(os.path.join(root, dirname), site_path)
|
||||
source = os.path.join(target, 'index.html')
|
||||
|
||||
if os.path.exists(os.path.join(root, dirname, 'index.html')):
|
||||
redirect = '//%s/%s' % (bucket.name, target)
|
||||
key = bucket.lookup(source)
|
||||
if not key:
|
||||
key = bucket.new_key(source)
|
||||
key.set_redirect(redirect)
|
||||
print('setting redirect for %s' % target)
|
||||
elif key.get_redirect() != redirect:
|
||||
key.set_redirect(redirect)
|
||||
print('setting redirect for %s' % target)
|
||||
|
||||
if source in keys_left:
|
||||
keys_left.remove(source)
|
||||
|
||||
for filename in filenames:
|
||||
source = os.path.join(root, filename)
|
||||
|
||||
if filename == 'index.html':
|
||||
target = os.path.normpath(os.path.relpath(root, site_path))
|
||||
if target == '.':
|
||||
target = filename
|
||||
else:
|
||||
target = os.path.normpath(os.path.join(os.path.relpath(root, site_path), filename))
|
||||
if target.endswith('.html'):
|
||||
target = target[:-len('.html')]
|
||||
|
||||
content_type = mimetypes.guess_type(source)[0]
|
||||
cache_control = 'no-transform,public,max-age=300,s-maxage=300'
|
||||
checksum = hashlib.md5(open(source).read()).hexdigest()
|
||||
|
||||
if (target not in keys
|
||||
or keys[target].etag.replace('"', '') != checksum):
|
||||
|
||||
key = bucket.new_key(target)
|
||||
if content_type:
|
||||
key.content_type = content_type
|
||||
key.set_contents_from_filename(source,
|
||||
headers={'Cache-Control': cache_control})
|
||||
print('uploading %s' % target)
|
||||
|
||||
elif content_type:
|
||||
key = bucket.lookup(target)
|
||||
if (key
|
||||
and (key.content_type != content_type
|
||||
or key.cache_control != cache_control)):
|
||||
key.copy(key.bucket, key.name, preserve_acl=True,
|
||||
metadata={'Content-Type': content_type,
|
||||
'Cache-Control': cache_control})
|
||||
print('update headers %s' % target)
|
||||
|
||||
if target in keys_left:
|
||||
keys_left.remove(target)
|
||||
|
||||
for key_name in keys_left:
|
||||
print('deleting %s' % key_name)
|
||||
bucket.delete_key(key_name)
|
85
website/_harp.json
Normal file
|
@ -0,0 +1,85 @@
|
|||
{
|
||||
"globals": {
|
||||
"title": "spaCy.io",
|
||||
"sitename": "spaCy",
|
||||
"slogan": "Industrial-strength Natural Language Processing",
|
||||
"description": "spaCy is a free open-source library featuring state-of-the-art speed and accuracy and a powerful Python API.",
|
||||
"url": "https://spacy.io",
|
||||
"email": "contact@spacy.io",
|
||||
"company": "spaCy GmbH",
|
||||
"team_members": [ "henning", "matt", "wolfgang", "elmar", "ines" ],
|
||||
|
||||
"navigation": { "Docs": "docs", "Demos": "demos", "Team": "team", "Blog": "blog" },
|
||||
"profiles": { "twitter": "spacy_io", "github": "spacy-io", "reddit": "spacynlp", "medium": "spacy" },
|
||||
"google_analytics": "UA-58931649-1",
|
||||
|
||||
"stylesheets": { "default": "style", "blog": "style_blog" },
|
||||
"scripts" : [ "main", "prism" ],
|
||||
"feed": "feed.xml",
|
||||
"image_sizes" : { "small" : "640", "medium": "1440", "large": "2000" },
|
||||
"default_syntax" : "python",
|
||||
|
||||
"spacy_version": "0.100.6",
|
||||
"spacy_stars": "1500",
|
||||
"github_settings": { "user": "spacy-io", "repo": "spacy" },
|
||||
|
||||
"apis": {
|
||||
"displacy": "https://displacy.spacy.io/",
|
||||
"sense2vec": "https://sense2vec.spacy.io/api/similarity/reddit/"
|
||||
},
|
||||
|
||||
"authors" : {
|
||||
"matt" : {
|
||||
"name" : "Matthew Honnibal",
|
||||
"title": "CTO",
|
||||
"description" : "is co-founder and CTO of spaCy. He studied linguistics as an undergrad, and never thought he'd be a programmer. By 2009 he had a PhD in computer science, and in 2014 he left academia to write spaCy. He's from Sydney and lives in Berlin.",
|
||||
"links": {
|
||||
"twitter": [ "https://twitter.com/honnibal", "Twitter" ],
|
||||
"website": [ "https://www.semanticscholar.org/search?q=Matthew%20Honnibal", "Semantic Scholar" ]
|
||||
}
|
||||
},
|
||||
|
||||
"henning": {
|
||||
"name": "Henning Peters",
|
||||
"title": "CEO",
|
||||
"description": "is co-founder and CEO of spaCy. He holds a MSc in computer science and has been co-founder and CTO of Skoobe and Absolventa. His passions are uncommon languages and backcountry skiing.",
|
||||
"links": {
|
||||
"twitter": [ "https://twitter.com/henningpeters", "Twitter"],
|
||||
"linkedin": [ "https://de.linkedin.com/in/hepeters", "LinkedIn"],
|
||||
"github": [ "https://github.com/henningpeters", "GitHub"]
|
||||
}
|
||||
},
|
||||
|
||||
"ines": {
|
||||
"name": "Ines Montani",
|
||||
"title": "Front-End",
|
||||
"description": "As Head of Front-End, Ines is in charge of showing people what spaCy can do. She develops, designs and implements our interactive demos and the spacy.io website. Ines has a degree in media, linguistics and communications, and over ten years experience in web development.",
|
||||
"links": {
|
||||
"twitter": [ "https://twitter.com/_inesmontani", "Twitter" ],
|
||||
"codepen": [ "https://codepen.io/inesmontani", "Codepen"],
|
||||
"github": [ "https://github.com/inesmontani", "GitHub"],
|
||||
"website": [ "http://ines.io", "Blog" ]
|
||||
}
|
||||
},
|
||||
|
||||
"wolfgang": {
|
||||
"name": "Wolfgang Seeker",
|
||||
"title": "NLP Engineer",
|
||||
"description": "is a computational linguist from Germany. He is fascinated with the complexity and variety of human language, and spent his PhD looking for ways to make NLP work well with any kind of language in the world. He joined spaCy to build effective and truly multilingual NLP software.",
|
||||
"links": {
|
||||
"website": [ "https://www.semanticscholar.org/search?q=Wolfgang%20Seeker", "Semantic Scholar" ]
|
||||
}
|
||||
},
|
||||
|
||||
"elmar": {
|
||||
"name": "Elmar Haußmann",
|
||||
"title": "NLP Engineer",
|
||||
"description": "is an NLP engineer at spaCy, passionate about deep learning. He has a background in both, academic research, with a PhD in computer science, and industry, as a former consultant and software engineer at IBM. Originally from Stuttgart, the avid snowboarder and mountain biker doesn't only ride powder and trails but also covers distances via plane between the spaCy office in Berlin and his new home in Beijing.",
|
||||
"links": {
|
||||
"github": [ "https://github.com/elmar-haussmann", "GitHub"],
|
||||
"twitter": [ "https://twitter.com/elhaussmann", "Twitter" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
7
website/_includes/_analytics.jade
Normal file
|
@ -0,0 +1,7 @@
|
|||
if environment != 'development'
|
||||
script.
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
ga('create', '#{google_analytics}', 'auto'); ga('send', 'pageview');
|
34
website/_includes/_article.jade
Normal file
|
@ -0,0 +1,34 @@
|
|||
include ../_includes/_mixins
|
||||
|
||||
//- Article
|
||||
//- ============================================================================
|
||||
|
||||
article.article(id=current.source)
|
||||
|
||||
header.article-header
|
||||
+h2.article-title=title
|
||||
.article-meta
|
||||
if author
|
||||
| by #[a.link(href=(authors[author].url || url) target='_blank')=authors[author].name] on
|
||||
| #[+date(date)]
|
||||
|
||||
.article-body!=yield
|
||||
|
||||
footer.article-footer
|
||||
|
||||
+grid('padding', 'align-right', 'valign-center')
|
||||
+tweet(title)
|
||||
|
||||
if links
|
||||
for link, index in links
|
||||
div: +button('primary', 'small', index.toLowerCase())(href=link target='_blank')
|
||||
+icon(index.toLowerCase(), 'medium', 'secondary')
|
||||
| Discussion on #{index}
|
||||
|
||||
if author
|
||||
+divider
|
||||
|
||||
!=partial('_profile', { label: 'About the Author', style: 'alt' })
|
||||
|
||||
!=partial('_newsletter', { divider: 'both' })
|
||||
!=partial('_latest-posts', { max: 2, _section: _section } )
|
14
website/_includes/_footer.jade
Normal file
|
@ -0,0 +1,14 @@
|
|||
include _mixins
|
||||
|
||||
//- Footer
|
||||
//- ============================================================================
|
||||
|
||||
footer.footer
|
||||
span © #{new Date().getFullYear()} #{company}
|
||||
a(href='/legal') Legal / Imprint
|
||||
|
||||
a(href='https://twitter.com/' + profiles.twitter target='_blank' aria-label="Twitter")
|
||||
+icon('twitter', 'secondary')
|
||||
|
||||
a(href='/feed.xml' target='_blank' aria-label="RSS Feed")
|
||||
+icon('feed', 'secondary')
|
101
website/_includes/_functions.jade
Normal file
|
@ -0,0 +1,101 @@
|
|||
//- Functions
|
||||
//- ============================================================================
|
||||
|
||||
//- Full page title
|
||||
|
||||
- function getPageTitle() {
|
||||
- if(current.path[0] == 'blog' && current.source != 'index') title += ' | Blog';
|
||||
- return (current.path[0] == 'index') ? sitename + ' | ' + slogan : title + ' | ' + sitename;
|
||||
- }
|
||||
|
||||
|
||||
//- Get current URL
|
||||
current - [string] current path
|
||||
|
||||
- function getCurrentUrl() {
|
||||
- var base = current.path;
|
||||
- if(current.source == 'index') base.pop();
|
||||
- return url + '/' + base.join('/');
|
||||
- }
|
||||
|
||||
|
||||
//- Assign flexbox order, elements are assigned negative values to always move
|
||||
them to the start of a flexbox in the correct order (i.e. -3, -2, -1)
|
||||
counter - [integer] index of current item
|
||||
max - [integer] amount of items in total
|
||||
start - [integer] index of start position, i.e. 0 -> oder: -1 (optional)
|
||||
|
||||
- function assignOrder(counter, max, start) {
|
||||
- if(counter >= 0 && counter < max) return "order: -" + (max - counter + (start || 0));
|
||||
- }
|
||||
|
||||
|
||||
//- Create Twitter share URL
|
||||
current - [string] current path
|
||||
tweet - [string] text to be shared with link
|
||||
|
||||
- function twitterShareUrl(current, tweet) {
|
||||
- return "https://twitter.com/share?text=" + tweet + "&url=" + getCurrentUrl(current) + ";via=" + profiles.twitter;
|
||||
- }
|
||||
|
||||
|
||||
//- Add prefix to each item in an array (used for modifier CSS classes)
|
||||
array - [array] array of strings, taken from mixin arguments
|
||||
prefix - [string] class prefix (i.e. 'button--')
|
||||
|
||||
- function prefixArgs(array, prefix) {
|
||||
- for(var i = 0; i < array.length; i++) {
|
||||
- array[i] = prefix + array[i];
|
||||
- }
|
||||
- return array.join(' ');
|
||||
- }
|
||||
|
||||
|
||||
//- Convert date to human readable and timestamp format
|
||||
input - [string] date in the format YYYY-MM-DD
|
||||
|
||||
- function convertDate(input) {
|
||||
- var dates = [];
|
||||
- var months = [ 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' ];
|
||||
- var date = new Date(input);
|
||||
- dates.full = months[date.getMonth()] + ' ' + date.getDate() + ', ' + date.getFullYear();
|
||||
- dates.timestamp = JSON.parse(JSON.stringify(date));
|
||||
- return dates;
|
||||
- }
|
||||
|
||||
|
||||
//- Convert date to valid RSS pubDate
|
||||
input - [string] date in the format YYYY-MM-DD
|
||||
|
||||
- function convertPubDate(input) {
|
||||
- var date = new Date(input);
|
||||
- var pieces = date.toString().split(' ');
|
||||
- var offsetTime = pieces[5].match(/[-+]\d{4}/);
|
||||
- var offset = (offsetTime) ? offsetTime : pieces[5];
|
||||
- var parts = [ pieces[0] + ',', pieces[2], pieces[1], pieces[3], pieces[4], offset ];
|
||||
- return parts.join(' ');
|
||||
- }
|
||||
|
||||
|
||||
//- Compile scrset attribute for hero images
|
||||
image - [object] article image object from _data.json
|
||||
path - [string] relative path to image folder
|
||||
|
||||
- function getScrset(image, path) {
|
||||
- var scrset = path + image.file + ' ' + image_sizes.medium + 'w';
|
||||
- if(image.file_small) scrset += ', ' + path + image.file_small + ' ' + image_sizes.small + 'w';
|
||||
- if(image.file_large) scrset += ', ' + path + image.file_large + ' ' + image_sizes.large + 'w';
|
||||
- return scrset;
|
||||
- }
|
||||
|
||||
|
||||
//- Get meta image
|
||||
|
||||
- function getMetaImage() {
|
||||
- if(current.path[0] == 'blog' && image && image.file) {
|
||||
- return url + '/blog/img/' + image.file;
|
||||
- }
|
||||
- else {
|
||||
- return url + '/assets/img/social.png';
|
||||
- }
|
||||
- }
|
31
website/_includes/_head.jade
Normal file
|
@ -0,0 +1,31 @@
|
|||
include _mixins
|
||||
|
||||
- var is_blog = (_section == 'blog')
|
||||
|
||||
|
||||
//- Head
|
||||
//- ============================================================================
|
||||
|
||||
head
|
||||
title=getPageTitle()
|
||||
|
||||
meta(charset='utf-8')
|
||||
meta(name="viewport" content="width=device-width, initial-scale=1.0")
|
||||
meta(name='referrer' content='always')
|
||||
|
||||
meta(property='og:type' content='website')
|
||||
meta(property='og:site_name' content=sitename)
|
||||
meta(property='og:url' content=getCurrentUrl())
|
||||
meta(property='og:title' content=title)
|
||||
meta(property='og:description' content=description)
|
||||
meta(property='og:image' content=getMetaImage())
|
||||
|
||||
meta(name='twitter:card' content='summary_large_image')
|
||||
meta(name='twitter:site' content='@' + profiles.twitter)
|
||||
meta(name='twitter:title' content=title)
|
||||
meta(name='twitter:description' content=description)
|
||||
meta(name='twitter:image' content=getMetaImage())
|
||||
|
||||
link(rel='icon' type='image/x-icon' href='/assets/img/favicon.ico')
|
||||
link(href='/assets/css/' + ((is_blog) ? stylesheets.blog : stylesheets.default) + '.css' rel='stylesheet')
|
||||
link(href='/' + feed rel='alternate' type='application/rss+xml' title='RSS')
|
21
website/_includes/_header.jade
Normal file
|
@ -0,0 +1,21 @@
|
|||
include _mixins
|
||||
|
||||
//- Header
|
||||
//- ============================================================================
|
||||
|
||||
header.header(class=(image) ? 'hero' : '')
|
||||
|
||||
if image
|
||||
img(srcset=getScrset(image, 'img/') alt=image.alt sizes='100vw')
|
||||
|
||||
if image.credit
|
||||
.hero-credit
|
||||
if image.url
|
||||
a(href=image.url target='_blank')=image.credit
|
||||
|
||||
else
|
||||
!=image.credit
|
||||
|
||||
else
|
||||
if !is_article && headline != false
|
||||
h1.header-title=title
|
17
website/_includes/_latest-posts.jade
Normal file
|
@ -0,0 +1,17 @@
|
|||
include _mixins
|
||||
|
||||
- var post_counter = 0
|
||||
- var is_docs = (_section == 'docs')
|
||||
|
||||
|
||||
//- Latest Posts
|
||||
//- ============================================================================
|
||||
|
||||
+grid('padding')
|
||||
each post, slug in ( (_section == 'docs' ) ? public.docs.tutorials._data : public.blog._data)
|
||||
if slug != 'index' && slug != current.source && post_counter < (max || 3)
|
||||
|
||||
+grid-col('space-between', ((max > 2 && max % 3 == 0) ? 'third' : 'half'))
|
||||
!=partial('_teaser', { teaser: post, slug: slug, _root: (is_docs) ? '/docs/tutorials/' : '/blog/' })
|
||||
|
||||
- post_counter++
|
5
website/_includes/_logo.jade
Normal file
|
@ -0,0 +1,5 @@
|
|||
//- Logo
|
||||
//- ============================================================================
|
||||
|
||||
svg.logo(class=(logo_size) ? 'logo--' + logo_size : '' viewBox='0 0 675 215' width='500')
|
||||
path(d='M83.6 83.3C68.3 81.5 67.2 61 47.5 62.8c-9.5 0-18.4 4-18.4 12.7 0 13.2 20.3 14.4 32.5 17.7 20.9 6.3 41 10.7 41 33.3 0 28.8-22.6 38.8-52.4 38.8-24.9 0-50.2-8.9-50.2-31.8 0-6.4 6.1-11.3 12-11.3 7.5 0 10.1 3.2 12.7 8.4 5.8 10.2 12.3 15.6 28.3 15.6 10.2 0 20.6-3.9 20.6-12.7 0-12.6-12.8-15.3-26.1-18.4-23.5-6.6-43.6-10-46-36.1C-1 34.5 91.7 32.9 97 71.9c.1 7.1-6.5 11.4-13.4 11.4zm110.2-39c32.5 0 51 27.2 51 60.8 0 33.7-17.9 60.8-51 60.8-18.4 0-29.8-7.8-38.1-19.8v44.5c0 13.4-4.3 19.8-14.1 19.8-11.9 0-14.1-7.6-14.1-19.8V61.3c0-10.6 4.4-17 14.1-17 9.1 0 14.1 7.2 14.1 17v3.6c9.2-11.6 19.7-20.6 38.1-20.6zm-7.7 98.4c19.1 0 27.6-17.6 27.6-38.1 0-20.1-8.6-38.1-27.6-38.1-19.8 0-29 16.3-29 38.1 0 21.2 9.2 38.1 29 38.1zM266.9 76c0-23.4 26.9-31.7 52.9-31.7 36.6 0 51.7 10.7 51.7 46v34c0 8.1 5 24.1 5 29 0 7.4-6.8 12-14.1 12-8.1 0-14.1-9.5-18.4-16.3-11.9 9.5-24.5 16.3-43.8 16.3-21.3 0-38.1-12.6-38.1-33.3 0-18.4 13.2-28.9 29-32.5 0 .1 51-12 51-12.1 0-15.7-5.5-22.6-22-22.6-14.5 0-21.9 4-27.5 12.7-4.5 6.6-4 10.6-12.7 10.6-6.9-.1-13-4.9-13-12.1zm43.6 70.2c22.3 0 31.8-11.8 31.8-35.3v-5c-6 2-30.3 8-36.8 9.1-7 1.4-14.1 6.6-14.1 14.9.1 9.1 9.4 16.3 19.1 16.3zM474.5 0c31.5 0 65.7 18.8 65.7 48.8 0 7.7-5.8 14.1-13.4 14.1-10.3 0-11.8-5.5-16.3-13.4-7.6-13.9-16.5-23.3-36.1-23.3-30.2-.2-43.7 25.6-43.7 57.8 0 32.4 11.2 55.8 42.4 55.8 20.7 0 32.2-12 38.1-27.6 2.4-7.1 6.7-14.1 15.6-14.1 7 0 14.1 7.2 14.1 14.8 0 31.8-32.4 53.8-65.8 53.8-36.5 0-57.2-15.4-68.5-41-5.5-12.2-9.1-24.9-9.1-42.4-.1-49.2 28.6-83.3 77-83.3zm180.3 44.3c8 0 12.7 5.2 12.7 13.4 0 3.3-2.6 9.9-3.6 13.4L625.1 173c-8.6 22.1-15.1 37.4-44.5 37.4-14 0-26.1-1.2-26.1-13.4 0-7 5.3-10.6 12.7-10.6 1.4 0 3.6.7 5 .7 2.1 0 3.6.7 5 .7 14.7 0 16.8-15.1 22-25.5l-37.4-92.6c-2.1-5-3.6-8.4-3.6-11.3 0-8.2 6.4-14.1 14.8-14.1 9.5 0 13.3 7.5 15.6 15.6l24.7 73.5L638 65.5c3.9-10.5 4.2-21.2 16.8-21.2z')
|
381
website/_includes/_mixins.jade
Normal file
|
@ -0,0 +1,381 @@
|
|||
include _functions
|
||||
|
||||
//- Mixins
|
||||
//- ============================================================================
|
||||
|
||||
//- Sections for content pages
|
||||
id - [string] id, can be headline id as it's being prefixed (optional)
|
||||
block - section content (block and inline elements)
|
||||
|
||||
mixin section(id)
|
||||
section.section(id=(id) ? 'section-' + id : '')&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Flexbox grid to align children elements
|
||||
...style - [strings] flexbox CSS classes without prefix (optional)
|
||||
block - container content (block and inline elements)
|
||||
|
||||
mixin grid(...style)
|
||||
.grid(class=prefixArgs(style, 'grid--'))&attributes(attributes)
|
||||
block
|
||||
|
||||
mixin grid-col(...style)
|
||||
.grid-col(class=prefixArgs(style, 'grid-col--'))&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Aside
|
||||
headline - [string] Headline of aside (optional)
|
||||
block - aside content (inline elements)
|
||||
|
||||
mixin aside(headline)
|
||||
span.aside(data-label=headline)&attributes(attributes)
|
||||
span.aside-body
|
||||
block
|
||||
|
||||
|
||||
//- Paragraphs
|
||||
block - paragraph content (inline elements)
|
||||
|
||||
mixin lead
|
||||
p.text-lead&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Various text styles
|
||||
block - text (inline elements)
|
||||
|
||||
mixin example
|
||||
p.text-example&attributes(attributes)
|
||||
block
|
||||
|
||||
mixin source
|
||||
span.text-source&attributes(attributes)
|
||||
block
|
||||
|
||||
mixin label(...style)
|
||||
span(class=(style != '') ? prefixArgs(style, 'label-') : 'label')&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Headings with optional permalinks
|
||||
id - [string] unique id (optional, no permalink without id)
|
||||
source - [string] link for source button (optional)
|
||||
block - headline text (inline elements)
|
||||
|
||||
mixin headline(level, id, source)
|
||||
if level == 2
|
||||
+h2(id, source)
|
||||
block
|
||||
|
||||
else if level == 3
|
||||
+h3(id, source)
|
||||
block
|
||||
|
||||
else if level == 4
|
||||
+h4(id, source)
|
||||
block
|
||||
|
||||
else if level == 5
|
||||
+h5(id, source)
|
||||
block
|
||||
|
||||
else
|
||||
+h6(id, source)
|
||||
block
|
||||
|
||||
mixin h1(id, source)
|
||||
h1(id=id)&attributes(attributes)
|
||||
+permalink(id, source)
|
||||
block
|
||||
|
||||
mixin h2(id, source)
|
||||
h2(id=id)&attributes(attributes)
|
||||
+permalink(id, source)
|
||||
block
|
||||
|
||||
mixin h3(id, source)
|
||||
h3(id=id)&attributes(attributes)
|
||||
+permalink(id, source)
|
||||
block
|
||||
|
||||
mixin h4(id, source)
|
||||
h4(id=id)&attributes(attributes)
|
||||
+permalink(id, source)
|
||||
block
|
||||
|
||||
mixin h5(id, source)
|
||||
h5(id=id)&attributes(attributes)
|
||||
+permalink(id, source)
|
||||
block
|
||||
|
||||
mixin h6(id, source)
|
||||
h6(id=id)&attributes(attributes)
|
||||
+permalink(id, source)
|
||||
block
|
||||
|
||||
mixin permalink(id, source)
|
||||
if id
|
||||
a.permalink(href='#' + id)
|
||||
block
|
||||
|
||||
else
|
||||
block
|
||||
|
||||
if source
|
||||
+button('secondary', 'small', 'source')(href=source target='_blank') Source
|
||||
|
||||
|
||||
//- Button
|
||||
element - [string] specifies HTML element, 'button' or 'link'
|
||||
...style - [strings] button CSS classes without prefix (optional)
|
||||
block - button text (inline elements)
|
||||
|
||||
mixin button(type, ...style)
|
||||
- var classname = 'button-' + type + ' ' + ((style) ? prefixArgs(style, 'button--') : '')
|
||||
|
||||
a.button(class=classname)&attributes(attributes)
|
||||
block
|
||||
|
||||
mixin form-button(type, ...style)
|
||||
- var classname = 'button-' + type + ' ' + ((style) ? prefixArgs(style, 'button--') : '')
|
||||
button(class=classname)&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Input
|
||||
placeholder - [string] placeholder for input field (optional)
|
||||
value - [string] value of input field (optional)
|
||||
|
||||
mixin input(placeholder, value)
|
||||
input.input(placeholder=placeholder value=value)&attributes(attributes)
|
||||
|
||||
|
||||
//- Icon
|
||||
name - [string] icon name, refers to CSS classes
|
||||
size - [string] 'medium' or 'large' (optional)
|
||||
type - [string] 'button' (optional)
|
||||
block - description, if as a text node to the icon element it prevents line
|
||||
breaks between icon and text (inline elements)
|
||||
|
||||
mixin icon(type, ...style)
|
||||
span(class='icon-' + type + ' ' + prefixArgs(style, 'icon--') aria-hidden="true")&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Image for illustration purposes
|
||||
file - [string] file name (in /img)
|
||||
alt - [string] descriptive alt text (optional)
|
||||
caption - [string] image caption (optional)
|
||||
|
||||
mixin image(file, alt, caption)
|
||||
figure.image-container&attributes(attributes)
|
||||
img(src='img/' + file alt=alt)
|
||||
|
||||
if caption
|
||||
figcaption.text-caption=caption
|
||||
|
||||
block
|
||||
|
||||
|
||||
//- Illustrated code view
|
||||
title - [string] title of window
|
||||
|
||||
mixin code-demo(title)
|
||||
.x-terminal&attributes(attributes)
|
||||
.x-terminal-icons: span
|
||||
.x-terminal-title=title
|
||||
+code.x-terminal-code
|
||||
block
|
||||
|
||||
|
||||
//- Data table
|
||||
head - [array] column headings (optional, without headings no table
|
||||
head is displayed)
|
||||
...style - [strings] table CSS classes without prefix (optional)
|
||||
block - only +row (tr)
|
||||
|
||||
mixin table(head, ...style)
|
||||
table.table(class=prefixArgs(style, 'table--'))&attributes(attributes)
|
||||
|
||||
if head
|
||||
tr.table-row
|
||||
each column in head
|
||||
th.table-head-cell=column
|
||||
|
||||
block
|
||||
|
||||
|
||||
//- Data table row
|
||||
block - only +cell (td)
|
||||
|
||||
mixin row(...style)
|
||||
tr.table-row(class=prefixArgs(style, 'table-cell--'))&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Data table cell
|
||||
block - table cell content (inline elements)
|
||||
|
||||
mixin cell(...style)
|
||||
td.table-cell(class=prefixArgs(style, 'table-cell--'))&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- General list (ordered and unordered)
|
||||
type - [string] 'numbers', 'letters', 'roman' (optional)
|
||||
start - [integer] starting point of list (1 = list starts at 1 or A)
|
||||
block - only +item (li)
|
||||
|
||||
mixin list(type, start)
|
||||
if type
|
||||
ol.list(class='list--' + type style=(start === 0 || start) ? 'counter-reset: li ' + (start - 1) : '')&attributes(attributes)
|
||||
block
|
||||
|
||||
else
|
||||
ul.list.list--bullets&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- List item
|
||||
block - item text (inline elements)
|
||||
|
||||
mixin item
|
||||
li.list-item&attributes(attributes)
|
||||
block
|
||||
|
||||
|
||||
//- Blockquote
|
||||
source - [string] quote source / author (optional)
|
||||
link - [string] link to quote source (only with source, optional)
|
||||
block - quote text (inline elements)
|
||||
|
||||
mixin quote(source, link)
|
||||
blockquote.quote&attributes(attributes)
|
||||
p.quote-text
|
||||
block
|
||||
|
||||
if source && link
|
||||
| #[a.quote-source(href=link target='_blank')=source]
|
||||
|
||||
else if source && !link
|
||||
.quote-source !{source}
|
||||
|
||||
|
||||
//- Pullquotes with optional 'tweet this' function
|
||||
tweet - [string] text to be tweeted (optional)
|
||||
block - pullquote text (inline elements, only shown if no tweet text)
|
||||
|
||||
mixin pullquote(tweet)
|
||||
blockquote.quote&attributes(attributes)
|
||||
|
||||
p.quote-text-strong
|
||||
if tweet
|
||||
| !{tweet} #[a.quote-source(href=twitterShareUrl(current.path, tweet) target='_blank') Tweet this]
|
||||
|
||||
else
|
||||
block
|
||||
|
||||
|
||||
//- Code block
|
||||
use as +code(args). to preserve whitespace and prevent code interprettion
|
||||
language - [string] language for syntax highlighting (optional, default:
|
||||
'python', see Prism for options: http://prismjs.com)
|
||||
label - [string] code block headline (optional)
|
||||
block - code text (inline elements)
|
||||
|
||||
|
||||
mixin code(language, label)
|
||||
pre.code-block(class='lang-' + (language || default_syntax) data-label=label)&attributes(attributes)
|
||||
code.code-inline
|
||||
block
|
||||
|
||||
|
||||
//- Infobox for notes and alerts
|
||||
label - [string] infobox headline (optional)
|
||||
block - infobox text (inline and block elements)
|
||||
|
||||
mixin infobox(label)
|
||||
.box.box--info(data-label=label)&attributes(attributes)
|
||||
p.box-body
|
||||
block
|
||||
|
||||
|
||||
//- Alerts for notes and updates
|
||||
|
||||
mixin alert(button)
|
||||
.alert&attributes(attributes)
|
||||
block
|
||||
|
||||
if button
|
||||
+form-button('primary', 'small')(onclick='this.parentNode.parentNode.removeChild(this.parentNode);')=button
|
||||
|
||||
else
|
||||
button.alert-close(onclick='this.parentNode.parentNode.removeChild(this.parentNode);')
|
||||
|
||||
|
||||
|
||||
//- Embeds
|
||||
border - [boolean] add border to embed container
|
||||
caption - [string] embed caption
|
||||
block - embed content (inline and block elements)
|
||||
|
||||
mixin embed(border, caption)
|
||||
figure.embed(class=(border) ? 'embed--border' : '')&attributes(attributes)
|
||||
block
|
||||
|
||||
if caption
|
||||
figcaption.embed-caption=caption
|
||||
|
||||
|
||||
//- displaCy
|
||||
filename - [string] name of file in displacy folder (no .html)
|
||||
caption - [string] caption (optional)
|
||||
height - [integer] iframe height in px (optional)
|
||||
|
||||
mixin displacy(filename, caption, height)
|
||||
+embed(true, caption).embed--displacy
|
||||
iframe(src='/blog/displacy/' + filename height=height)
|
||||
|
||||
|
||||
//- Logo, imports SVG
|
||||
size - [string] 'tiny', 'small', 'regular' or 'large'
|
||||
|
||||
mixin logo(size)
|
||||
!=partial('/_includes/_logo', { logo_size: size })
|
||||
|
||||
|
||||
//- <time> element with date
|
||||
input - [string] date in the format YYYY-MM-DD
|
||||
type - [string] 'timestamp' (optional)
|
||||
|
||||
mixin date(input, type)
|
||||
- var dates = convertDate(input)
|
||||
|
||||
if type == 'timestamp'
|
||||
time=dates.timestamp
|
||||
|
||||
else
|
||||
time(datetime=dates.timestamp)=dates.full
|
||||
|
||||
|
||||
//- Divider
|
||||
type - [string] divider tpe
|
||||
|
||||
mixin divider(type, ...style)
|
||||
div(class=((type) ? 'divider-' + type : 'divider') + ' ' + prefixArgs(style, 'divider--'))&attributes(attributes)
|
||||
if type == 'text'
|
||||
.divider-text-content
|
||||
block
|
||||
|
||||
else
|
||||
block
|
||||
|
||||
|
||||
//- Twitter Share Button
|
||||
tweet - [string] text to be shared with the tweet
|
||||
|
||||
mixin tweet(tweet)
|
||||
a(href=twitterShareUrl(current.path, tweet) target='_blank' aria-label="Shsre on Twitter")
|
||||
+icon('twitter', 'large')
|
32
website/_includes/_nav.jade
Normal file
|
@ -0,0 +1,32 @@
|
|||
include _mixins
|
||||
|
||||
- var nav_active_class = 'nav-item--active'
|
||||
|
||||
|
||||
//- Top Navigation Bar
|
||||
//- ============================================================================
|
||||
|
||||
nav#topnav.nav
|
||||
|
||||
a(href='/')
|
||||
!=partial('_logo', { logo_size: 'small' })
|
||||
|
||||
input(type='checkbox' class='nav-checkbox' id='nav-checkbox' aria-hidden='true')
|
||||
|
||||
ul.nav-menu
|
||||
|
||||
if standalone
|
||||
li.nav-item(class=nav_active_class)=title
|
||||
li.nav-item: a(href='/') Back to website
|
||||
|
||||
else
|
||||
li.nav-item(class=(_section == 'index') ? nav_active_class : '')
|
||||
a(href='/') Home
|
||||
|
||||
each slug, item in navigation
|
||||
li.nav-item(class=(_section == slug) ? nav_active_class : '')
|
||||
a(href='/' + slug)=item
|
||||
|
||||
li.nav-item: a(href='https://github.com/' + profiles.github target='_blank') GitHub
|
||||
|
||||
label(for='nav-checkbox' class='nav-button' arial-label='Toggle Navigation')
|
21
website/_includes/_newsletter.jade
Normal file
|
@ -0,0 +1,21 @@
|
|||
include _mixins
|
||||
|
||||
//- Newsletter Signup
|
||||
//- ============================================================================
|
||||
|
||||
.block.text-center(class=(divider) ? 'divider-' + divider : '')
|
||||
|
||||
+label('strong') Sign up for the spaCy newsletter
|
||||
+h3.h1 Stay in the loop!
|
||||
+lead Receive updates about new releases, tutorials and more.
|
||||
|
||||
form(action='https://spacy.us12.list-manage.com/subscribe/post?u=83b0498b1e7fa3c91ce68c3f1&id=89ad33e698' method='post' id='mc-embedded-subscribe-form' name='mc-embedded-subscribe-form' target="_blank" novalidate)
|
||||
|
||||
+grid('align-center', 'valign-center', 'margin-right')
|
||||
+input('Your email address', '')(type='email' name='EMAIL' id='mce-EMAIL')
|
||||
|
||||
//- Spam bot protection
|
||||
div(style='position: absolute; left: -5000px;' aria-hidden='true')
|
||||
input(type='text' name='b_83b0498b1e7fa3c91ce68c3f1_89ad33e698' tabindex='-1' value='')
|
||||
|
||||
+form-button('primary', 'small')(type='submit' name='subscribe' id='mc-embedded-subscribe') Sign up
|
21
website/_includes/_profile.jade
Normal file
|
@ -0,0 +1,21 @@
|
|||
//- Author profile
|
||||
//- ============================================================================
|
||||
|
||||
include _mixins
|
||||
|
||||
if authors[author]
|
||||
.box.box--info(data-label=label)
|
||||
if image != false
|
||||
.box-image: img(src='/assets/img/profile_' + author + ( (style) ? '_' + style : '' ) + '.png')
|
||||
|
||||
p.box-body.text-big
|
||||
if authors[author].name
|
||||
strong=authors[author].name + ' '
|
||||
|
||||
if authors[author].description
|
||||
!=authors[author].description
|
||||
|
||||
if authors[author].links
|
||||
span.box-links
|
||||
each link, index in authors[author].links
|
||||
a(href=link[0] target='_blank') #[+icon(index)=(link[1] || index)]
|
12
website/_includes/_sidebar.jade
Normal file
|
@ -0,0 +1,12 @@
|
|||
include _mixins
|
||||
|
||||
//- Sidebar
|
||||
//- ============================================================================
|
||||
|
||||
nav#sidebar.sidebar: .sidebar-body
|
||||
each items, menu in sidebar
|
||||
|
||||
ul.sidebar-menu(data-label=menu)
|
||||
each item in items
|
||||
li.sidebar-menu-item
|
||||
a(href=item[1] data-section=(item[2]) ? 'section-' + item[2] : null)=item[0]
|
22
website/_includes/_teaser.jade
Normal file
|
@ -0,0 +1,22 @@
|
|||
include _mixins
|
||||
|
||||
//- Teaser
|
||||
//- ============================================================================
|
||||
|
||||
.teaser
|
||||
if teaser.image
|
||||
a(href=(_root || '') + slug target=teaser.target)
|
||||
.image-ratio: img(src=(_root || '') + 'img/' + ((is_featured) ? teaser.image.file : teaser.image.file_small || teaser.image.file))
|
||||
|
||||
+h2
|
||||
if is_featured
|
||||
div: .label-strong Featured
|
||||
|
||||
a.block(href=(_root || '') + slug target=teaser.target class=(is_featured) ? 'h1' : 'h2')=teaser.title
|
||||
|
||||
p(class=(is_featured) ? 'text-lead' : '')=teaser.description
|
||||
|
||||
if showmeta != false
|
||||
.text-meta.text-small
|
||||
//- | by #{authors[teaser.author].name} on
|
||||
| #[+date(teaser.date)]
|
43
website/_layout.jade
Normal file
|
@ -0,0 +1,43 @@
|
|||
include _includes/_mixins
|
||||
|
||||
- var _section = current.path[0]
|
||||
- var _site = current.source
|
||||
|
||||
- var is_article = ( (_section == 'blog' && _site != 'index') || template == 'article')
|
||||
- var has_asides = (is_article || (_section == 'docs' && asides != false) || asides)
|
||||
|
||||
|
||||
//- Layout
|
||||
//- ============================================================================
|
||||
|
||||
doctype html
|
||||
|
||||
html(lang="en")
|
||||
!=partial("_includes/_head", { _section: _section })
|
||||
|
||||
body.body
|
||||
!=partial('_includes/_nav', { _section: _section, _site: _site })
|
||||
|
||||
if landing
|
||||
!= yield
|
||||
|
||||
else
|
||||
!=partial('_includes/_header', { is_article: is_article })
|
||||
|
||||
if sidebar
|
||||
!=partial('_includes/_sidebar')
|
||||
|
||||
main.main(class='#{(sidebar) ? "main--sidebar" : "" } #{(has_asides) ? "main--asides" : "" } #{(is_article) ? "main--article" : "" }')
|
||||
|
||||
if is_article
|
||||
!=partial('_includes/_article', { _section: _section })
|
||||
|
||||
else
|
||||
!=yield
|
||||
|
||||
!=partial('_includes/_footer')
|
||||
|
||||
each script in scripts
|
||||
script(src='/assets/js/' + script + '.js', type='text/javascript')
|
||||
|
||||
!=partial('_includes/_analytics')
|
23
website/assets/css/_base/_animations.sass
Normal file
|
@ -0,0 +1,23 @@
|
|||
// Animations
|
||||
// ============================================================================
|
||||
|
||||
// Element slides in from the top
|
||||
|
||||
@keyframes slideInDown
|
||||
from
|
||||
transform: translate3d(0, -100%, 0);
|
||||
visibility: visible;
|
||||
|
||||
to
|
||||
transform: translate3d(0, 0, 0);
|
||||
|
||||
|
||||
// Element blinks
|
||||
|
||||
@keyframes blink
|
||||
0%
|
||||
opacity: 1
|
||||
50%
|
||||
opacity: 0
|
||||
100%
|
||||
opacity: 1
|
112
website/assets/css/_base/_fonts.sass
Normal file
|
@ -0,0 +1,112 @@
|
|||
// Fonts
|
||||
// ============================================================================
|
||||
|
||||
// Lato (regular, italic, bold, bold italic)
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: normal
|
||||
font-weight: 400
|
||||
src: url('../fonts/lato-regular.eot')
|
||||
src: url('../fonts/lato-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-regular.woff2') format('woff2'), url('../fonts/lato-regular.woff') format('woff'), url('../fonts/lato-regular.ttf') format('truetype'), url('../fonts/lato-regular.svg#latoregular') format('svg')
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: normal
|
||||
font-weight: 400
|
||||
src: url('../fonts/lato-regular.eot')
|
||||
src: url('../fonts/lato-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-regular.woff2') format('woff2'), url('../fonts/lato-regular.woff') format('woff'), url('../fonts/lato-regular.ttf') format('truetype'), url('../fonts/lato-regular.svg#latoregular') format('svg')
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: italic
|
||||
font-weight: 400
|
||||
src: url('../fonts/lato-italic.eot')
|
||||
src: url('../fonts/lato-italic.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-italic.woff2') format('woff2'), url('../fonts/lato-italic.woff') format('woff'), url('../fonts/lato-italic.ttf') format('truetype'), url('../fonts/lato-italic.svg#latoitalic') format('svg')
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: italic
|
||||
font-weight: 400
|
||||
src: url('../fonts/lato-italic.eot')
|
||||
src: url('../fonts/lato-italic.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-italic.woff2') format('woff2'), url('../fonts/lato-italic.woff') format('woff'), url('../fonts/lato-italic.ttf') format('truetype'), url('../fonts/lato-italic.svg#latoitalic') format('svg')
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: normal
|
||||
font-weight: 700
|
||||
src: url('../fonts/lato-bold.eot')
|
||||
src: url('../fonts/lato-bold.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-bold.woff2') format('woff2'), url('../fonts/lato-bold.woff') format('woff'), url('../fonts/lato-bold.ttf') format('truetype'), url('../fonts/lato-bold.svg#latobold') format('svg')
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: normal
|
||||
font-weight: 700
|
||||
src: url('../fonts/lato-bold.eot')
|
||||
src: url('../fonts/lato-bold.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-bold.woff2') format('woff2'), url('../fonts/lato-bold.woff') format('woff'), url('../fonts/lato-bold.ttf') format('truetype'), url('../fonts/lato-bold.svg#latobold') format('svg')
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: italic
|
||||
font-weight: 700
|
||||
src: url('../fonts/lato-bolditalic.eot')
|
||||
src: url('../fonts/lato-bolditalic.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-bolditalic.woff2') format('woff2'), url('../fonts/lato-bolditalic.woff') format('woff'), url('../fonts/lato-bolditalic.ttf') format('truetype'), url('../fonts/lato-bolditalic.svg#latobolditalic') format('svg')
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF
|
||||
|
||||
@font-face
|
||||
font-family: 'Lato'
|
||||
font-style: italic
|
||||
font-weight: 700
|
||||
src: url('../fonts/lato-bolditalic.eot')
|
||||
src: url('../fonts/lato-bolditalic.eot?#iefix') format('embedded-opentype'), url('../fonts/lato-bolditalic.woff2') format('woff2'), url('../fonts/lato-bolditalic.woff') format('woff'), url('../fonts/lato-bolditalic.ttf') format('truetype'), url('../fonts/lato-bolditalic.svg#latobolditalic') format('svg')
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000
|
||||
|
||||
|
||||
// Work Sans (regular, semibold, bold)
|
||||
|
||||
@font-face
|
||||
font-family: 'Work Sans'
|
||||
font-style: normal
|
||||
font-weight: 400
|
||||
src: url('../fonts/worksans-regular.eot')
|
||||
src: url('../fonts/worksans-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/worksans-regular.woff2') format('woff2'), url('../fonts/worksans-regular.woff') format('woff'), url('../fonts/worksans-regular.ttf') format('truetype'), url('../fonts/worksans-regular.svg#worksansregular') format('svg')
|
||||
|
||||
@font-face
|
||||
font-family: 'Work Sans'
|
||||
font-style: normal
|
||||
font-weight: 600
|
||||
src: url('../fonts/worksans-semibold.eot')
|
||||
src: url('../fonts/worksans-semibold.eot?#iefix') format('embedded-opentype'), url('../fonts/worksans-semibold.woff2') format('woff2'), url('../fonts/worksans-semibold.woff') format('woff'), url('../fonts/worksans-semibold.ttf') format('truetype'), url('../fonts/worksans-semibold.svg#worksanssemibold') format('svg')
|
||||
|
||||
@font-face
|
||||
font-family: 'Work Sans'
|
||||
font-style: normal
|
||||
font-weight: 700
|
||||
src: url('../fonts/worksans-bold.eot')
|
||||
src: url('../fonts/worksans-bold.eot?#iefix') format('embedded-opentype'), url('../fonts/worksans-bold.woff2') format('woff2'), url('../fonts/worksans-bold.woff') format('woff'), url('../fonts/worksans-bold.ttf') format('truetype'), url('../fonts/worksans-bold.svg#worksansbold') format('svg')
|
||||
|
||||
|
||||
// Source Code Pro (semibold)
|
||||
|
||||
@font-face
|
||||
font-family: 'Source Code Pro'
|
||||
font-style: normal
|
||||
font-weight: 600
|
||||
src: url('../fonts/sourcecodepro-semibold.eot')
|
||||
src: url('../fonts/sourcecodepro-semibold.eot?#iefix') format('embedded-opentype'), url('../fonts/sourcecodepro-semibold.woff') format('woff'), url('../fonts/sourcecodepro-semibold.ttf') format('truetype'), url('../fonts/sourcecodepro-semibold.svg#sourcecodepro_semibold') format('svg')
|
||||
|
||||
|
||||
// Icomoon (regular)
|
||||
|
||||
@font-face
|
||||
font-family: 'Icomoon'
|
||||
font-style: normal
|
||||
font-weight: 400
|
||||
src: url('../fonts/icomoon.eot?nt9usq')
|
||||
src: url('../fonts/icomoon.eot?nt9usq#iefix') format('embedded-opentype'), url('../fonts/icomoon.ttf?nt9usq') format('truetype'), url('../fonts/icomoon.woff?nt9usq') format('woff'), url('../fonts/icomoon.svg?nt9usq#icomoon') format('svg')
|
131
website/assets/css/_base/_grid.sass
Normal file
|
@ -0,0 +1,131 @@
|
|||
// Grid - Variables
|
||||
// ============================================================================
|
||||
|
||||
$grid-cols : $columns
|
||||
$grid-padding : 2.25rem
|
||||
$grid-margin : 1rem
|
||||
|
||||
|
||||
// Grid - Style
|
||||
// ============================================================================
|
||||
|
||||
// Blocks
|
||||
|
||||
p,
|
||||
.block
|
||||
@extend .has-aside
|
||||
margin-bottom: 5rem
|
||||
|
||||
.no-block.no-block
|
||||
margin-bottom: 0
|
||||
|
||||
|
||||
// Responsive containers
|
||||
|
||||
.responsive-container
|
||||
max-width: 100%
|
||||
overflow: auto
|
||||
width: 100%
|
||||
|
||||
|
||||
// Flexbox grid container
|
||||
// .grid--wrap - wraps chrildren if bigger than the container
|
||||
// .grid--space-between - aligns children horizontally, adds space between them
|
||||
// .grid--space-around - aligns children horizontally, adds space around them
|
||||
// .grid--align-center - aligns children horizonally and centered
|
||||
// .grid--align-right - aligns children horizontally on the right
|
||||
// .grid--valign-bottom - aligns children vertically at the bottom
|
||||
// .grid-padding - adds padding to children
|
||||
// .grid--margin-right - adds right margin to children
|
||||
// .grid--margin-left - adds left margin to children
|
||||
// .grid--block - extends block style
|
||||
|
||||
.grid,
|
||||
.grid-col
|
||||
align-items: flex-start
|
||||
display: flex
|
||||
flex-wrap: wrap
|
||||
|
||||
&.grid--nowrap,
|
||||
&.grid-col--nowrap
|
||||
flex-wrap: nowrap
|
||||
|
||||
&.grid--space-between,
|
||||
&.grid-col--space-between
|
||||
justify-content: space-between
|
||||
|
||||
&.grid--space-around,
|
||||
&.grid-col--space-around
|
||||
justify-content: space-around
|
||||
|
||||
&.grid--align-center,
|
||||
&.grid-col--align-center
|
||||
justify-content: center
|
||||
|
||||
&.grid--align-right,
|
||||
&.grid-col--align-right
|
||||
justify-content: flex-end
|
||||
|
||||
&.grid--valign-center,
|
||||
&.grid-col--valign-center
|
||||
align-items: center
|
||||
|
||||
&.grid--valign-bottom,
|
||||
&.grid-col--valign-bottom
|
||||
align-items: flex-end
|
||||
|
||||
&.grid--valign-space-between,
|
||||
&.grid-col--valign-space-between
|
||||
align-items: space-between
|
||||
|
||||
&.grid--text-center,
|
||||
&.grid-col--text-center
|
||||
text-align: center
|
||||
|
||||
&.grid--block,
|
||||
&.grid-col--block
|
||||
@extend .block
|
||||
|
||||
|
||||
.grid
|
||||
&--padding > *
|
||||
padding: $grid-padding
|
||||
|
||||
&--margin-right > *
|
||||
margin-right: $grid-margin
|
||||
|
||||
&--margin-left > *
|
||||
margin-left: $grid-margin
|
||||
|
||||
|
||||
.grid-col
|
||||
overflow: hidden
|
||||
|
||||
& > *
|
||||
flex-shrink: 1
|
||||
max-width: 100%
|
||||
|
||||
|
||||
// Responsive grid elements
|
||||
// adapted from Gridly, https://github.com/IonicaBizau/gridly
|
||||
|
||||
@media (min-width: #{$screen-size-medium})
|
||||
.grid
|
||||
flex-direction: row
|
||||
align-items: stretch
|
||||
|
||||
.grid-col
|
||||
display: flex
|
||||
flex: 0 0 100%
|
||||
flex-direction: column
|
||||
|
||||
@each $grid-mode, $grid-percentage in $grid-cols
|
||||
&--#{$grid-mode}
|
||||
flex: 0 0 $grid-percentage
|
||||
max-width: $grid-percentage
|
||||
|
||||
|
||||
@media(max-width: #{$screen-size-medium})
|
||||
.grid-col.grid-col
|
||||
flex: 0 0 100%
|
||||
flex-flow: column wrap
|
75
website/assets/css/_base/_reset.sass
Normal file
|
@ -0,0 +1,75 @@
|
|||
// Reset - Variables
|
||||
// ============================================================================
|
||||
|
||||
$reset-font-size : $base-font-size
|
||||
$reset-font-size-small : $base-font-size * 0.8
|
||||
|
||||
|
||||
// Reset - Style
|
||||
// ============================================================================
|
||||
|
||||
// normalize.css
|
||||
|
||||
@import ../_vendors/normalize
|
||||
|
||||
|
||||
// Clearfix
|
||||
|
||||
%clearfix
|
||||
*zoom: 1
|
||||
|
||||
&:before,
|
||||
&:after
|
||||
content: ''
|
||||
display: table
|
||||
|
||||
&:after
|
||||
clear: both
|
||||
|
||||
|
||||
// Custom Resets
|
||||
|
||||
*
|
||||
border: 0
|
||||
box-sizing: border-box
|
||||
margin: 0
|
||||
outline: 0
|
||||
padding: 0
|
||||
-webkit-font-smoothing: antialiased
|
||||
|
||||
html
|
||||
font-size: $reset-font-size
|
||||
|
||||
@media (max-width: #{$screen-size-small})
|
||||
font-size: $reset-font-size-small
|
||||
|
||||
header,
|
||||
footer,
|
||||
figure
|
||||
width: 100%
|
||||
max-width: 100%
|
||||
|
||||
table
|
||||
border-collapse: collapse
|
||||
max-width: 100%
|
||||
text-align: left
|
||||
width: 100%
|
||||
|
||||
td,
|
||||
th
|
||||
vertical-align: top
|
||||
|
||||
ul,
|
||||
ol
|
||||
list-style: none
|
||||
|
||||
a
|
||||
color: inherit
|
||||
text-decoration: none
|
||||
|
||||
img
|
||||
height: auto
|
||||
max-width: 100%
|
||||
|
||||
[data-label]:before
|
||||
content: attr(data-label)
|
174
website/assets/css/_base/_typography.sass
Normal file
|
@ -0,0 +1,174 @@
|
|||
// Typography - Variables
|
||||
// ============================================================================
|
||||
|
||||
$font-size : 1.6rem
|
||||
$headings : h1, h2, h3, h4, h5, h6
|
||||
$heading-font-family : $font-secondary
|
||||
$heading-font-sizes : 5rem, 2.8rem, 2.4rem, 2rem, 1.8rem, 1.6rem
|
||||
$heading-font-weight : bold
|
||||
$heading-padding : $height-navbar 0 1.5rem 0
|
||||
$heading-text-shadow : 2px 2px
|
||||
$line-height : 1.375
|
||||
$page-title-size : 6rem
|
||||
$color-highlight : color($theme)
|
||||
$color-highlight-dark : color($theme, dark)
|
||||
|
||||
|
||||
// Typography - Style
|
||||
// ============================================================================
|
||||
|
||||
// Placeholders
|
||||
|
||||
%font-base
|
||||
font-size: $font-size
|
||||
line-height: $line-height
|
||||
|
||||
%font-big
|
||||
font-size: round-dec($font-size * 1.25)
|
||||
line-height: round-dec($line-height * 1.15)
|
||||
|
||||
%font-lead
|
||||
font-size: round-dec($font-size * 1.75)
|
||||
line-height: round-dec($line-height * 1.2)
|
||||
|
||||
%font-small
|
||||
font-size: round-dec($font-size * 0.75)
|
||||
line-height: round-dec($line-height * 1.1)
|
||||
|
||||
%font-medium-small
|
||||
font-size: round-dec($font-size * 0.875)
|
||||
line-height: round-dec($line-height * 1.1)
|
||||
|
||||
%font-primary
|
||||
font-family: $font-primary
|
||||
|
||||
%font-secondary
|
||||
font-family: $font-secondary
|
||||
|
||||
%font-code
|
||||
font-family: $font-code
|
||||
|
||||
|
||||
// Text styles
|
||||
// .text - regular text
|
||||
// .text-big - bigger style for blogs
|
||||
// .text-lead - large style for intro paragraphs
|
||||
// .text-small - smaller font size
|
||||
// .text-quote - style for quotation
|
||||
// .text-meta - slightly fainter but emphasized font for meta text
|
||||
// .text-meta-strong - emphasized meta text
|
||||
// .text-label - text for labels
|
||||
// .text-credit - meta text with copyright symbol for image credits
|
||||
// .text-caption - text for figure captions
|
||||
// .text-source - text for bibliography sources
|
||||
// .text-example - text for linguistic examples
|
||||
|
||||
.text
|
||||
@extend %font-primary, %font-base
|
||||
|
||||
.text-big
|
||||
@extend %font-primary, %font-big
|
||||
|
||||
.text-lead
|
||||
@extend %font-primary, %font-lead
|
||||
|
||||
.text-medium-small
|
||||
@extend %font-medium-small
|
||||
|
||||
.text-small
|
||||
@extend %font-small
|
||||
|
||||
.text-quote
|
||||
@extend .text-big
|
||||
font-style: italic
|
||||
|
||||
.text-meta
|
||||
@extend %font-secondary, %font-base
|
||||
font-style: normal
|
||||
font-weight: 600
|
||||
text-transform: uppercase
|
||||
|
||||
.text-meta-strong
|
||||
@extend .text-meta
|
||||
font-weight: bold
|
||||
|
||||
.text-label
|
||||
@extend %font-secondary
|
||||
font-size: round-dec($font-size * 0.875)
|
||||
line-height: $line-height
|
||||
font-weight: normal
|
||||
text-transform: uppercase
|
||||
|
||||
.text-credit
|
||||
@extend .text-meta, .text-small
|
||||
@include icon(copyright, currentColor, 0 0.25em 0 0)
|
||||
color: color(grey, dark)
|
||||
|
||||
.text-caption
|
||||
@extend .text-small
|
||||
color: color(grey, dark)
|
||||
padding-top: 2rem
|
||||
|
||||
.text-source
|
||||
@extend .text-quote
|
||||
display: block
|
||||
|
||||
.text-example
|
||||
@extend .text-lead
|
||||
color: color(grey, dark)
|
||||
font-style: italic
|
||||
|
||||
.text-code
|
||||
@extend %font-code
|
||||
font-size: round-dec($font-size * 0.875)
|
||||
font-weight: 600
|
||||
font-style: normal
|
||||
line-height: round-dec($line-height * 1.65)
|
||||
|
||||
.text-center
|
||||
text-align: center
|
||||
|
||||
|
||||
// Headings - Style
|
||||
// ============================================================================
|
||||
|
||||
// Global heading style
|
||||
|
||||
%heading
|
||||
font-weight: $heading-font-weight
|
||||
font-family: $heading-font-family
|
||||
position: relative
|
||||
|
||||
|
||||
// Headings
|
||||
|
||||
.h0
|
||||
font-size: $page-title-size
|
||||
line-height: round-dec($line-height * 0.9)
|
||||
margin: 0
|
||||
text-shadow: $heading-text-shadow $color-highlight-dark
|
||||
|
||||
@for $i from 1 through length($headings)
|
||||
$heading: nth($headings, $i)
|
||||
|
||||
#{$heading},
|
||||
.#{$heading}
|
||||
@extend %heading
|
||||
font-size: nth($heading-font-sizes, $i)
|
||||
|
||||
@if $i == 1
|
||||
.#{$heading}
|
||||
padding: 0
|
||||
|
||||
@else
|
||||
#{$heading}
|
||||
padding: $heading-padding
|
||||
|
||||
|
||||
// Selection - Style
|
||||
// ============================================================================
|
||||
|
||||
*::selection
|
||||
text-shadow: none
|
||||
background: $color-highlight
|
||||
color: color(white)
|
33
website/assets/css/_components/_alerts.sass
Normal file
|
@ -0,0 +1,33 @@
|
|||
// Variables
|
||||
// ============================================================================
|
||||
|
||||
$alert-background : color(white)
|
||||
$alert-border : 1px solid
|
||||
$alert-close-size : 2.25rem
|
||||
$alert-color : color($theme)
|
||||
$alert-padding : 1.5rem 2rem
|
||||
|
||||
|
||||
// Style
|
||||
// ============================================================================
|
||||
|
||||
// Alert boxes
|
||||
// .alert - alert container
|
||||
// .alert-close - icon to close alert
|
||||
|
||||
.alert
|
||||
@include position(fixed, bottom, left, 0, 0)
|
||||
align-items: center
|
||||
background: $alert-background
|
||||
border-top: $alert-border
|
||||
color: $alert-color
|
||||
display: flex
|
||||
justify-content: space-between
|
||||
padding: $alert-padding
|
||||
width: 100%
|
||||
z-index: 200
|
||||
|
||||
.alert-close
|
||||
@include icon(close, currentColor, 0, $alert-close-size)
|
||||
background: transparent
|
||||
color: $alert-color
|
69
website/assets/css/_components/_asides.sass
Normal file
|
@ -0,0 +1,69 @@
|
|||
// Variables
|
||||
// ============================================================================
|
||||
|
||||
$aside-block-margin : 4rem
|
||||
$aside-border : 1px solid color(grey)
|
||||
$aside-font-size : 1.4rem
|
||||
$aside-font-family : $font-primary
|
||||
$aside-line-height : 1.65
|
||||
$aside-margin-side : 1.5rem
|
||||
$aside-opacity : 0.4
|
||||
$aside-padding : 0 2rem
|
||||
$aside-transition : $transition
|
||||
$aside-width : $width-aside
|
||||
|
||||
|
||||
// Style
|
||||
// ============================================================================
|
||||
|
||||
// Aside content
|
||||
// :hover - show aside on hover
|
||||
// [data-label] - style of aside headlines
|
||||
|
||||
.aside
|
||||
@extend .text-small
|
||||
|
||||
@media (max-width: #{$screen-size-large})
|
||||
display: block
|
||||
margin-bottom: $aside-block-margin
|
||||
margin-top: $aside-block-margin
|
||||
|
||||
@media (min-width: #{$screen-size-large})
|
||||
@include position(absolute, top, left, 0, calc(100% + #{$aside-margin-side}))
|
||||
border-left: $aside-border
|
||||
opacity: $aside-opacity
|
||||
padding: $aside-padding
|
||||
transition: $aside-transition
|
||||
white-space: normal
|
||||
width: $aside-width
|
||||
|
||||
&:hover
|
||||
opacity: 1
|
||||
|
||||
&[data-label]:before
|
||||
@extend .label-strong
|
||||
display: block
|
||||
|
||||
.block
|
||||
margin-bottom: ($aside-block-margin / 2)
|
||||
|
||||
.code-inline
|
||||
@extend .code-small
|
||||
|
||||
.code-block
|
||||
@extend .code-block-small
|
||||
|
||||
.table &
|
||||
top: initial
|
||||
|
||||
.aside-body
|
||||
display: block
|
||||
|
||||
|
||||
// Aside container
|
||||
|
||||
.has-aside
|
||||
position: relative
|
||||
|
||||
&:hover > .aside
|
||||
opacity: 1
|
39
website/assets/css/_components/_boxes.sass
Normal file
|
@ -0,0 +1,39 @@
|
|||
// Boxes - Variables
|
||||
// ============================================================================
|
||||
|
||||
$box-border : 1px solid
|
||||
$box-padding : 2em
|
||||
|
||||
|
||||
// Boxes - Style
|
||||
// ============================================================================
|
||||
|
||||
// Box for notes and alerts
|
||||
// [data-label] - style of box labels
|
||||
// .box--info - emphasized style for info boxes
|
||||
// .box-image - optional image, like profile image
|
||||
// .box-body - body text of box
|
||||
// .box-links - link list
|
||||
|
||||
.box
|
||||
@extend .block, .text
|
||||
padding: ($box-padding / 2) 0
|
||||
|
||||
&[data-label]:before
|
||||
@extend .label-box
|
||||
|
||||
&--info
|
||||
background: color($theme, light)
|
||||
border: $box-border darken(color($theme, light), 4)
|
||||
|
||||
.box-image
|
||||
@extend .image-profile
|
||||
float: right
|
||||
|
||||
.box-body
|
||||
margin-bottom: 0
|
||||
padding: $box-padding
|
||||
|
||||
.box-links
|
||||
@extend .link-list
|
||||
padding: $box-padding
|
75
website/assets/css/_components/_buttons.sass
Normal file
|
@ -0,0 +1,75 @@
|
|||
// Buttons - Variables
|
||||
// ============================================================================
|
||||
|
||||
$button-border-radius : $border-radius
|
||||
$button-border-style : solid
|
||||
$button-border-width : 2px
|
||||
$button-color : color($theme)
|
||||
$button-opacity-hover : 0.85
|
||||
$button-padding : 1em 1.5em 0.75em
|
||||
$button-margin : 0.5rem
|
||||
|
||||
|
||||
// Buttons - Style
|
||||
// ============================================================================
|
||||
|
||||
// :active - effect on active
|
||||
// :hover - effect on hover
|
||||
// .button--small - small style
|
||||
// .button--#{$social-button} - social button styled according to site
|
||||
// .button-primary - primary style
|
||||
// .button-secondary - secondary style
|
||||
// .button-tertiary - tertiary style
|
||||
|
||||
.button
|
||||
@extend .text-meta
|
||||
border: $button-border-width $button-border-style
|
||||
border-radius: $button-border-radius
|
||||
padding: $button-padding
|
||||
|
||||
&--small
|
||||
@extend .text-small
|
||||
border-width: ($button-border-width / 2)
|
||||
|
||||
&--source
|
||||
float: right
|
||||
margin-left: $button-margin
|
||||
|
||||
@each $social-button in $social-buttons
|
||||
&.button--#{$social-button}
|
||||
background: color(social, $social-button)
|
||||
border-color: color(social, $social-button)
|
||||
color: color(white)
|
||||
|
||||
.button-primary
|
||||
@extend .button
|
||||
background-color: $button-color
|
||||
border-color: $button-color
|
||||
color: color(white)
|
||||
|
||||
&:hover,
|
||||
&:active
|
||||
opacity: $button-opacity-hover
|
||||
|
||||
.button-secondary
|
||||
@extend .button
|
||||
background: color(white)
|
||||
color: $button-color
|
||||
|
||||
&:hover,
|
||||
&:active
|
||||
background: $button-color
|
||||
color: color(white)
|
||||
opacity: 1
|
||||
|
||||
.button-tertiary
|
||||
@extend .button
|
||||
background: color(white)
|
||||
color: color(grey, dark)
|
||||
border-color: currentColor
|
||||
|
||||
&:hover,
|
||||
&:active
|
||||
border-color: $button-color
|
||||
color: $button-color
|
||||
opacity: 1
|
44
website/assets/css/_components/_cards.sass
Normal file
|
@ -0,0 +1,44 @@
|
|||
// Cards - Variables
|
||||
// ============================================================================
|
||||
|
||||
$card-border-radius : $border-radius
|
||||
$card-border : 1px solid color(grey)
|
||||
$card-figure-background : color(grey, light)
|
||||
$card-figure-ratio : $image-ratio
|
||||
$card-padding : 8%
|
||||
$card-shadow-light : 0 0 5px color(grey, light)
|
||||
$card-shadow : 0 0 5px color(grey)
|
||||
$card-transition : $transition
|
||||
|
||||
|
||||
// Cards - Style
|
||||
// ============================================================================
|
||||
|
||||
// .card - card element, ideally used within grids
|
||||
// .card-strong - highlighted style
|
||||
// .card-figure - graphic element within card
|
||||
|
||||
.card
|
||||
border: $card-border
|
||||
border-radius: $border-radius
|
||||
flex: 1
|
||||
overflow: auto
|
||||
padding: $card-padding
|
||||
width: 100%
|
||||
|
||||
.card-strong
|
||||
@extend .card
|
||||
box-shadow: $card-shadow
|
||||
transition: $card-transition
|
||||
|
||||
&:hover
|
||||
box-shadow: $card-shadow-light
|
||||
|
||||
.card-figure
|
||||
background: $card-figure-background
|
||||
border-radius: $card-border-radius
|
||||
display: block
|
||||
height: 0
|
||||
margin-bottom: $card-padding
|
||||
overflow: hidden
|
||||
padding-bottom: 50%
|
87
website/assets/css/_components/_code.sass
Normal file
|
@ -0,0 +1,87 @@
|
|||
// Variables
|
||||
// ============================================================================
|
||||
|
||||
$code-background : color(grey, light)
|
||||
$code-background-dark : color(black)
|
||||
$code-block-border : 4px solid color($theme)
|
||||
$code-block-padding : 2em 3em
|
||||
$code-block-padding-small : 1em 1.5em
|
||||
$code-inline-margin : 0.25em 0.5em 0 0.5em
|
||||
$code-inline-padding : 0 0.25rem
|
||||
$code-line-height : 2.25
|
||||
$code-text-shadow : 1px 1px 0 color(white)
|
||||
|
||||
|
||||
// Style
|
||||
// ============================================================================
|
||||
|
||||
// General code style
|
||||
// .code-inline - source code
|
||||
// .code-small - smaller style
|
||||
|
||||
.code-inline
|
||||
@extend .text-code
|
||||
direction: ltr
|
||||
text-shadow: $code-text-shadow
|
||||
white-space: pre
|
||||
word-spacing: normal
|
||||
word-break: normal
|
||||
|
||||
.code-small
|
||||
@extend .text-small
|
||||
padding-top: 0
|
||||
padding-bottom: 0
|
||||
|
||||
|
||||
// Inline Code
|
||||
// :not(.code-block) - style for items outside of code blocks
|
||||
|
||||
code
|
||||
@extend .code-inline
|
||||
|
||||
:not(.code-block) > .code-inline
|
||||
background: $code-background
|
||||
display: inline
|
||||
line-height: inherit
|
||||
margin: $code-inline-margin
|
||||
padding: $code-inline-padding
|
||||
|
||||
|
||||
// Code blocks in preformatted text
|
||||
// .code-block - block of source code
|
||||
// .code - text content of code blocks
|
||||
// [data-label] - style of code labels
|
||||
// .code-block-small - smaller style
|
||||
// .code-block-dark - alternative dark style
|
||||
|
||||
.code-block
|
||||
@extend .block
|
||||
background: $code-background
|
||||
border-left: $code-block-border
|
||||
max-width: 100%
|
||||
overflow: auto
|
||||
padding: 1em 0
|
||||
white-space: pre
|
||||
width: 100%
|
||||
|
||||
.code-inline
|
||||
display: block
|
||||
padding: $code-block-padding
|
||||
|
||||
&[data-label]:before
|
||||
@extend .label-box
|
||||
|
||||
.code-block-small
|
||||
@extend .code-small
|
||||
|
||||
.code-inline
|
||||
padding: $code-block-padding-small
|
||||
|
||||
.code-block-dark
|
||||
@extend .code-block
|
||||
background: $code-background-dark
|
||||
border: none
|
||||
color: color(white)
|
||||
|
||||
.code-inline
|
||||
text-shadow: none
|
72
website/assets/css/_components/_dividers.sass
Normal file
|
@ -0,0 +1,72 @@
|
|||
// Dividers - Variables
|
||||
// ============================================================================
|
||||
|
||||
$divider-border : 1px solid color(grey)
|
||||
$divider-locations : top, bottom
|
||||
$divider-margin : 5rem
|
||||
$divider-padding : 3rem
|
||||
$divider-text-align : center
|
||||
|
||||
|
||||
// Dividers - Style
|
||||
// ============================================================================
|
||||
|
||||
// General divider
|
||||
|
||||
.divider
|
||||
@extend %clearfix
|
||||
width: 100%
|
||||
margin: $divider-margin 0
|
||||
|
||||
@each $divider-location in $divider-locations
|
||||
%divider-#{$divider-location}
|
||||
@extend .divider
|
||||
border-#{$divider-location}: $divider-border
|
||||
|
||||
|
||||
// Divider above element
|
||||
// .divider-top - add divider to top of element
|
||||
// .divider-bottom - add divider to bottom of element
|
||||
// .divider-both - add divider to top and bottom of element
|
||||
|
||||
.divider-top
|
||||
@extend %divider-top
|
||||
padding-top: $divider-padding
|
||||
|
||||
.divider-bottom
|
||||
@extend %divider-bottom
|
||||
padding-bottom: $divider-padding
|
||||
|
||||
.divider-both
|
||||
@extend .divider-top
|
||||
@extend .divider-bottom
|
||||
|
||||
|
||||
// Divider bar for text and links
|
||||
// .divider-bar - container element
|
||||
|
||||
.divider-bar
|
||||
@extend %divider-top, %divider-bottom, .label
|
||||
margin: 0
|
||||
text-align: $divider-text-align
|
||||
|
||||
|
||||
// Divider with text
|
||||
// .divider-text - container element
|
||||
// .divider-text-content - text content
|
||||
|
||||
.divider-text
|
||||
@extend %divider-top
|
||||
text-align: $divider-text-align
|
||||
margin: $divider-margin 0
|
||||
|
||||
.divider-text-content
|
||||
background: color(white)
|
||||
display: inline-block
|
||||
line-height: 0.5
|
||||
margin: -0.5em 0 0 0
|
||||
padding: 0 0.5em
|
||||
|
||||
& > *
|
||||
margin: 0
|
||||
padding: 0
|
35
website/assets/css/_components/_embeds.sass
Normal file
|
@ -0,0 +1,35 @@
|
|||
// Embeds - Variables
|
||||
// ============================================================================
|
||||
|
||||
$embed-border : 1px solid color(grey)
|
||||
$embed-caption-align : center
|
||||
$embed-padding : 2rem
|
||||
$embed-displacy-min : 325px
|
||||
|
||||
|
||||
// Embeds - Style
|
||||
// ============================================================================
|
||||
|
||||
// iframe - content of embed
|
||||
// .embed--border - embed with border
|
||||
// .embed--displacy - embed for displaCy visualization
|
||||
|
||||
.embed
|
||||
@extend .block
|
||||
margin-left: 0
|
||||
padding: $embed-padding
|
||||
|
||||
iframe
|
||||
max-width: 100%
|
||||
width: 100%
|
||||
|
||||
&--border
|
||||
border: $embed-border
|
||||
|
||||
&--displacy iframe
|
||||
min-height: $embed-displacy-min
|
||||
|
||||
.embed-caption
|
||||
@extend .label
|
||||
display: block
|
||||
text-align: $embed-caption-align
|
28
website/assets/css/_components/_forms.sass
Normal file
|
@ -0,0 +1,28 @@
|
|||
// Form Elements - Variables
|
||||
// ============================================================================
|
||||
|
||||
$input-border : 1px solid color(grey)
|
||||
$input-border-radius : $border-radius
|
||||
$input-color : color(grey, dark)
|
||||
$input-padding : 0.5em 0.75em
|
||||
$input-transition : $transition
|
||||
|
||||
|
||||
// Form Elements - Style
|
||||
// ============================================================================
|
||||
|
||||
// Text input field
|
||||
// :hover - style on hover
|
||||
// :focus - style on focus
|
||||
|
||||
.input
|
||||
@extend .text
|
||||
border: $input-border
|
||||
border-radius: $input-border-radius
|
||||
color: $input-color
|
||||
padding: $input-padding
|
||||
transition: $input-transition
|
||||
|
||||
&:hover,
|
||||
&:focus
|
||||
border-color: currentColor
|
39
website/assets/css/_components/_icons.sass
Normal file
|
@ -0,0 +1,39 @@
|
|||
// Icons - Variables
|
||||
// ============================================================================
|
||||
|
||||
$icon-padding : 0.5em
|
||||
$icon-large-size : 3rem
|
||||
$icon-medium-size : 1.75rem
|
||||
|
||||
|
||||
// Icons - Style
|
||||
// ============================================================================
|
||||
|
||||
// .icon--secondary - non-colored version of icon
|
||||
// .icon--large - large version of graphic icon
|
||||
// .icon-#{$icon} - graphic icon
|
||||
|
||||
%icon
|
||||
display: inline-block
|
||||
font-family: $font-icons
|
||||
font-style: normal
|
||||
font-weight: normal
|
||||
line-height: 1
|
||||
|
||||
.icon
|
||||
display: inline-block
|
||||
vertical-align: middle
|
||||
|
||||
&--secondary:before
|
||||
color: currentColor !important
|
||||
|
||||
&--medium:before
|
||||
font-size: $icon-medium-size
|
||||
|
||||
&--large:before
|
||||
font-size: $icon-large-size
|
||||
|
||||
@each $icon, $unicode in $icons
|
||||
.icon-#{$icon}
|
||||
@extend .icon
|
||||
@include icon($icon, color(social, $icon), 0 $icon-padding)
|
39
website/assets/css/_components/_images.sass
Normal file
|
@ -0,0 +1,39 @@
|
|||
// Images - Variables
|
||||
// ============================================================================
|
||||
|
||||
$image-background : color(grey, light)
|
||||
$image-profile-margin : 1rem 3rem
|
||||
$image-profile-width : $width-profile
|
||||
$image-ratio : $image-ratio
|
||||
|
||||
|
||||
// Images - Style
|
||||
// ============================================================================
|
||||
|
||||
// Image Containers
|
||||
// .image-container - container for figures and inline images
|
||||
// .image-hero - container for hero image for blog posts
|
||||
// .image-profile - container for profile photo
|
||||
|
||||
.image-container
|
||||
@extend .block
|
||||
margin-left: 0
|
||||
margin-right: 0
|
||||
|
||||
.image-profile
|
||||
@include size($image-profile-width)
|
||||
background: $image-background
|
||||
border-radius: 50%
|
||||
margin: $image-profile-margin
|
||||
overflow: hidden
|
||||
shape-outside: circle()
|
||||
|
||||
|
||||
// Global image ratio
|
||||
|
||||
.image-ratio
|
||||
background: $image-background
|
||||
height: 0
|
||||
overflow: hidden
|
||||
padding-bottom: (100% / $image-ratio)
|
||||
width: 100%
|
46
website/assets/css/_components/_labels.sass
Normal file
|
@ -0,0 +1,46 @@
|
|||
// Labels - Variables
|
||||
// ============================================================================
|
||||
|
||||
$label-border-radius : $border-radius
|
||||
$label-color : color(grey, dark)
|
||||
$label-color-light : color(grey, light)
|
||||
$label-color-dark : color($theme)
|
||||
$label-padding : 0.75em
|
||||
$label-padding-small : 0.25em 0.75em
|
||||
$label-margin-side : 1rem
|
||||
|
||||
|
||||
// Labels - Style
|
||||
// ============================================================================
|
||||
|
||||
// .label - regular label
|
||||
// .label-strong - stronger version
|
||||
// .label-box - label in box with background
|
||||
// .label-tag - label in inline-tag style
|
||||
|
||||
.label
|
||||
@extend .text-label
|
||||
color: $label-color
|
||||
display: inline-block
|
||||
padding: $label-padding 0
|
||||
|
||||
.label-strong
|
||||
@extend .label
|
||||
color: $label-color-dark
|
||||
font-weight: bold
|
||||
|
||||
.label-box
|
||||
@extend .label
|
||||
background: $label-color-dark
|
||||
color: color(white)
|
||||
font-weight: 600
|
||||
padding: $label-padding
|
||||
|
||||
.label-tag
|
||||
@extend .label, .text-small
|
||||
background: $label-color-light
|
||||
border: 1px solid darken($label-color-light, 7.5)
|
||||
border-radius: $label-border-radius
|
||||
margin: 0 $label-margin-side 0 0
|
||||
padding: $label-padding-small
|
||||
vertical-align: text-top
|
60
website/assets/css/_components/_links.sass
Normal file
|
@ -0,0 +1,60 @@
|
|||
// Links - Variables
|
||||
// ============================================================================
|
||||
|
||||
$link-border : 1px solid currentColor
|
||||
$link-color : color($theme)
|
||||
$link-icon-color : color(grey, dark)
|
||||
$link-icon-color-hidden : color(grey)
|
||||
$link-icon-size : 2rem
|
||||
$link-list-padding : 0.5em
|
||||
$link-transition : $transition
|
||||
|
||||
|
||||
// Links - Style
|
||||
// ============================================================================
|
||||
|
||||
.link
|
||||
color: $link-color
|
||||
transition: $link-transition
|
||||
|
||||
.link-strong
|
||||
@extend .link
|
||||
border-bottom: $link-border
|
||||
|
||||
p a,
|
||||
.table-cell a,
|
||||
.list-item a,
|
||||
.aside a
|
||||
@extend .link-strong
|
||||
|
||||
|
||||
// Permalinks
|
||||
// :before - indicate permalink with icon
|
||||
// :hover:before - hover effect on permalink indicator
|
||||
// :active:before - different styling of active permalink indicator
|
||||
|
||||
.permalink
|
||||
@include icon(permalink, $link-icon-color-hidden, 0 $link-icon-size 0 0, $link-icon-size)
|
||||
position: relative
|
||||
|
||||
&:before
|
||||
@include position(absolute, top, left, calc(50% - #{$link-icon-size / 2}), (-$link-icon-size * 1.5))
|
||||
transition: $link-transition
|
||||
width: $link-icon-size
|
||||
|
||||
&:hover:before
|
||||
color: $link-icon-color
|
||||
|
||||
&:active:before
|
||||
color: $link-color
|
||||
|
||||
|
||||
// List of links, like social profiles
|
||||
|
||||
.link-list
|
||||
@extend .text-label
|
||||
font-weight: 600
|
||||
|
||||
& > *
|
||||
display: inline-block
|
||||
padding: $link-list-padding
|
59
website/assets/css/_components/_lists.sass
Normal file
|
@ -0,0 +1,59 @@
|
|||
// Lists - Variables
|
||||
// ============================================================================
|
||||
|
||||
$list-alternatives : (letters, upper-latin), (roman, lower-roman)
|
||||
$list-icon-color : color($theme)
|
||||
$list-icon-size : 2.4rem
|
||||
$list-item-padding : 1em
|
||||
$list-margin-side : 5%
|
||||
$list-padding-side : 2rem
|
||||
|
||||
|
||||
// Lists - Style
|
||||
// ============================================================================
|
||||
|
||||
// .list - list of items
|
||||
// .list--bullets - unordered list with bullets
|
||||
// .list--numbers - ordered list with numbers
|
||||
// .list--letters - ordered list with letters
|
||||
// .list--roman - ordered list with roman numerals
|
||||
// .list-item - list item
|
||||
|
||||
.list
|
||||
@extend .block, .text
|
||||
padding-left: $list-margin-side
|
||||
|
||||
&--bullets
|
||||
margin-left: $list-margin-side
|
||||
|
||||
.list-item
|
||||
@include icon(bullet, none, 0 $list-padding-side 0 0, $list-icon-size)
|
||||
|
||||
&--numbers
|
||||
counter-reset: li
|
||||
margin-left: $list-margin-side
|
||||
|
||||
.list-item:before
|
||||
@extend .h3
|
||||
content: counter(li) '.'
|
||||
counter-increment: li
|
||||
padding-right: $list-padding-side
|
||||
|
||||
@each $list-type, $list-counter in $list-alternatives
|
||||
&--#{$list-type}
|
||||
@extend .list--numbers
|
||||
|
||||
.list-item:before
|
||||
content: counter(li, #{$list-counter}) '.'
|
||||
|
||||
.list-item
|
||||
margin-bottom: $list-item-padding
|
||||
text-indent: -$list-margin-side
|
||||
|
||||
&:before
|
||||
color: $list-icon-color
|
||||
display: inline-block
|
||||
line-height: 1
|
||||
text-align: center
|
||||
width: $list-icon-size
|
||||
vertical-align: middle
|
36
website/assets/css/_components/_logo.sass
Normal file
|
@ -0,0 +1,36 @@
|
|||
// Logo - Variables
|
||||
// ============================================================================
|
||||
|
||||
$logo-size-large : nth($width-logo, 1)
|
||||
$logo-size-regular : nth($width-logo, 2)
|
||||
$logo-size-small : nth($width-logo, 3)
|
||||
$logo-size-tiny : nth($width-logo, 4)
|
||||
|
||||
|
||||
// Logo - Style
|
||||
// ============================================================================
|
||||
|
||||
// path - SVG path of logo
|
||||
// .logo--small - smaller style
|
||||
// .logo--regular - regular style
|
||||
// .logo--large - bigger style
|
||||
|
||||
.logo
|
||||
width: 100%
|
||||
|
||||
path
|
||||
width: 100%
|
||||
fill: currentColor
|
||||
|
||||
&--tiny
|
||||
vertical-align: text-bottom
|
||||
width: $logo-size-tiny
|
||||
|
||||
&--small
|
||||
width: $logo-size-small
|
||||
|
||||
&--regular
|
||||
width: $logo-size-regular
|
||||
|
||||
&--large
|
||||
width: $logo-size-large
|
88
website/assets/css/_components/_misc.sass
Normal file
|
@ -0,0 +1,88 @@
|
|||
// Misc - Variables
|
||||
// ============================================================================
|
||||
|
||||
$x-terminal-background : color(grey)
|
||||
$x-terminal-border-radius : $border-radius * 2
|
||||
$x-terminal-color : color(black)
|
||||
$x-terminal-cursor-animation : blink 0.9s infinite
|
||||
$x-terminal-cursor : '\258B'
|
||||
$x-terminal-icon-colors : color(red), color(green), color(yellow)
|
||||
$x-terminal-icon-size : 1em
|
||||
$x-terminal-padding : 0.75em
|
||||
|
||||
$x-bubble-size : 35px
|
||||
$x-bubble-margin : 1rem
|
||||
|
||||
|
||||
// Misc - Style
|
||||
// ============================================================================
|
||||
|
||||
// Terminal window illustration to display code
|
||||
// .x-terminal - terminal window
|
||||
// .x-terminal-title - title of terminal window
|
||||
// .x-terminal-icons - container for toolbar icons
|
||||
// .x-terminal-code - code box
|
||||
// .x-terminal-code:after - cursor in last line
|
||||
// %x-terminal-icon - general style of toolbar icons
|
||||
|
||||
.x-terminal
|
||||
background: $x-terminal-background
|
||||
border-radius: $x-terminal-border-radius
|
||||
color: $x-terminal-color
|
||||
width: 100%
|
||||
|
||||
&--cursor
|
||||
.code:after
|
||||
animation: $x-terminal-cursor-animation
|
||||
opacity: 1
|
||||
content: $x-terminal-cursor
|
||||
|
||||
.x-terminal-title
|
||||
text-align: center
|
||||
padding: $x-terminal-padding
|
||||
|
||||
.x-terminal-icons
|
||||
padding: $x-terminal-padding
|
||||
position: absolute
|
||||
|
||||
&:before
|
||||
@extend %x-terminal-icon
|
||||
content: ''
|
||||
background: nth($x-terminal-icon-colors, 1)
|
||||
|
||||
span
|
||||
@extend %x-terminal-icon
|
||||
background: nth($x-terminal-icon-colors, 2)
|
||||
|
||||
&:after
|
||||
@extend %x-terminal-icon
|
||||
content: ''
|
||||
background: nth($x-terminal-icon-colors, 3)
|
||||
|
||||
.x-terminal-code
|
||||
@extend .code-block-dark
|
||||
border-bottom-left-radius: $x-terminal-border-radius
|
||||
border-bottom-right-radius: $x-terminal-border-radius
|
||||
padding: $x-terminal-padding * 2
|
||||
max-width: 100%
|
||||
width: 100%
|
||||
white-space: pre-wrap
|
||||
|
||||
&.code-block
|
||||
margin-bottom: 0
|
||||
|
||||
%x-terminal-icon
|
||||
@include size($x-terminal-icon-size)
|
||||
display: inline-block
|
||||
float: left
|
||||
border-radius: 50%
|
||||
margin-right: $x-terminal-padding
|
||||
|
||||
|
||||
// Bubble to display colors
|
||||
|
||||
.x-bubble
|
||||
@include size($x-bubble-size)
|
||||
border-radius: 50%
|
||||
cursor: pointer
|
||||
margin-right: $x-bubble-margin
|
36
website/assets/css/_components/_quotes.sass
Normal file
|
@ -0,0 +1,36 @@
|
|||
// Quotes - Variables
|
||||
// ============================================================================
|
||||
|
||||
$quote-icon-color : color($theme)
|
||||
$quote-icon-size : 6rem
|
||||
$quote-padding-side : 10rem
|
||||
|
||||
|
||||
// Quotes - Style
|
||||
// ============================================================================
|
||||
|
||||
// :before - icon to emphasize blockquote
|
||||
// .quote-text - quote text content
|
||||
// .quote-text-strong - emphasized style of quote text content
|
||||
// .quote-source - source of quote (link optional)
|
||||
|
||||
.quote
|
||||
@extend .block
|
||||
@include icon(quote, color(grey), 0, $quote-icon-size)
|
||||
padding-left: $quote-padding-side
|
||||
|
||||
&:before
|
||||
@include position(relative, top, left, ($quote-icon-size / 1.75), -$quote-padding-side)
|
||||
color: $quote-icon-color
|
||||
|
||||
.quote-text
|
||||
@extend .text-quote
|
||||
|
||||
.quote-text-strong
|
||||
@extend .h2
|
||||
padding: 0
|
||||
|
||||
.quote-source
|
||||
@extend .text-meta-strong
|
||||
@include icon(dash, color(grey), 0 0.75rem 0 0)
|
||||
border: none
|
79
website/assets/css/_components/_tables.sass
Normal file
|
@ -0,0 +1,79 @@
|
|||
// Tables - Variables
|
||||
// ============================================================================
|
||||
|
||||
$table-background-color : color(white)
|
||||
$table-border-color : color(grey)
|
||||
$table-border-style : solid
|
||||
$table-border-width : 1px
|
||||
$table-color : color($theme)
|
||||
$table-head-color : color(white)
|
||||
$table-highlight-border : 3px solid color($theme)
|
||||
$table-padding : 1em
|
||||
$table-shade-color : color(grey, light)
|
||||
$table-shadow-color : color(black, dark)
|
||||
|
||||
|
||||
// Tables - Style
|
||||
// ============================================================================
|
||||
|
||||
// .table - data table
|
||||
// .table--code - table with code in first column
|
||||
// .table--params - table with parameters in first column
|
||||
// .table-row - table row
|
||||
// .table-cell - table cell
|
||||
// .table-cell--highlight - style for highlighted table cell(s)
|
||||
// .table-head-cell - table head cell
|
||||
// .table-container - block containing table
|
||||
|
||||
.table
|
||||
@extend .table-responsive, .block, .text
|
||||
vertical-align: top
|
||||
|
||||
&--code .table-cell:first-child
|
||||
background: $table-shade-color
|
||||
|
||||
&--params .table-cell:first-child
|
||||
font-weight: bold
|
||||
white-space: nowrap
|
||||
|
||||
.table-cell
|
||||
border: $table-border-width $table-border-style $table-border-color
|
||||
padding: $table-padding
|
||||
|
||||
&--highlight
|
||||
border: $table-highlight-border
|
||||
|
||||
.table-head-cell
|
||||
@extend .text-meta
|
||||
background: $table-color
|
||||
border: $table-border-width $table-border-style $table-color
|
||||
color: $table-head-color
|
||||
display: table-cell
|
||||
padding: $table-padding
|
||||
|
||||
.table-container
|
||||
@extend .responsive-container
|
||||
|
||||
|
||||
// Responsive Table Markup
|
||||
// adapted from David Bushell, http://codepen.io/dbushell/pen/wGaamR
|
||||
|
||||
@media(max-width: #{$screen-size-large})
|
||||
.table-responsive
|
||||
@include scroll-shadow-base($table-shadow-color)
|
||||
display: inline-block
|
||||
overflow-x: auto
|
||||
width: auto
|
||||
-webkit-overflow-scrolling: touch
|
||||
|
||||
.table-cell
|
||||
&:first-child
|
||||
@include scroll-shadow-cover(left, $table-background-color)
|
||||
|
||||
&:last-child
|
||||
@include scroll-shadow-cover(right, $table-background-color)
|
||||
|
||||
.table-responsive.table--code
|
||||
.table-cell
|
||||
&:first-child
|
||||
@include scroll-shadow-cover(left, $table-shade-color)
|
44
website/assets/css/_components/_tooltips.sass
Normal file
|
@ -0,0 +1,44 @@
|
|||
// Tooltips - Variables
|
||||
// ============================================================================
|
||||
|
||||
$tooltip-background : color(black)
|
||||
$tooltip-border-radius : $border-radius
|
||||
$tooltip-color : color(white)
|
||||
$tooltip-padding : 0.15rem 1rem
|
||||
|
||||
|
||||
// Tooltips - Style
|
||||
// ============================================================================
|
||||
|
||||
// [data-tooltip] - tooltip
|
||||
// :after - tooltip content
|
||||
// :hover - display tooltip on hover
|
||||
// .visible - makes tooltip visible
|
||||
|
||||
[data-tooltip]
|
||||
display: inline
|
||||
position: relative
|
||||
|
||||
&:after
|
||||
@extend .text, .text-small
|
||||
@include position(absolute, top, left, 125%, 50%)
|
||||
background: $tooltip-background
|
||||
border-radius: $tooltip-border-radius
|
||||
color: $tooltip-color
|
||||
content: attr(data-tooltip)
|
||||
opacity: 0
|
||||
padding: $tooltip-padding
|
||||
text-shadow: none
|
||||
text-transform: none
|
||||
transform: translateX(-50%) translateY(-2px)
|
||||
transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1)
|
||||
visibility: hidden
|
||||
white-space: nowrap
|
||||
z-index: 200
|
||||
|
||||
&:hover:after,
|
||||
&.visible:after
|
||||
display: block
|
||||
opacity: 1
|
||||
transform: translateX(-50%) translateY(0)
|
||||
visibility: visible
|
25
website/assets/css/_layout/_article.sass
Normal file
|
@ -0,0 +1,25 @@
|
|||
// Article - Variables
|
||||
// ============================================================================
|
||||
|
||||
$article-header-margin : 6rem
|
||||
$article-footer-margin : 1.5rem
|
||||
|
||||
|
||||
// Article - Style
|
||||
// ============================================================================
|
||||
|
||||
article p,
|
||||
article .list
|
||||
@extend .text-big
|
||||
|
||||
.article-header
|
||||
margin-bottom: $article-header-margin
|
||||
|
||||
.article-title
|
||||
@extend .h1
|
||||
|
||||
.article-meta
|
||||
@extend .text-meta
|
||||
|
||||
.article-footer
|
||||
margin-top: $article-footer-margin
|
53
website/assets/css/_layout/_body.sass
Normal file
|
@ -0,0 +1,53 @@
|
|||
// Body - Variables
|
||||
// ============================================================================
|
||||
|
||||
$body-background : color(white)
|
||||
$body-color : color(black)
|
||||
$main-padding-sides : 4rem
|
||||
$main-padding-bottom : 8rem
|
||||
$main-article-margin-left : 10rem
|
||||
|
||||
|
||||
// Body - Style
|
||||
// ============================================================================
|
||||
|
||||
.body
|
||||
@extend .text
|
||||
background: $body-background
|
||||
color: $body-color
|
||||
display: flex
|
||||
flex-flow: row wrap
|
||||
|
||||
|
||||
// Main content
|
||||
// .main - main content container
|
||||
// .main--asides - main content with asides
|
||||
// .main--article - main content for articles
|
||||
|
||||
.main
|
||||
flex: 1
|
||||
max-width: 100%
|
||||
padding: $height-navbar $main-padding-sides $main-padding-bottom $main-padding-sides
|
||||
width: $width-content - $width-aside
|
||||
|
||||
|
||||
// Remove top padding from first element if it's a level 2 headline
|
||||
|
||||
& > *:first-child > h2:first-child
|
||||
padding-top: 0
|
||||
|
||||
|
||||
// Large screens only
|
||||
|
||||
@media (min-width: #{$screen-size-large})
|
||||
&.main--asides
|
||||
margin-right: $width-aside
|
||||
|
||||
&.main--article
|
||||
margin-left: $main-article-margin-left
|
||||
|
||||
|
||||
// Sections
|
||||
|
||||
.section
|
||||
@extend .block
|
20
website/assets/css/_layout/_footer.sass
Normal file
|
@ -0,0 +1,20 @@
|
|||
// Footer - Variables
|
||||
// ============================================================================
|
||||
|
||||
$footer-background : color($theme) pattern($theme)
|
||||
$footer-color : color(white)
|
||||
$footer-padding : 2.75rem
|
||||
$footer-text-align : center
|
||||
|
||||
|
||||
// Footer - Style
|
||||
// ============================================================================
|
||||
|
||||
.footer
|
||||
@extend .link-list
|
||||
background: $footer-background
|
||||
color: $footer-color
|
||||
overflow: auto
|
||||
padding: $footer-padding
|
||||
text-align: $footer-text-align
|
||||
z-index: 100
|
50
website/assets/css/_layout/_header.sass
Normal file
|
@ -0,0 +1,50 @@
|
|||
// Header - Variables
|
||||
// ============================================================================
|
||||
|
||||
$header-background : color($theme) pattern($theme)
|
||||
$header-color-highlight : color($theme, dark)
|
||||
$header-min-height : 250px
|
||||
$header-padding : 4rem 5rem 5rem
|
||||
$header-text-color : color(white)
|
||||
$header-text-shadow : 2px 2px
|
||||
$hero-credit-bottom : -2em
|
||||
$hero-credit-right : 1em
|
||||
|
||||
|
||||
// Header - Style
|
||||
// ============================================================================
|
||||
|
||||
.header
|
||||
background: $header-background
|
||||
display: flex
|
||||
flex-flow: column nowrap
|
||||
justify-content: center
|
||||
margin-top: $height-navbar
|
||||
min-height: $header-min-height
|
||||
text-align: center
|
||||
|
||||
.header-title
|
||||
@extend .h0
|
||||
color: $header-text-color
|
||||
|
||||
&.header-title--center
|
||||
@extend .text-center
|
||||
|
||||
.header-body
|
||||
color: $header-text-color
|
||||
padding: $header-padding
|
||||
text-align: left
|
||||
|
||||
.header-text
|
||||
text-shadow: $header-text-shadow $header-color-highlight
|
||||
|
||||
|
||||
// Hero image
|
||||
|
||||
.hero
|
||||
position: relative
|
||||
min-height: 0
|
||||
|
||||
.hero-credit
|
||||
@extend .text-credit
|
||||
@include position(absolute, bottom, right, $hero-credit-bottom, $hero-credit-right)
|
108
website/assets/css/_layout/_nav.sass
Normal file
|
@ -0,0 +1,108 @@
|
|||
// Top Navigation Bar - Variables
|
||||
// ============================================================================
|
||||
|
||||
$nav-animation : slideInDown 0.5s ease-in-out
|
||||
$nav-background : color(white)
|
||||
$nav-color : color($theme)
|
||||
$nav-height : $height-navbar
|
||||
$nav-height-small : $nav-height * 0.8
|
||||
$nav-icon-size : 3.5rem
|
||||
$nav-item-spacing : 1em
|
||||
$nav-mobile-border : 1px solid
|
||||
$nav-mobile-font-size : 1.25em
|
||||
$nav-mobile-padding : 1rem
|
||||
$nav-mobile-width : 20vw
|
||||
$nav-padding : 0 0 0 2rem
|
||||
$nav-triangle-size : 8px
|
||||
|
||||
|
||||
// Top Navigation Bar - Style
|
||||
// ============================================================================
|
||||
|
||||
// .nav - top and primary navigation bar
|
||||
// .fixed - sticky version
|
||||
// .logo - special styling for logo
|
||||
// .nav-menu - menu bar containing menu items
|
||||
// .nav-item - menu list item
|
||||
// .nav-button - button to toggle mobile navigation
|
||||
// .nav-checkbox - checkbox for checkbox hack
|
||||
// .active - active menu item
|
||||
|
||||
.nav
|
||||
@extend .text-label
|
||||
@include position(absolute, top, left, 0, 0)
|
||||
@include size(100%, $nav-height)
|
||||
align-items: center
|
||||
background: $nav-background
|
||||
border-color: $nav-background
|
||||
color: $nav-color
|
||||
display: flex
|
||||
justify-content: space-between
|
||||
padding: $nav-padding
|
||||
z-index: 10
|
||||
width: 100%
|
||||
|
||||
&.fixed
|
||||
animation: $nav-animation
|
||||
background: $nav-color
|
||||
border-color: $nav-color
|
||||
color: $nav-background
|
||||
position: fixed
|
||||
|
||||
@media (min-width: #{$screen-size-small})
|
||||
height: $nav-height-small
|
||||
|
||||
.nav-menu
|
||||
@include size(100%)
|
||||
justify-content: flex-end
|
||||
border-color: inherit
|
||||
display: flex
|
||||
margin: 0
|
||||
|
||||
@media (max-width: #{$screen-size-small})
|
||||
@include position(absolute, top, left, $nav-height, 0)
|
||||
flex-flow: row wrap
|
||||
|
||||
.nav-checkbox:checked + &
|
||||
background: inherit
|
||||
|
||||
.nav-item
|
||||
@include visibility(visible)
|
||||
|
||||
& + .nav-button:before
|
||||
color: color(grey)
|
||||
|
||||
.nav-item
|
||||
align-items: center
|
||||
border-color: inherit
|
||||
display: flex
|
||||
height: 100%
|
||||
position: relative
|
||||
|
||||
&--active
|
||||
font-weight: bold
|
||||
|
||||
@media (min-width: #{$screen-size-small})
|
||||
margin-right: $nav-item-spacing
|
||||
|
||||
&--active:after
|
||||
@include triangle-down($nav-triangle-size)
|
||||
@include position(absolute, bottom, left, -$nav-triangle-size, calc(50% - #{$nav-triangle-size}))
|
||||
|
||||
@media (max-width: #{$screen-size-small})
|
||||
@include size(100%, auto)
|
||||
@include visibility(hidden)
|
||||
background: inherit
|
||||
border-top: $nav-mobile-border
|
||||
font-size: $nav-mobile-font-size
|
||||
justify-content: center
|
||||
padding: $nav-mobile-padding
|
||||
|
||||
.nav-button
|
||||
@media (max-width: #{$screen-size-small})
|
||||
@include icon(menu, none, $nav-mobile-padding 0 0 0, $nav-icon-size)
|
||||
cursor: pointer
|
||||
padding: 0 1em 1em 0
|
||||
|
||||
.nav-checkbox
|
||||
display: none
|
65
website/assets/css/_layout/_sidebar.sass
Normal file
|
@ -0,0 +1,65 @@
|
|||
// Sidebar - Variables
|
||||
// ============================================================================
|
||||
|
||||
$sidebar-breakpoint : 900px
|
||||
$sidebar-highlight-color : color($theme)
|
||||
$sidebar-margin-left : 4rem
|
||||
$sidebar-margin-right : 6rem
|
||||
$sidebar-margin-top : $height-navbar
|
||||
$sidebar-menu-spacing : 3rem
|
||||
$sidebar-small-border : 1px solid color(grey, light)
|
||||
$sidebar-small-padding : 2rem 3rem
|
||||
$sidebar-width : $width-sidebar
|
||||
|
||||
|
||||
// Sidebar - Style
|
||||
// ============================================================================
|
||||
|
||||
// .sidebar - sidebar
|
||||
// .fixed - sticky version
|
||||
// .menu - menu list in sidebar
|
||||
// .active - active menu item
|
||||
// .sidebar-label - menu label
|
||||
|
||||
.sidebar
|
||||
@media (min-width: #{$sidebar-breakpoint})
|
||||
flex: 0 0 $sidebar-width
|
||||
margin-right: $sidebar-margin-right
|
||||
margin-left: $sidebar-margin-left
|
||||
padding-top: $height-navbar
|
||||
width: $sidebar-width
|
||||
|
||||
&.fixed .sidebar-body
|
||||
@include position(fixed, top, left, $sidebar-margin-top, $sidebar-margin-left)
|
||||
@include size($sidebar-width, calc(100vh - #{$sidebar-margin-top}))
|
||||
overflow: auto
|
||||
transition: none
|
||||
|
||||
@media (max-width: #{$sidebar-breakpoint})
|
||||
border-bottom: $sidebar-small-border
|
||||
flex: 100%
|
||||
width: 100%
|
||||
|
||||
.sidebar-body
|
||||
display: flex
|
||||
flex-flow: row wrap
|
||||
|
||||
.sidebar-menu
|
||||
@media (min-width: #{$sidebar-breakpoint})
|
||||
margin-bottom: $sidebar-menu-spacing
|
||||
|
||||
@media (max-width: #{$sidebar-breakpoint})
|
||||
flex: 1
|
||||
margin: 0
|
||||
padding: $sidebar-small-padding
|
||||
border-top: $sidebar-small-border
|
||||
|
||||
&:not(:last-child)
|
||||
border-right: $sidebar-small-border
|
||||
|
||||
.active
|
||||
color: $sidebar-highlight-color
|
||||
font-weight: bold
|
||||
|
||||
.sidebar-menu[data-label]:before
|
||||
@extend .label
|
23
website/assets/css/_utils/_functions.sass
Normal file
|
@ -0,0 +1,23 @@
|
|||
// Functions
|
||||
// ============================================================================
|
||||
|
||||
// Helper to round to decimals (used for rem units)
|
||||
// $calculation - value or performed calculation
|
||||
|
||||
@function round-dec($calculation)
|
||||
@return round($calculation * 10) / 10
|
||||
|
||||
|
||||
// Helper for colors (refers to $colors in colors)
|
||||
// $color-name - name of predefined color (i.e. blue)
|
||||
// $color-variant - predefined hue (default: base)
|
||||
|
||||
@function color($color-name, $color-variant: base)
|
||||
@return map-get(map-get($colors, $color-name), $color-variant)
|
||||
|
||||
|
||||
// Helper for patterns, returns pattern image of color
|
||||
// $color-name - name of predefined color (i.e. blue)
|
||||
|
||||
@function pattern($color-name)
|
||||
@return url('../img/pattern_#{$color-name}.jpg') center center repeat scroll
|
96
website/assets/css/_utils/_mixins.sass
Normal file
|
@ -0,0 +1,96 @@
|
|||
// Mixins
|
||||
// ============================================================================
|
||||
|
||||
// Helper for position
|
||||
// $position - valid position value (static, absolute, fixed, relative)
|
||||
// $pos-y - position direction Y (top, bottom)
|
||||
// $pos-x - position direction X (left, right)
|
||||
// $pos-y-value - value of position Y direction
|
||||
// $pos-x-value - value of position X direction
|
||||
|
||||
@mixin position($position, $pos-y, $pos-x, $pos-y-value, $pos-x-value)
|
||||
position: $position
|
||||
#{$pos-y}: $pos-y-value
|
||||
#{$pos-x}: $pos-x-value
|
||||
|
||||
|
||||
// Helper for width and height
|
||||
// $width - width of element
|
||||
// $height - height of element (default: $width)
|
||||
|
||||
@mixin size($width, $height: $width)
|
||||
height: $height
|
||||
width: $width
|
||||
|
||||
|
||||
// Icon before or after an element
|
||||
// $icon-name - name of icon, refers to icon specified in settings
|
||||
// $icon-color - color of icon (default: no color specified)
|
||||
// $icon-padding - padding around icon (in shorthand style, default: 0)
|
||||
// $icon-size - font size of icon (default: no size specified)
|
||||
|
||||
@mixin icon($icon-name, $icon-color: none, $icon-padding: 0, $icon-size: none)
|
||||
&:before
|
||||
@extend %icon
|
||||
content: map-get($icons, $icon-name)
|
||||
padding: $icon-padding
|
||||
|
||||
@if $icon-color != none
|
||||
color: $icon-color
|
||||
|
||||
@if $icon-size != none
|
||||
font-size: $icon-size
|
||||
|
||||
|
||||
// Triangle pointing down
|
||||
// $triangle-size - width of the triangle
|
||||
|
||||
@mixin triangle-down($triangle-size)
|
||||
@include size(0)
|
||||
border-color: transparent
|
||||
border-style: solid
|
||||
border-top-color: inherit
|
||||
border-width: $triangle-size $triangle-size 0 $triangle-size
|
||||
content: ''
|
||||
|
||||
|
||||
// Make element visible or invisible (included as mixin to work in media queries)
|
||||
// $visibility-state - visible or invisible
|
||||
// $visibility-transition - transition (default: $transition)
|
||||
|
||||
@mixin visibility($visibility-state, $visibility-transition: $transition)
|
||||
transition: $visibility-transition
|
||||
|
||||
@if $visibility-state == hidden
|
||||
opacity: 0
|
||||
pointer-events: none
|
||||
visibility: hidden
|
||||
|
||||
@else
|
||||
opacity: 1
|
||||
pointer-events: initial
|
||||
visibility: visible
|
||||
|
||||
|
||||
// Scroll shadows for reponsive tables
|
||||
// adapted from David Bushell, http://codepen.io/dbushell/pen/wGaamR
|
||||
// $scroll-shadow-color - color of shadow
|
||||
// $scroll-shadow-side - side to cover shadow (left or right)
|
||||
// $scroll-shadow-background - original background color to match
|
||||
|
||||
@mixin scroll-shadow-base($scroll-shadow-color)
|
||||
background: radial-gradient(left, ellipse, rgba(0,0,0, .2) 0%, rgba(0,0,0, 0) 75%) 0 center, radial-gradient(right, ellipse, rgba(0,0,0, .2) 0%, rgba(0,0,0, 0) 75%) 100% center
|
||||
background-size: 10px 100%, 10px 100%
|
||||
background-attachment: scroll, scroll
|
||||
background-repeat: no-repeat
|
||||
|
||||
@mixin scroll-shadow-cover($scroll-shadow-side, $scroll-shadow-background)
|
||||
$scroll-gradient-direction: right !default
|
||||
|
||||
@if $scroll-shadow-side == right
|
||||
$scroll-gradient-direction: left
|
||||
background-position: 100% 0
|
||||
|
||||
background-image: linear-gradient(to #{$scroll-gradient-direction}, rgba($scroll-shadow-background, 1) 50%, rgba($scroll-shadow-background, 0) 100%)
|
||||
background-repeat: no-repeat
|
||||
background-size: 20px 100%
|
93
website/assets/css/_variables.scss
Normal file
|
@ -0,0 +1,93 @@
|
|||
// Variables
|
||||
// ============================================================================
|
||||
|
||||
// Settings and Sizes
|
||||
|
||||
$theme : blue !default;
|
||||
|
||||
$base-font-size : 10px !default;
|
||||
|
||||
$width-logo : 500px, 250px, 100px, 65px !default;
|
||||
$width-content : 800px;
|
||||
$width-aside : 300px;
|
||||
$width-sidebar : 230px;
|
||||
$width-profile : 160px;
|
||||
$height-navbar : 55px;
|
||||
|
||||
$border-radius : 4px;
|
||||
$image-ratio : 3 / 1;
|
||||
$transition : all 0.2s;
|
||||
$social-buttons : twitter, reddit, hackernews, producthunt;
|
||||
|
||||
$screen-size-small : 480px;
|
||||
$screen-size-medium : 800px;
|
||||
$screen-size-large : 1200px;
|
||||
|
||||
|
||||
// Grid Columns
|
||||
|
||||
$columns: ( fifth, 20% ),
|
||||
( quarter, 25% ),
|
||||
( third, (100% / 3) ),
|
||||
( half, 50% ),
|
||||
( two-thirds, (100% / 1.5) ),
|
||||
( full, 100% );
|
||||
|
||||
// Fonts
|
||||
|
||||
$font-primary : Lato, Tahoma, Geneva, sans-serif !default;
|
||||
$font-secondary : 'Work Sans', 'Arial Black', Gadget, sans-serif !default;
|
||||
$font-code : 'Source Code Pro', Consolas, 'Andale Mono', Menlo, Monaco, Courier, monospace !default;
|
||||
$font-icons : Icomoon !default;
|
||||
|
||||
|
||||
// Colors
|
||||
// only to be used with the color() function, i.e. color(blue, light)
|
||||
|
||||
$colors: (
|
||||
blue : ( base: #09a3d5, dark: #008ebc, light: #e2f7fe ),
|
||||
red : ( base: #e4514f, dark: #dd2422, light: #fceeed ),
|
||||
grey : ( base: #dddddd, dark: #999999, light: #f6f6f6 ),
|
||||
black : ( base: #222222, dark: #000000 ),
|
||||
white : ( base: #ffffff ),
|
||||
yellow : ( base: #f4c025 ),
|
||||
green : ( base: #3ec930 ),
|
||||
purple : ( base: #8130c9 ),
|
||||
orange : ( base: #f47725 ),
|
||||
|
||||
social: (
|
||||
twitter : #5ea9dd,
|
||||
hackernews : #ff6600,
|
||||
reddit : #ff4500,
|
||||
producthunt : #da552f,
|
||||
github : #000000,
|
||||
linkedin : #0077b5,
|
||||
facebook : #3b5999,
|
||||
medium : #02b875,
|
||||
),
|
||||
);
|
||||
|
||||
|
||||
// Icons
|
||||
|
||||
$icons: (
|
||||
website : '\1f310',
|
||||
search : '\1f50d',
|
||||
feed : '\1f525',
|
||||
quote : '\275d',
|
||||
twitter : '\e900',
|
||||
github : '\e901',
|
||||
producthunt : '\e902',
|
||||
linkedin : '\e903',
|
||||
hackernews : '\e904',
|
||||
reddit : '\e905',
|
||||
facebook : '\e906',
|
||||
medium : '\e907',
|
||||
codepen : '\e908',
|
||||
dash : '\2014',
|
||||
bullet : '\2022',
|
||||
menu : '\2261',
|
||||
close : '\2715',
|
||||
copyright : '\00a9',
|
||||
permalink : '\0023',
|
||||
);
|
42
website/assets/css/_vendors/_displacy.sass
Normal file
|
@ -0,0 +1,42 @@
|
|||
// displaCy Custom Visualization - Variables
|
||||
// ============================================================================
|
||||
|
||||
$displacy-classes: ( bad: color(red), good: color(green), highlight: color(yellow), lowlight: color(grey, dark) )
|
||||
$displacy-word-margin : 3rem
|
||||
|
||||
|
||||
// displaCy Custom Visualization - Style
|
||||
// ============================================================================
|
||||
|
||||
// displaCy visualization (refers to exports from displaCy v1)
|
||||
// .word - token container
|
||||
// .word span - word
|
||||
// .arrow:before - arrow label
|
||||
// .word:after - part-of-speech tag
|
||||
// .arrow.#{$displacy-class}:before - arrow with special styling
|
||||
// .arrow.#{$displacy-class}:after - arrow head with special styling
|
||||
// .word.#{$displacy-class} span - word with special styling
|
||||
// $displacy-classes - refers to $displacy-classes in settings
|
||||
|
||||
#displacy
|
||||
width: 100%
|
||||
|
||||
.word
|
||||
margin-top: $displacy-word-margin
|
||||
|
||||
.word span
|
||||
@extend .h4
|
||||
|
||||
.arrow:before,
|
||||
.word:after
|
||||
@extend .text-label
|
||||
|
||||
@each $displacy-class, $displacy-color in $displacy-classes
|
||||
.arrow.#{$displacy-class}:before
|
||||
border-color: $displacy-color
|
||||
|
||||
.arrow.#{$displacy-class}:after
|
||||
border-top-color: $displacy-color
|
||||
|
||||
.word.#{$displacy-class} span
|
||||
color: $displacy-color
|
181
website/assets/css/_vendors/_normalize.sass
Normal file
|
@ -0,0 +1,181 @@
|
|||
// Normalize
|
||||
// ============================================================================
|
||||
|
||||
// adapted from normalize.css, https://github.com/necolas/normalize.css
|
||||
|
||||
html
|
||||
font-family: sans-serif
|
||||
-ms-text-size-adjust: 100%
|
||||
-webkit-text-size-adjust: 100%
|
||||
|
||||
body
|
||||
margin: 0
|
||||
|
||||
article,
|
||||
aside,
|
||||
details,
|
||||
figcaption,
|
||||
figure,
|
||||
footer,
|
||||
header,
|
||||
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: none
|
||||
text-decoration: underline
|
||||
text-decoration: underline dotted
|
||||
|
||||
b,
|
||||
strong
|
||||
font-weight: inherit
|
||||
|
||||
b,
|
||||
strong
|
||||
font-weight: bolder
|
||||
|
||||
dfn
|
||||
font-style: italic
|
||||
|
||||
h1
|
||||
font-size: 2em
|
||||
margin: 0.67em 0
|
||||
|
||||
mark
|
||||
background-color: #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
|
||||
overflow: visible
|
||||
|
||||
pre
|
||||
overflow: auto
|
||||
|
||||
code,
|
||||
kbd,
|
||||
pre,
|
||||
samp
|
||||
font-family: monospace, monospace
|
||||
font-size: 1em
|
||||
|
||||
button,
|
||||
input,
|
||||
optgroup,
|
||||
select,
|
||||
textarea
|
||||
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
|
||||
|
||||
input,
|
||||
button
|
||||
&::-moz-focus-inner
|
||||
border: 0
|
||||
padding: 0
|
||||
|
||||
&:-moz-focusring
|
||||
outline: 1px dotted ButtonText
|
||||
|
||||
input
|
||||
line-height: normal
|
||||
|
||||
&[type="checkbox"],
|
||||
&[type="radio"]
|
||||
box-sizing: border-box
|
||||
padding: 0
|
||||
|
||||
&[type="number"]::-webkit-inner-spin-button,
|
||||
&[type="number"]::-webkit-outer-spin-button
|
||||
height: auto
|
||||
|
||||
&[type="search"]
|
||||
-webkit-appearance: textfield
|
||||
|
||||
&[type="search"]::-webkit-search-cancel-button,
|
||||
&[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
|
77
website/assets/css/_vendors/_prism.sass
Normal file
|
@ -0,0 +1,77 @@
|
|||
// prism.js Syntax Highlighting
|
||||
// ============================================================================
|
||||
|
||||
// Commment, prolog, doctype, CDATA, punctuation
|
||||
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.doctype,
|
||||
.token.cdata,
|
||||
.token.punctuation
|
||||
color: color(grey, dark)
|
||||
|
||||
|
||||
// Property, tag, constant, symbol, deleted
|
||||
|
||||
.token.property,
|
||||
.token.tag,
|
||||
.token.constant,
|
||||
.token.symbol,
|
||||
.token.deleted
|
||||
color: color(green)
|
||||
|
||||
|
||||
// Boolean, number
|
||||
|
||||
.token.boolean,
|
||||
.token.number
|
||||
color: color(purple)
|
||||
|
||||
|
||||
// Selector, attribute name, string, char, built in, inserted
|
||||
|
||||
.token.selector,
|
||||
.token.attr-name,
|
||||
.token.string,
|
||||
.token.char,
|
||||
.token.builtin,
|
||||
.token.inserted
|
||||
color: color(blue)
|
||||
|
||||
|
||||
// Operator, entity, URL, CSS string, variable
|
||||
|
||||
.token.operator,
|
||||
.token.entity,
|
||||
.token.url,
|
||||
.language-css .token.string,
|
||||
.style .token.string,
|
||||
.token.variable
|
||||
color: color(red)
|
||||
|
||||
|
||||
// @-rule, attribute value, function
|
||||
|
||||
.token.atrule,
|
||||
.token.attr-value,
|
||||
.token.function
|
||||
color: color(blue)
|
||||
|
||||
|
||||
// Keyword
|
||||
|
||||
.token.keyword
|
||||
color: color(red)
|
||||
|
||||
|
||||
// Regex, important
|
||||
|
||||
.token.regex,
|
||||
.token.important
|
||||
color: color(yellow)
|
||||
|
||||
|
||||
// Italic
|
||||
|
||||
.token.italic
|
||||
font-style: italic
|
60
website/assets/css/style.sass
Normal file
|
@ -0,0 +1,60 @@
|
|||
// Style
|
||||
// ============================================================================
|
||||
|
||||
// Variables
|
||||
|
||||
@import variables
|
||||
|
||||
|
||||
// Utilities
|
||||
|
||||
@import _utils/functions
|
||||
@import _utils/mixins
|
||||
|
||||
|
||||
// Base
|
||||
|
||||
@import _base/animations
|
||||
@import _base/fonts
|
||||
@import _base/reset
|
||||
@import _base/grid
|
||||
@import _base/typography
|
||||
|
||||
|
||||
// Layout
|
||||
|
||||
@import _layout/article
|
||||
@import _layout/body
|
||||
@import _layout/footer
|
||||
@import _layout/header
|
||||
@import _layout/nav
|
||||
@import _layout/sidebar
|
||||
|
||||
|
||||
// Components
|
||||
|
||||
@import _components/alerts
|
||||
@import _components/asides
|
||||
@import _components/boxes
|
||||
@import _components/buttons
|
||||
@import _components/cards
|
||||
@import _components/code
|
||||
@import _components/dividers
|
||||
@import _components/embeds
|
||||
@import _components/forms
|
||||
@import _components/icons
|
||||
@import _components/links
|
||||
@import _components/logo
|
||||
@import _components/images
|
||||
@import _components/labels
|
||||
@import _components/lists
|
||||
@import _components/misc
|
||||
@import _components/quotes
|
||||
@import _components/tables
|
||||
@import _components/tooltips
|
||||
|
||||
|
||||
// Vendors
|
||||
|
||||
@import _vendors/prism
|
||||
@import _vendors/displacy
|
6
website/assets/css/style_blog.sass
Normal file
|
@ -0,0 +1,6 @@
|
|||
// Style Blog
|
||||
// ============================================================================
|
||||
|
||||
$theme: red
|
||||
|
||||
@import style
|
BIN
website/assets/fonts/icomoon.eot
Normal file
27
website/assets/fonts/icomoon.svg
Normal file
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Generated by IcoMoon</metadata>
|
||||
<defs>
|
||||
<font id="icomoon" horiz-adv-x="1024">
|
||||
<font-face units-per-em="1024" ascent="960" descent="-64" />
|
||||
<missing-glyph horiz-adv-x="1024" />
|
||||
<glyph unicode=" " horiz-adv-x="512" d="" />
|
||||
<glyph unicode="#" glyph-name="link" d="M440.236 324.234c-13.31 0-26.616 5.076-36.77 15.23-95.134 95.136-95.134 249.934 0 345.070l192 192c46.088 46.086 107.36 71.466 172.534 71.466s126.448-25.38 172.536-71.464c95.132-95.136 95.132-249.934 0-345.070l-87.766-87.766c-20.308-20.308-53.23-20.308-73.54 0-20.306 20.306-20.306 53.232 0 73.54l87.766 87.766c54.584 54.586 54.584 143.404 0 197.99-26.442 26.442-61.6 41.004-98.996 41.004s-72.552-14.562-98.996-41.006l-192-191.998c-54.586-54.586-54.586-143.406 0-197.992 20.308-20.306 20.306-53.232 0-73.54-10.15-10.152-23.462-15.23-36.768-15.23zM256-52c-65.176 0-126.45 25.38-172.534 71.464-95.134 95.136-95.134 249.934 0 345.070l87.764 87.764c20.308 20.306 53.234 20.306 73.54 0 20.308-20.306 20.308-53.232 0-73.54l-87.764-87.764c-54.586-54.586-54.586-143.406 0-197.992 26.44-26.44 61.598-41.002 98.994-41.002s72.552 14.562 98.998 41.006l192 191.998c54.584 54.586 54.584 143.406 0 197.992-20.308 20.308-20.306 53.232 0 73.54 20.306 20.306 53.232 20.306 73.54-0.002 95.132-95.134 95.132-249.932 0.002-345.068l-192.002-192c-46.090-46.088-107.364-71.466-172.538-71.466z" />
|
||||
<glyph unicode="•" glyph-name="Bullet" d="M768 426.667c0 70.699-28.672 134.699-74.965 181.035-46.336 46.293-110.336 74.965-181.035 74.965-70.656 0-134.656-28.672-180.992-74.965-46.336-46.336-75.008-110.336-75.008-181.035 0-70.656 28.672-134.656 75.008-180.992s110.336-75.008 180.992-75.008c70.699 0 134.699 28.672 181.035 75.008 46.293 46.336 74.965 110.336 74.965 180.992z" />
|
||||
<glyph unicode="≡" glyph-name="menu" d="M128 725.334h768q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-768q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5zM128 213.334h768q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-768q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5zM128 469.334h768q17.667 0 30.167-12.5t12.5-30.167-12.5-30.167-30.167-12.5h-768q-17.667 0-30.167 12.5t-12.5 30.167 12.5 30.167 30.167 12.5z" />
|
||||
<glyph unicode="✕" glyph-name="cross" d="M810.667 768q18.333 0 30.5-12.167t12.167-30.5q0-18-12.333-30.333l-268.667-268.333 268.667-268.333q12.333-12.333 12.333-30.333 0-18.333-12.167-30.5t-30.5-12.167q-18 0-30.333 12.333l-268.333 268.667-268.333-268.667q-12.333-12.333-30.333-12.333-18.333 0-30.5 12.167t-12.167 30.5q0 18 12.333 30.333l268.667 268.333-268.667 268.333q-12.333 12.333-12.333 30.333 0 18.333 12.167 30.5t30.5 12.167q18 0 30.333-12.333l268.333-268.667 268.333 268.667q12.333 12.333 30.333 12.333z" />
|
||||
<glyph unicode="❝" glyph-name="Quote" d="M1024 64v384h-256c0 141.12 114.752 256 256 256v128c-211.744 0-384-172.256-384-384v-384h384zM384 64v384h-256c0 141.12 114.752 256 256 256v128c-211.744 0-384-172.256-384-384v-384h384z" />
|
||||
<glyph unicode="" glyph-name="Twitter" d="M1024 733.6c-37.6-16.8-78.2-28-120.6-33 43.4 26 76.6 67.2 92.4 116.2-40.6-24-85.6-41.6-133.4-51-38.4 40.8-93 66.2-153.4 66.2-116 0-210-94-210-210 0-16.4 1.8-32.4 5.4-47.8-174.6 8.8-329.4 92.4-433 219.6-18-31-28.4-67.2-28.4-105.6 0-72.8 37-137.2 93.4-174.8-34.4 1-66.8 10.6-95.2 26.2 0-0.8 0-1.8 0-2.6 0-101.8 72.4-186.8 168.6-206-17.6-4.8-36.2-7.4-55.4-7.4-13.6 0-26.6 1.4-39.6 3.8 26.8-83.4 104.4-144.2 196.2-146-72-56.4-162.4-90-261-90-17 0-33.6 1-50.2 3 93.2-59.8 203.6-94.4 322.2-94.4 386.4 0 597.8 320.2 597.8 597.8 0 9.2-0.2 18.2-0.6 27.2 41 29.4 76.6 66.4 104.8 108.6z" />
|
||||
<glyph unicode="" glyph-name="Github" d="M512.008 947.358c-282.738 0-512.008-229.218-512.008-511.998 0-226.214 146.704-418.132 350.136-485.836 25.586-4.738 34.992 11.11 34.992 24.632 0 12.204-0.48 52.542-0.696 95.324-142.448-30.976-172.504 60.41-172.504 60.41-23.282 59.176-56.848 74.916-56.848 74.916-46.452 31.778 3.51 31.124 3.51 31.124 51.4-3.61 78.476-52.766 78.476-52.766 45.672-78.27 119.776-55.64 149.004-42.558 4.588 33.086 17.852 55.68 32.506 68.464-113.73 12.942-233.276 56.85-233.276 253.032 0 55.898 20.004 101.574 52.76 137.428-5.316 12.9-22.854 64.972 4.952 135.5 0 0 43.006 13.752 140.84-52.49 40.836 11.348 84.636 17.036 128.154 17.234 43.502-0.198 87.336-5.886 128.256-17.234 97.734 66.244 140.656 52.49 140.656 52.49 27.872-70.528 10.35-122.6 5.036-135.5 32.82-35.856 52.694-81.532 52.694-137.428 0-196.654-119.778-239.95-233.79-252.624 18.364-15.89 34.724-47.046 34.724-94.812 0-68.508-0.596-123.644-0.596-140.508 0-13.628 9.222-29.594 35.172-24.566 203.322 67.776 349.842 259.626 349.842 485.768 0 282.78-229.234 511.998-511.992 511.998z" />
|
||||
<glyph unicode="" glyph-name="product-hunt" d="M657.143 515.428q0-32-22.571-54.286t-54.571-22.286h-144.571v153.714h144.571q32 0 54.571-22.571t22.571-54.571zM759.429 515.428q0 74.286-52.286 126.857t-127.143 52.571h-247.429v-512h102.857v153.714h144.571q74.286 0 126.857 52.286t52.571 126.571zM1024 438.857q0-104-40.571-198.857t-109.143-163.429-163.429-109.143-198.857-40.571-198.857 40.571-163.429 109.143-109.143 163.429-40.571 198.857 40.571 198.857 109.143 163.429 163.429 109.143 198.857 40.571 198.857-40.571 163.429-109.143 109.143-163.429 40.571-198.857z" />
|
||||
<glyph unicode="" glyph-name="linkedin-square" horiz-adv-x="878" d="M135.429 142.857h132v396.571h-132v-396.571zM276 661.714q-0.571 29.714-20.571 49.143t-53.143 19.429-54-19.429-20.857-49.143q0-29.143 20.286-48.857t52.857-19.714h0.571q33.714 0 54.286 19.714t20.571 48.857zM610.286 142.857h132v227.429q0 88-41.714 133.143t-110.286 45.143q-77.714 0-119.429-66.857h1.143v57.714h-132q1.714-37.714 0-396.571h132v221.714q0 21.714 4 32 8.571 20 25.714 34t42.286 14q66.286 0 66.286-89.714v-212zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" />
|
||||
<glyph unicode="" glyph-name="Hacker-News" horiz-adv-x="878" d="M462.286 386.286l152 285.143h-64l-89.714-178.286q-13.714-27.429-25.143-52.571l-24 52.571-88.571 178.286h-68.571l150.286-281.714v-185.143h57.714v181.714zM877.714 722.286v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" />
|
||||
<glyph unicode="" glyph-name="reddit" d="M256 310.857c0 35.346 28.654 64 64 64s64-28.654 64-64c0-35.346-28.654-64-64-64s-64 28.654-64 64zM640 310.857c0 35.346 28.654 64 64 64s64-28.654 64-64c0-35.346-28.654-64-64-64s-64 28.654-64 64zM643.112 174.079c16.482 12.986 40.376 10.154 53.364-6.332s10.152-40.378-6.334-53.366c-45.896-36.158-115.822-59.524-178.142-59.524-62.322 0-132.248 23.366-178.144 59.522-16.486 12.99-19.32 36.882-6.332 53.368 12.99 16.482 36.882 19.318 53.366 6.332 26.422-20.818 78.722-43.222 131.11-43.222s104.688 22.404 131.112 43.222zM1024 438.857c0 70.692-57.308 128-128 128-48.116 0-89.992-26.57-111.852-65.82-65.792 35.994-145.952 59.246-233.28 64.608l76.382 171.526 146.194-42.2c13.152-37.342 48.718-64.114 90.556-64.114 53.020 0 96 42.98 96 96s-42.98 96-96 96c-36.56 0-68.342-20.442-84.554-50.514l-162.906 47.024c-18.224 5.258-37.538-3.722-45.252-21.052l-103.77-233.026c-85.138-5.996-163.262-29.022-227.636-64.236-21.864 39.25-63.766 65.804-111.882 65.804-70.692 0-128-57.308-128-128 0-52.312 31.402-97.254 76.372-117.102-8.070-24.028-12.372-49.104-12.372-74.898 0-176.73 200.576-320 448-320 247.422 0 448 143.27 448 320 0 25.792-4.3 50.862-12.368 74.886 44.97 19.85 76.368 64.802 76.368 117.114zM864 762.857c19.882 0 36-16.118 36-36s-16.118-36-36-36-36 16.118-36 36 16.118 36 36 36zM64 438.857c0 35.29 28.71 64 64 64 25.508 0 47.572-15.004 57.846-36.646-33.448-25.366-61.166-54.626-81.666-86.738-23.524 9.47-40.18 32.512-40.18 59.384zM512 2.857c-205.45 0-372 109.242-372 244s166.55 244 372 244c205.45 0 372-109.242 372-244s-166.55-244-372-244zM919.82 379.473c-20.5 32.112-48.218 61.372-81.666 86.738 10.276 21.642 32.338 36.646 57.846 36.646 35.29 0 64-28.71 64-64 0-26.872-16.656-49.914-40.18-59.384z" />
|
||||
<glyph unicode="" glyph-name="Facebook" horiz-adv-x="878" d="M713.143 877.714q68 0 116.286-48.286t48.286-116.286v-548.571q0-68-48.286-116.286t-116.286-48.286h-107.429v340h113.714l17.143 132.571h-130.857v84.571q0 32 13.429 48t52.286 16l69.714 0.571v118.286q-36 5.143-101.714 5.143-77.714 0-124.286-45.714t-46.571-129.143v-97.714h-114.286v-132.571h114.286v-340h-304q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571z" />
|
||||
<glyph unicode="" glyph-name="Medium" d="M341.143 710.286v-670.286q0-14.286-7.143-24.286t-20.857-10q-9.714 0-18.857 4.571l-265.714 133.143q-12 5.714-20.286 19.143t-8.286 26.571v651.429q0 11.429 5.714 19.429t16.571 8q8 0 25.143-8.571l292-146.286q1.714-1.714 1.714-2.857zM377.714 652.571l305.143-494.857-305.143 152v342.857zM1024 642.286v-602.286q0-14.286-8-23.143t-21.714-8.857-26.857 7.429l-252 125.714zM1022.286 710.857q0-1.714-146.571-239.714t-171.714-278.571l-222.857 362.286 185.143 301.143q9.714 16 29.714 16 8 0 14.857-3.429l309.143-154.286q2.286-1.143 2.286-3.429z" />
|
||||
<glyph unicode="" glyph-name="codepen" d="M945.75 582.815l-448 298.666c-10.748 7.166-24.752 7.166-35.5 0l-448-298.666c-8.902-5.934-14.25-15.926-14.25-26.624v-298.666c0-10.7 5.348-20.692 14.25-26.624l448-298.666c5.374-3.584 11.562-5.376 17.75-5.376s12.376 1.792 17.75 5.376l448 298.666c8.902 5.934 14.25 15.926 14.25 26.624v298.666c0 10.698-5.348 20.69-14.25 26.624zM480 295.981l-166.312 110.876 166.312 110.874 166.312-110.874-166.312-110.876zM512 573.315v221.75l358.31-238.876-166.31-110.874-192 128zM448 573.315l-192-128-166.312 110.874 358.312 238.876v-221.75zM198.312 406.857l-134.312-89.542v179.082l134.312-89.54zM256 368.399l192-128v-221.748l-358.312 238.872 166.312 110.876zM512 240.399l192 128 166.312-110.876-358.312-238.874v221.75zM761.688 406.857l134.312 89.54v-179.084l-134.312 89.544z" />
|
||||
<glyph unicode="🌐" glyph-name="Globe" d="M480 896c-265.096 0-480-214.904-480-480 0-265.098 214.904-480 480-480 265.098 0 480 214.902 480 480 0 265.096-214.902 480-480 480zM751.59 256c8.58 40.454 13.996 83.392 15.758 128h127.446c-3.336-44.196-13.624-87.114-30.68-128h-112.524zM208.41 576c-8.58-40.454-13.996-83.392-15.758-128h-127.444c3.336 44.194 13.622 87.114 30.678 128h112.524zM686.036 576c9.614-40.962 15.398-83.854 17.28-128h-191.316v128h174.036zM512 640v187.338c14.59-4.246 29.044-11.37 43.228-21.37 26.582-18.74 52.012-47.608 73.54-83.486 14.882-24.802 27.752-52.416 38.496-82.484h-155.264zM331.232 722.484c21.528 35.878 46.956 64.748 73.54 83.486 14.182 10 28.638 17.124 43.228 21.37v-187.34h-155.264c10.746 30.066 23.616 57.68 38.496 82.484zM448 576v-128h-191.314c1.88 44.146 7.666 87.038 17.278 128h174.036zM95.888 256c-17.056 40.886-27.342 83.804-30.678 128h127.444c1.762-44.608 7.178-87.546 15.758-128h-112.524zM256.686 384h191.314v-128h-174.036c-9.612 40.96-15.398 83.854-17.278 128zM448 192v-187.34c-14.588 4.246-29.044 11.372-43.228 21.37-26.584 18.74-52.014 47.61-73.54 83.486-14.882 24.804-27.75 52.418-38.498 82.484h155.266zM628.768 109.516c-21.528-35.876-46.958-64.746-73.54-83.486-14.184-9.998-28.638-17.124-43.228-21.37v187.34h155.266c-10.746-30.066-23.616-57.68-38.498-82.484zM512 256v128h191.314c-1.88-44.146-7.666-87.040-17.28-128h-174.034zM767.348 448c-1.762 44.608-7.178 87.546-15.758 128h112.524c17.056-40.886 27.344-83.806 30.68-128h-127.446zM830.658 640h-95.9c-18.638 58.762-44.376 110.294-75.316 151.428 42.536-20.34 81.058-47.616 114.714-81.272 21.48-21.478 40.362-44.938 56.502-70.156zM185.844 710.156c33.658 33.658 72.18 60.932 114.714 81.272-30.942-41.134-56.676-92.666-75.316-151.428h-95.898c16.138 25.218 35.022 48.678 56.5 70.156zM129.344 192h95.898c18.64-58.762 44.376-110.294 75.318-151.43-42.536 20.34-81.058 47.616-114.714 81.274-21.48 21.478-40.364 44.938-56.502 70.156zM774.156 121.844c-33.656-33.658-72.18-60.934-114.714-81.274 30.942 41.134 56.678 92.668 75.316 151.43h95.9c-16.14-25.218-35.022-48.678-56.502-70.156z" />
|
||||
<glyph unicode="🔍" glyph-name="Search" d="M426.667 896q78 0 149.167-30.5t122.5-81.833 81.833-122.5 30.5-149.167q0-67-21.833-128.333t-62.167-111.333l242.333-242q12.333-12.333 12.333-30.333 0-18.333-12.167-30.5t-30.5-12.167q-18 0-30.333 12.333l-242 242.333q-50-40.333-111.333-62.167t-128.333-21.833q-78 0-149.167 30.5t-122.5 81.833-81.833 122.5-30.5 149.167 30.5 149.167 81.833 122.5 122.5 81.833 149.167 30.5zM426.667 810.667q-60.667 0-116-23.667t-95.333-63.667-63.667-95.333-23.667-116 23.667-116 63.667-95.333 95.333-63.667 116-23.667 116 23.667 95.333 63.667 63.667 95.333 23.667 116-23.667 116-63.667 95.333-95.333 63.667-116 23.667z" />
|
||||
<glyph unicode="🔥" glyph-name="feed" horiz-adv-x="805" d="M219.429 182.857q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM512 112.571q1.143-16-9.714-27.429-10.286-12-26.857-12h-77.143q-14.286 0-24.571 9.429t-11.429 23.714q-12.571 130.857-105.429 223.714t-223.714 105.429q-14.286 1.143-23.714 11.429t-9.429 24.571v77.143q0 16.571 12 26.857 9.714 9.714 24.571 9.714h2.857q91.429-7.429 174.857-46t148-103.714q65.143-64.571 103.714-148t46-174.857zM804.571 111.428q1.143-15.429-10.286-26.857-10.286-11.429-26.286-11.429h-81.714q-14.857 0-25.429 10t-11.143 24.286q-6.857 122.857-57.714 233.429t-132.286 192-192 132.286-233.429 58.286q-14.286 0.571-24.286 11.143t-10 24.857v81.714q0 16 11.429 26.286 10.286 10.286 25.143 10.286h1.714q149.714-7.429 286.571-68.571t243.143-168q106.857-106.286 168-243.143t68.571-286.571z" />
|
||||
</font></defs></svg>
|
After Width: | Height: | Size: 13 KiB |
BIN
website/assets/fonts/icomoon.ttf
Normal file
BIN
website/assets/fonts/icomoon.woff
Normal file
BIN
website/assets/fonts/lato-bold.eot
Executable file
2787
website/assets/fonts/lato-bold.svg
Executable file
After Width: | Height: | Size: 197 KiB |
BIN
website/assets/fonts/lato-bold.ttf
Executable file
BIN
website/assets/fonts/lato-bold.woff
Executable file
BIN
website/assets/fonts/lato-bold.woff2
Executable file
BIN
website/assets/fonts/lato-bolditalic.eot
Executable file
2800
website/assets/fonts/lato-bolditalic.svg
Executable file
After Width: | Height: | Size: 202 KiB |
BIN
website/assets/fonts/lato-bolditalic.ttf
Executable file
BIN
website/assets/fonts/lato-bolditalic.woff
Executable file
BIN
website/assets/fonts/lato-bolditalic.woff2
Executable file
BIN
website/assets/fonts/lato-italic.eot
Executable file
2805
website/assets/fonts/lato-italic.svg
Executable file
After Width: | Height: | Size: 201 KiB |
BIN
website/assets/fonts/lato-italic.ttf
Executable file
BIN
website/assets/fonts/lato-italic.woff
Executable file
BIN
website/assets/fonts/lato-italic.woff2
Executable file
BIN
website/assets/fonts/lato-regular.eot
Executable file
2788
website/assets/fonts/lato-regular.svg
Executable file
After Width: | Height: | Size: 197 KiB |
BIN
website/assets/fonts/lato-regular.ttf
Executable file
BIN
website/assets/fonts/lato-regular.woff
Executable file
BIN
website/assets/fonts/lato-regular.woff2
Executable file
BIN
website/assets/fonts/sourcecodepro-semibold.eot
Normal file
244
website/assets/fonts/sourcecodepro-semibold.svg
Normal file
|
@ -0,0 +1,244 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata></metadata>
|
||||
<defs>
|
||||
<font id="source_code_prosemibold" horiz-adv-x="1228" >
|
||||
<font-face units-per-em="2048" ascent="1536" descent="-512" />
|
||||
<missing-glyph horiz-adv-x="500" />
|
||||
<glyph horiz-adv-x="0" />
|
||||
<glyph horiz-adv-x="682" />
|
||||
<glyph horiz-adv-x="0" />
|
||||
<glyph horiz-adv-x="0" />
|
||||
<glyph unicode="
" />
|
||||
<glyph unicode=" " />
|
||||
<glyph unicode="!" d="M436 160q0 82 51.5 131t126.5 49q76 0 127.5 -49t51.5 -131q0 -84 -51.5 -134.5t-127.5 -50.5t-127 50.5t-51 134.5zM498 1372h233l-6 -233l-33 -639h-155l-33 639z" />
|
||||
<glyph unicode=""" d="M219 1405h287l-6 -262l-62 -473h-151l-62 473zM725 1405h287l-6 -262l-62 -473h-151l-62 473z" />
|
||||
<glyph unicode="#" d="M160 399v156h176l33 264h-168v156h186l47 356h139l-43 -356h242l45 356h141l-43 -356h162v-156h-180l-33 -264h172v-156h-190l-49 -399h-144l49 399h-241l-47 -399h-144l47 399h-157zM479 555h242l33 264h-242z" />
|
||||
<glyph unicode="$" d="M152 233l106 162q88 -59 178 -96t197 -37q98 0 148 37t50 98q0 53 -46 88t-115.5 65t-149.5 59.5t-149.5 72.5t-115.5 103.5t-46 152.5q0 133 90 217t244 105v268h164v-266q109 -12 185.5 -55.5t139.5 -106.5l-119 -137q-72 53 -136 81.5t-159 28.5q-86 0 -134 -34.5 t-48 -96.5q0 -47 46 -77.5t116 -58.5t150.5 -57.5t150.5 -72.5t116 -105.5t46 -156.5q0 -131 -93.5 -222.5t-260.5 -115.5v-301h-164v297q-106 10 -211 54t-180 107z" />
|
||||
<glyph unicode="%" d="M47 182l379 371l86 -80l-338 -412zM53 991q0 80 23 142.5t61.5 105.5t93 65.5t117.5 22.5t117.5 -22.5t93.5 -65.5t61.5 -105.5t22.5 -142.5t-22.5 -143t-61.5 -108t-93.5 -69t-117.5 -24t-117.5 24t-93 69t-61.5 108.5t-23 142.5zM221 991q0 -113 37 -163t90 -50 t90 50.5t37 162.5q0 115 -36.5 160t-90.5 45q-53 0 -90 -45t-37 -160zM587 319q0 80 23 142.5t61.5 105.5t93 65.5t117.5 22.5t117.5 -22.5t93.5 -65.5t61.5 -105.5t22.5 -142.5t-22.5 -143t-61.5 -108t-93.5 -69t-117.5 -24t-117.5 24t-93 69t-61.5 108.5t-23 142.5z M721 866l338 412l127 -121l-379 -371zM755 319q0 -113 37 -163t90 -50t90 50.5t37 162.5q0 115 -36.5 160t-90.5 45q-53 0 -90 -45t-37 -160z" />
|
||||
<glyph unicode="&" d="M66 352q0 68 19 122t51 99t74 83t89 71q-41 82 -64.5 159t-23.5 144q0 70 22.5 130.5t63.5 105.5t98.5 71.5t128.5 26.5q137 0 214 -78t77 -207q0 -66 -23.5 -119t-62.5 -99t-87 -87t-99 -80q59 -82 132 -159.5t152 -143.5q94 145 140 348h217q-35 -127 -84 -243.5 t-117 -221.5q57 -39 109.5 -65.5t99.5 -40.5l-59 -193q-135 37 -283 140q-74 -63 -165 -101.5t-204 -38.5q-96 0 -174 30t-131 80t-81.5 118.5t-28.5 148.5zM291 367q0 -94 62.5 -151.5t156.5 -57.5q49 0 96 20.5t90 57.5q-86 74 -162.5 158.5t-140.5 176.5 q-45 -45 -73.5 -95t-28.5 -109zM408 1032q0 -88 51 -194q72 51 122 107t50 132q0 53 -22.5 90t-82.5 37q-53 0 -85.5 -47t-32.5 -125z" />
|
||||
<glyph unicode="'" d="M471 1405h287l-6 -262l-62 -473h-151l-62 473z" />
|
||||
<glyph unicode="(" d="M397 569q0 293 120 526.5t327 405.5l131 -108q-195 -176 -285 -375t-90 -449t90 -448.5t285 -374.5l-131 -108q-207 172 -327 405t-120 526z" />
|
||||
<glyph unicode=")" d="M254 -254q195 176 285 374.5t90 448.5t-90 449t-285 375l131 108q207 -172 326.5 -405.5t119.5 -526.5t-119.5 -526t-326.5 -405z" />
|
||||
<glyph unicode="*" d="M152 754l38 120l338 -100l21 375h131l20 -375l338 100l39 -120l-323 -142l211 -329l-109 -76l-242 307l-241 -307l-109 76l211 329z" />
|
||||
<glyph unicode="+" d="M160 590v172h364v387h181v-387h364v-172h-364v-387h-181v387h-364z" />
|
||||
<glyph unicode="," d="M387 -299q260 104 262 315q-10 -2 -28 -2q-78 0 -135.5 46t-57.5 137q0 86 58.5 134t138.5 48q111 0 166 -82t55 -225q0 -188 -102.5 -318.5t-294.5 -193.5z" />
|
||||
<glyph unicode="-" d="M160 590v172h909v-172h-909z" />
|
||||
<glyph unicode="." d="M412 182q0 90 57 148.5t145 58.5t145.5 -58.5t57.5 -148.5t-57.5 -148.5t-145.5 -58.5t-145 58.5t-57 148.5z" />
|
||||
<glyph unicode="/" d="M176 -328l674 1782h203l-674 -1782h-203z" />
|
||||
<glyph unicode="0" d="M131 657q0 332 130 501t353 169t353.5 -169t130.5 -501q0 -330 -130.5 -506t-353.5 -176t-353 176.5t-130 505.5zM344 657q0 -133 20.5 -228t56.5 -154.5t85 -87t108 -27.5q57 0 107.5 27.5t86.5 87t56.5 154.5t20.5 228t-20.5 226.5t-56.5 151t-86.5 83t-107.5 25.5 q-59 0 -108 -25.5t-85 -83t-56.5 -150.5t-20.5 -227zM473 666q0 68 41 106.5t100 38.5t100.5 -39t41.5 -106q0 -68 -41.5 -107t-100.5 -39t-100 39t-41 107z" />
|
||||
<glyph unicode="1" d="M184 0v193h353v856h-273v147q111 18 189.5 44t146.5 63h172v-1110h320v-193h-908z" />
|
||||
<glyph unicode="2" d="M123 1126q94 96 198.5 148.5t247.5 52.5q100 0 182.5 -28.5t140.5 -81t90 -126t32 -163.5q0 -86 -42 -175t-114 -180.5t-171 -187.5t-212 -199q57 4 120.5 9.5t117.5 5.5h368v-201h-948v137q154 131 274.5 240.5t205.5 204t130 176.5t45 157q0 104 -63 165t-186 61 q-86 0 -157 -43t-130 -103z" />
|
||||
<glyph unicode="3" d="M102 160l111 151q66 -59 153 -101t193 -42q121 0 200 52t79 145q0 51 -22.5 92t-73 69.5t-133.5 44t-203 15.5v172q104 0 177.5 15t120 43t68 67t21.5 84q0 82 -62.5 128t-167.5 46q-86 0 -158.5 -34t-138.5 -89l-123 145q90 74 196.5 119t233.5 45q100 0 184.5 -22.5 t145 -66.5t94 -108.5t33.5 -146.5q0 -111 -71.5 -184.5t-192.5 -114.5v-8q63 -16 119.5 -44t98.5 -69t66.5 -94t24.5 -117q0 -90 -40 -159.5t-107.5 -117.5t-157.5 -74t-190 -26q-168 0 -287 53.5t-191 131.5z" />
|
||||
<glyph unicode="4" d="M76 336v160l598 809h272v-787h184v-182h-184v-336h-221v336h-649zM315 518h410v311q2 59 5 129t7 129h-10q-33 -51 -67.5 -102t-69.5 -104z" />
|
||||
<glyph unicode="5" d="M104 156l109 151q66 -55 146.5 -97t193.5 -42q123 0 206 65.5t83 184.5q0 117 -77 180.5t-202 63.5q-72 0 -123 -17.5t-118 -56.5l-113 71l41 644h768v-199h-563l-29 -316q51 20 98 31.5t107 11.5q92 0 174 -24.5t142.5 -74.5t96 -127t35.5 -181q0 -106 -41 -190 t-110.5 -141.5t-158.5 -87.5t-187 -30q-172 0 -286 54.5t-192 126.5z" />
|
||||
<glyph unicode="6" d="M139 612q0 190 46 325.5t124 221.5t177.5 127t207.5 41q129 0 226.5 -43t162.5 -104l-127 -144q-45 43 -109.5 71t-133.5 28q-70 0 -132.5 -25t-110.5 -82t-78 -150.5t-34 -228.5q76 74 166 116t176 42q88 0 162 -24.5t128 -75t85 -126t31 -178.5q0 -98 -37 -177 t-99.5 -134t-144.5 -86t-172 -31q-102 0 -195 38t-164 116t-113 199t-42 284zM367 483q23 -174 98 -250.5t186 -76.5q49 0 91 16t75 48t51.5 78t18.5 105q0 117 -62.5 174.5t-173.5 57.5q-66 0 -139.5 -34t-144.5 -118z" />
|
||||
<glyph unicode="7" d="M135 1104v199h963v-144q-127 -141 -207 -269t-127 -261t-67.5 -286t-28.5 -343h-240q8 174 33.5 318.5t74 274.5t122 254t180.5 257h-703z" />
|
||||
<glyph unicode="8" d="M131 334q0 63 21.5 114.5t58.5 91.5t85 71.5t99 56.5v8q-82 53 -138 127t-56 178q0 80 31.5 143.5t88 108.5t133 69.5t169.5 24.5q195 0 306 -96t111 -256q0 -92 -57 -168t-137 -129v-8q53 -27 99 -57.5t80 -70.5t53.5 -92.5t19.5 -119.5q0 -76 -32 -140.5t-93.5 -112.5 t-151.5 -75t-205 -27q-113 0 -202.5 27t-152 74t-96.5 112.5t-34 145.5zM340 358q0 -98 78 -156.5t203 -58.5q119 0 186 51.5t67 143.5q0 55 -27.5 94t-75.5 67.5t-113.5 52t-143.5 50.5q-76 -45 -125 -103.5t-49 -140.5zM410 981q0 -49 22.5 -86t63.5 -64.5t96 -51.5 t121 -44q129 104 129 226q0 86 -57.5 142t-166.5 56q-92 0 -150 -46t-58 -132z" />
|
||||
<glyph unicode="9" d="M123 901q0 98 37 177t98 134.5t143 85t172 29.5q104 0 197.5 -38t164.5 -115.5t111.5 -197.5t40.5 -284q0 -190 -46 -325.5t-122.5 -222.5t-177 -128t-206.5 -41q-129 0 -227.5 43t-164.5 105l127 143q47 -43 110.5 -70.5t135.5 -27.5q68 0 130.5 24.5t110.5 82 t78.5 150.5t34.5 228q-78 -72 -167 -113.5t-175 -41.5q-88 0 -162.5 24.5t-128 74.5t-84 126t-30.5 178zM340 901q0 -117 62 -175t173 -58q68 0 142 34.5t145 118.5q-23 172 -98.5 249t-185.5 77q-49 0 -92.5 -16.5t-75 -47t-51 -76.5t-19.5 -106z" />
|
||||
<glyph unicode=":" d="M412 182q0 90 57 148.5t145 58.5t145.5 -58.5t57.5 -148.5t-57.5 -148.5t-145.5 -58.5t-145 58.5t-57 148.5zM412 878q0 90 57 148.5t145 58.5t145.5 -58.5t57.5 -148.5t-57.5 -148.5t-145.5 -58.5t-145 58.5t-57 148.5z" />
|
||||
<glyph unicode=";" d="M387 -299q260 104 262 315q-10 -2 -28 -2q-78 0 -135.5 46t-57.5 137q0 86 58.5 134t138.5 48q111 0 166 -82t55 -225q0 -188 -102.5 -318.5t-294.5 -193.5zM412 878q0 90 57 148.5t145 58.5t145.5 -58.5t57.5 -148.5t-57.5 -148.5t-145.5 -58.5t-145 58.5t-57 148.5z " />
|
||||
<glyph unicode="<" d="M242 596v168l778 516v-219l-580 -377v-8l580 -377v-219z" />
|
||||
<glyph unicode="=" d="M160 363v172h909v-172h-909zM160 819v172h909v-172h-909z" />
|
||||
<glyph unicode=">" d="M209 80v219l579 377v8l-579 377v219l778 -516v-168z" />
|
||||
<glyph unicode="?" d="M213 1221q72 78 168 127t219 49q86 0 160 -21.5t127 -63.5t82.5 -102.5t29.5 -140.5q0 -66 -25.5 -117t-64.5 -93t-83 -81t-78.5 -80t-56 -89t-13.5 -109h-207q-12 70 6.5 125t51 100t75.5 83t80 75t62.5 74.5t25.5 82.5q0 74 -50 119t-138 45q-72 0 -129.5 -28.5 t-108.5 -77.5zM408 160q0 82 51 131t127 49t127 -49t51 -131q0 -84 -51 -134.5t-127 -50.5t-127 50.5t-51 134.5z" />
|
||||
<glyph unicode="@" d="M82 516q0 203 48 352.5t130 247.5t192.5 146.5t237.5 48.5q111 0 193 -38t135 -104.5t78.5 -157.5t25.5 -196v-610h-131l-18 110h-8q-41 -55 -109 -95t-149 -40q-55 0 -103.5 20.5t-83.5 57.5t-55.5 88t-20.5 113q0 160 138.5 239.5t388.5 110.5v31q0 66 -17.5 124 t-52.5 103t-90 70.5t-129 25.5q-82 0 -160 -39t-138 -118.5t-97 -203.5t-37 -294q0 -162 37 -285t98 -206t144 -125t176 -42q92 0 155.5 22t122.5 62l74 -120q-84 -53 -169 -83t-192 -30q-123 0 -233.5 51t-195.5 152.5t-135 255t-50 356.5zM623 463q0 -59 35.5 -92 t99.5 -33q49 0 96 27.5t94 74.5v224q-178 -27 -251.5 -73t-73.5 -128z" />
|
||||
<glyph unicode="A" d="M41 0l434 1339h279l434 -1339h-252l-102 362h-447l-104 -362h-242zM440 549h340l-47 164q-29 106 -59.5 218.5t-59.5 223.5h-8q-29 -113 -58.5 -224.5t-60.5 -217.5z" />
|
||||
<glyph unicode="B" d="M190 0v1339h396q102 0 189 -17t150.5 -55t99.5 -101.5t36 -155.5q0 -96 -57.5 -178t-176.5 -113v-8q147 -25 224 -104t77 -214q0 -100 -37.5 -174t-106.5 -123t-162 -72.5t-204 -23.5h-428zM428 184h166q147 0 225 55.5t78 170.5q0 204 -300 204h-3h-166v-430zM428 784 h135q141 0 202.5 51.5t61.5 145.5q0 92 -64.5 133t-193.5 41h-141v-371z" />
|
||||
<glyph unicode="C" d="M123 666q0 164 47 294t130 220t196.5 137t246.5 47q123 0 219.5 -51t161.5 -117l-133 -147q-49 49 -109.5 78.5t-138.5 29.5q-84 0 -153.5 -33.5t-118.5 -96t-76.5 -153t-27.5 -202.5q0 -115 27.5 -206t77.5 -153.5t121 -96.5t157 -34q82 0 146.5 35t121.5 98l131 -145 q-82 -94 -184.5 -144.5t-229.5 -50.5q-129 0 -240.5 45.5t-194.5 133.5t-130 217t-47 295z" />
|
||||
<glyph unicode="D" d="M154 0v1339h346q297 0 463.5 -165.5t166.5 -497.5q0 -166 -43 -293t-122.5 -212t-194.5 -128t-258 -43h-358zM391 193h94q193 0 297.5 117.5t104.5 365.5q0 246 -104.5 358.5t-297.5 112.5h-94v-954z" />
|
||||
<glyph unicode="E" d="M213 0v1339h856v-200h-618v-342h524v-201h-524v-395h639v-201h-877z" />
|
||||
<glyph unicode="F" d="M248 0v1339h852v-200h-615v-379h523v-201h-523v-559h-237z" />
|
||||
<glyph unicode="G" d="M98 666q0 166 46 295t127 219t192.5 137t243.5 47q133 0 226 -52t152 -116l-131 -147q-47 47 -103 77.5t-144 30.5q-80 0 -146.5 -33.5t-115 -96t-75 -153t-26.5 -202.5q0 -229 93 -359.5t274 -130.5q53 0 102 15.5t78 44.5v288h-232v195h447v-590q-66 -66 -173.5 -113 t-236.5 -47q-127 0 -236.5 45.5t-189.5 133.5t-126 217t-46 295z" />
|
||||
<glyph unicode="H" d="M147 0v1339h238v-538h459v538h237v-1339h-237v594h-459v-594h-238z" />
|
||||
<glyph unicode="I" d="M172 0v201h324v938h-324v200h885v-200h-324v-938h324v-201h-885z" />
|
||||
<glyph unicode="J" d="M143 197l144 145q57 -80 126.5 -121t141.5 -41q123 0 182.5 64.5t59.5 218.5v678h-543v198h780v-897q0 -96 -24.5 -181t-80 -148.5t-146.5 -100.5t-222 -37q-55 0 -113.5 12.5t-112.5 39t-103.5 68.5t-88.5 102z" />
|
||||
<glyph unicode="K" d="M170 0v1339h240v-608h6l477 608h264l-412 -522l457 -817h-264l-334 631l-194 -240v-391h-240z" />
|
||||
<glyph unicode="L" d="M246 0v1339h235v-1138h629v-201h-864z" />
|
||||
<glyph unicode="M" d="M150 0v1339h245l162 -520l57 -203h7l55 203l158 520h245v-1339h-194v594q0 47 3 114.5t7 140.5t9 140.5t9 114.5h-6l-96 -328l-141 -416h-115l-143 416l-95 328h-6q4 -47 9.5 -114.5t10.5 -140.5t8 -140.5t3 -114.5v-594h-192z" />
|
||||
<glyph unicode="N" d="M152 0v1339h241l359 -753l125 -285h6q-8 104 -20.5 224t-12.5 233v581h227v-1339h-241l-359 756l-125 282h-6q8 -106 20.5 -223t12.5 -229v-586h-227z" />
|
||||
<glyph unicode="O" d="M88 676q0 162 39 290t107.5 216t166 135t213.5 47q117 0 214.5 -47t166 -135t107.5 -216t39 -290q0 -164 -39 -293t-107.5 -220t-166 -139.5t-214.5 -48.5t-214 48.5t-165.5 139.5t-107.5 220t-39 293zM332 676q0 -113 19.5 -204t56 -155.5t88.5 -99.5t118 -35 q63 0 115.5 35t89.5 99.5t57.5 155.5t20.5 204q0 225 -77 353t-206 128t-205.5 -128t-76.5 -353z" />
|
||||
<glyph unicode="P" d="M178 0v1339h451q111 0 204 -20.5t161.5 -69.5t106.5 -128t38 -195q0 -111 -39 -193t-107.5 -136t-162 -79.5t-201.5 -25.5h-213v-492h-238zM416 682h194q295 0 295 244q0 127 -73.5 175t-221.5 48h-194v-467z" />
|
||||
<glyph unicode="Q" d="M88 676q0 162 38 290t106.5 216t165 135t212.5 47q117 0 213.5 -47t165 -135t106.5 -216t38 -290q0 -276 -104.5 -453.5t-280.5 -228.5q35 -78 106.5 -114t159.5 -36q31 0 57.5 7.5t46.5 17.5l43 -182q-35 -16 -78 -25.5t-96 -9.5q-188 0 -310 94t-179 242 q-92 20 -168 77.5t-130.5 145.5t-83 206t-28.5 259zM330 676q0 -113 19.5 -205t55 -156.5t88 -99.5t117.5 -35q63 0 115.5 35t88.5 99.5t55.5 156.5t19.5 205q0 225 -75 354t-204 129q-131 0 -205.5 -129t-74.5 -354z" />
|
||||
<glyph unicode="R" d="M172 0v1339h446q104 0 194.5 -20.5t157 -66.5t104.5 -121.5t38 -188.5q0 -154 -72.5 -248t-193.5 -135l319 -559h-268l-287 524h-200v-524h-238zM410 713h184q139 0 212 57t73 172q0 117 -73 162t-212 45h-184v-436z" />
|
||||
<glyph unicode="S" d="M119 172l139 162q76 -68 171 -110t194 -42q123 0 186 47t63 125q0 41 -16 70t-46 50.5t-72 39.5t-91 37l-182 80q-53 20 -104.5 51t-92.5 74t-65.5 100t-24.5 131q0 80 35 148.5t96.5 120t146.5 80t187 28.5q123 0 234.5 -46t195.5 -124l-123 -152q-68 53 -141.5 84 t-165.5 31q-104 0 -164.5 -42t-60.5 -116q0 -39 18.5 -66.5t50 -49t73.5 -38t87 -34.5l176 -76q63 -25 116.5 -57.5t92.5 -75.5t60.5 -99.5t21.5 -129.5q0 -82 -33.5 -154t-97 -126t-156 -86t-209.5 -32q-141 0 -270 51.5t-229 145.5z" />
|
||||
<glyph unicode="T" d="M74 1139v200h1081v-200h-422v-1139h-237v1139h-422z" />
|
||||
<glyph unicode="U" d="M147 512v827h238v-845q0 -166 61.5 -239t169.5 -73q111 0 174.5 73t63.5 239v845h227v-827q0 -276 -120.5 -406.5t-344.5 -130.5q-219 0 -344 131.5t-125 405.5z" />
|
||||
<glyph unicode="V" d="M57 1339h252l189 -673q33 -115 58.5 -217.5t59.5 -219.5h9q35 117 60.5 219.5t55.5 217.5l187 673h243l-415 -1339h-281z" />
|
||||
<glyph unicode="W" d="M14 1339h240l74 -776q4 -86 10 -168t10 -168h6q16 86 38 169t40 167l117 434h151l115 -434q16 -82 37.5 -166t38.5 -170h8q4 86 10 170t11 166l69 776h225l-182 -1339h-252l-118 489q-14 63 -24.5 127t-19.5 123h-6q-10 -59 -20 -122.5t-25 -127.5l-112 -489h-248z" />
|
||||
<glyph unicode="X" d="M74 0l393 690l-369 649h264l158 -297q25 -47 49.5 -96t55.5 -108h8q27 59 49.5 108t44.5 96l152 297h251l-368 -659l393 -680h-262l-174 315q-29 53 -55.5 105.5t-57.5 114.5h-8q-29 -61 -53.5 -113.5t-50.5 -106.5l-168 -315h-252z" />
|
||||
<glyph unicode="Y" d="M55 1339h252l168 -360q35 -78 69 -152.5t68 -156.5h9q37 82 71.5 157.5t69.5 153.5l166 358h246l-441 -874v-465h-237v465z" />
|
||||
<glyph unicode="Z" d="M125 0v143l686 998h-625v198h918v-143l-688 -995h696v-201h-987z" />
|
||||
<glyph unicode="[" d="M436 -311v1761h586v-129h-404v-1503h404v-129h-586z" />
|
||||
<glyph unicode="\" d="M176 1454h203l674 -1782h-203z" />
|
||||
<glyph unicode="]" d="M209 -182h401v1503h-401v129h586v-1761h-586v129z" />
|
||||
<glyph unicode="^" d="M201 571l315 801h197l315 -801h-199l-114 310l-97 276h-8l-96 -276l-115 -310h-198z" />
|
||||
<glyph unicode="_" d="M123 -127h983v-184h-983v184z" />
|
||||
<glyph unicode="`" d="M336 1497h246l184 -323h-176z" />
|
||||
<glyph unicode="a" d="M145 270q0 84 39 148.5t123 109.5t215 74t318 41q-6 86 -61.5 141.5t-178.5 55.5q-86 0 -169 -32t-161 -75l-86 158q92 53 211 96t248 43q211 0 321.5 -111.5t110.5 -322.5v-596h-192l-19 125h-6q-80 -61 -177 -105.5t-200 -44.5q-74 0 -135 21.5t-106 60.5t-70 93 t-25 120zM373 289q0 -68 52 -98.5t128 -30.5t146.5 33.5t140.5 89.5v213q-135 -10 -225.5 -27.5t-143.5 -44.5t-75.5 -60.5t-22.5 -74.5z" />
|
||||
<glyph unicode="b" d="M168 0v1446h238v-373l-9 -176q66 61 148 97t164 36q98 0 173.5 -36t129 -102.5t81 -160.5t27.5 -211q0 -129 -36.5 -230.5t-99 -171t-143.5 -106.5t-167 -37q-72 0 -150 35t-143 101h-6l-21 -111h-186zM406 262q55 -51 114.5 -71.5t106.5 -20.5q106 0 178 87t72 259 q0 152 -55.5 236t-178.5 84q-57 0 -116.5 -29t-120.5 -92v-453z" />
|
||||
<glyph unicode="c" d="M150 502q0 125 46 223t123.5 165.5t182 103.5t219.5 36q123 0 216 -41t157 -100l-113 -148q-59 47 -119.5 72t-128.5 25q-152 0 -246 -91.5t-94 -244.5q0 -76 24.5 -137.5t68.5 -105.5t105.5 -67.5t135.5 -23.5q86 0 156.5 32.5t130.5 78.5l98 -152q-86 -76 -192.5 -114 t-214.5 -38q-119 0 -220.5 35t-176.5 102.5t-116.5 166t-41.5 223.5z" />
|
||||
<glyph unicode="d" d="M109 502q0 123 36.5 221t99 165.5t142.5 104.5t166 37q90 0 154.5 -31.5t126.5 -87.5l-11 170v365h238v-1446h-195l-18 117h-6q-59 -59 -138 -100.5t-165 -41.5q-96 0 -176 36t-136.5 103.5t-87 165t-30.5 222.5zM352 504q0 -164 63.5 -249t180.5 -85q125 0 227 121v452 q-53 51 -106 72t-109 21q-53 0 -99 -22.5t-81 -64.5t-55.5 -103.5t-20.5 -141.5z" />
|
||||
<glyph unicode="e" d="M127 502q0 123 44 221t115.5 166.5t165 104.5t191.5 36q113 0 200 -36t146.5 -98t90 -150.5t30.5 -192.5q0 -35 -3 -65.5t-7 -49.5h-731q12 -135 106 -207.5t232 -72.5q78 0 145.5 21.5t136.5 60.5l80 -148q-82 -51 -182.5 -84t-210.5 -33q-115 0 -215.5 36t-174 103.5 t-116.5 165t-43 222.5zM367 598h526q0 117 -61.5 183.5t-182.5 66.5q-102 0 -182 -63.5t-100 -186.5z" />
|
||||
<glyph unicode="f" d="M188 819v176l279 11v55q0 88 24.5 163.5t77 130t133 85t191.5 30.5q82 0 156.5 -14t142.5 -41l-49 -174q-55 23 -107.5 33t-113.5 10q-117 0 -169.5 -56.5t-52.5 -162.5v-59h383v-187h-383v-819h-233v819h-279z" />
|
||||
<glyph unicode="g" d="M127 -176q0 59 41 114.5t119 96.5v8q-41 23 -72 63.5t-31 104.5q0 51 33 101t88 89v9q-53 37 -91 102.5t-38 155.5q0 86 34 153.5t90 113.5t131 70.5t159 24.5q90 0 158 -24h411v-175h-235q27 -31 47 -74.5t20 -97.5q0 -84 -30.5 -147t-85 -106.5t-128 -65t-157.5 -21.5 q-76 0 -154 27q-61 -39 -61 -92q0 -96 190 -96h205q197 0 296 -57.5t99 -188.5q0 -74 -41 -139.5t-115.5 -113.5t-182 -75.5t-240.5 -27.5q-104 0 -188.5 16t-144.5 50t-93 84t-33 118zM324 -145q0 -68 74.5 -107t215.5 -39q74 0 133.5 13.5t102.5 36t65.5 52t22.5 62.5 q0 59 -51 78.5t-152 19.5h-160q-49 0 -86.5 3t-66.5 14q-53 -33 -75.5 -65.5t-22.5 -67.5zM399 668q0 -96 56.5 -148.5t134.5 -52.5t135 52t57 149q0 92 -57 146t-135 54t-134.5 -54t-56.5 -146z" />
|
||||
<glyph unicode="h" d="M168 0v1446h238v-373l-15 -215q70 70 157 121t204 51q174 0 256 -105.5t82 -301.5v-623h-238v592q0 123 -42 179t-146 56q-74 0 -131.5 -34.5t-126.5 -106.5v-686h-238z" />
|
||||
<glyph unicode="i" d="M172 819v187h672v-1006h-236v819h-436zM541 1339q0 72 48 116t120 44q74 0 121 -44t47 -116t-47 -114.5t-121 -42.5q-72 0 -120 43t-48 114z" />
|
||||
<glyph unicode="j" d="M100 -354l72 170q57 -27 111.5 -39.5t103.5 -12.5q129 0 175 61.5t46 180.5v813h-436v187h672v-988q0 -92 -21.5 -171.5t-72 -140t-136.5 -94.5t-215 -34q-88 0 -162.5 19.5t-136.5 48.5zM541 1339q0 72 48 116t120 44q74 0 121 -44t47 -116t-47 -114.5t-121 -42.5 q-72 0 -120 43t-48 114z" />
|
||||
<glyph unicode="k" d="M184 0v1446h238v-905h8l453 465h262l-389 -406l432 -600h-258l-316 455l-192 -193v-262h-238z" />
|
||||
<glyph unicode="l" d="M145 1260v186h553v-1092q0 -102 51.5 -144t129.5 -42q74 0 172 39l55 -174q-72 -25 -134.5 -41.5t-150.5 -16.5q-178 0 -268 102.5t-90 289.5v893h-318z" />
|
||||
<glyph unicode="m" d="M98 0v1006h178l19 -129h6q35 66 85 109.5t136 43.5q147 0 185 -168q35 72 89 120t138 48q106 0 164.5 -83t58.5 -234v-713h-223v694q0 133 -84 133q-41 0 -71.5 -30.5t-59.5 -94.5v-702h-184v694q0 133 -86 133q-41 0 -70 -30.5t-57 -94.5v-702h-224z" />
|
||||
<glyph unicode="n" d="M168 0v1006h194l19 -152h8q72 72 159 124t204 52q174 0 256 -105.5t82 -301.5v-623h-238v592q0 123 -42 179t-146 56q-74 0 -131.5 -34.5t-126.5 -106.5v-686h-238z" />
|
||||
<glyph unicode="o" d="M109 502q0 125 42 223t111.5 165.5t161.5 103.5t190 36t190.5 -36t162 -103.5t111.5 -165.5t42 -223t-42 -223.5t-111.5 -166t-161.5 -102.5t-191 -35q-98 0 -190 35t-161.5 102.5t-111.5 166t-42 223.5zM352 502q0 -152 70 -243t192 -91q123 0 193 91t70 243 q0 154 -70 245t-193 91t-192.5 -91t-69.5 -245z" />
|
||||
<glyph unicode="p" d="M168 -397v1403h194l19 -115h6q66 59 151 99t171 40q98 0 175 -36t129 -103.5t79.5 -161.5t27.5 -211q0 -129 -36.5 -230.5t-99 -170t-143.5 -105.5t-167 -37q-70 0 -142.5 31t-134.5 88l9 -176v-315h-238zM406 262q55 -51 113.5 -71.5t105.5 -20.5q109 0 180.5 87 t71.5 259q0 152 -55.5 236t-178.5 84q-57 0 -116.5 -29t-120.5 -92v-453z" />
|
||||
<glyph unicode="q" d="M109 502q0 123 36.5 221t99 165.5t142.5 104.5t166 37q88 0 158.5 -32.5t136.5 -98.5h6l20 107h187v-1403h-238v338l11 168q-59 -57 -136 -95.5t-159 -38.5q-96 0 -176 36t-136.5 103.5t-87 165t-30.5 222.5zM352 504q0 -164 63.5 -249t180.5 -85q125 0 227 121v452 q-53 51 -106 72t-109 21q-53 0 -99 -22.5t-81 -64.5t-55.5 -103.5t-20.5 -141.5z" />
|
||||
<glyph unicode="r" d="M266 0v1006h195l20 -228h6q78 123 187.5 187.5t240.5 64.5q61 0 105.5 -9t89.5 -32l-49 -198q-49 16 -87 23t-95 7q-104 0 -200.5 -59.5t-174.5 -206.5v-555h-238z" />
|
||||
<glyph unicode="s" d="M127 131l111 150q86 -59 179 -93t210 -34q119 0 174 33.5t55 86.5t-71.5 89t-225.5 77q-72 18 -139.5 45t-118.5 62t-82 80t-31 102q0 133 115 217t330 84q123 0 231.5 -41t186.5 -92l-109 -145q-68 45 -144.5 72.5t-162.5 27.5q-117 0 -164 -32t-47 -79q0 -27 21.5 -48 t59.5 -38.5t89 -34t113 -30.5q88 -23 158.5 -50.5t120.5 -62.5t78 -82t28 -108q0 -66 -31 -122t-90.5 -98t-147.5 -67t-202 -25q-141 0 -270.5 45.5t-223.5 110.5z" />
|
||||
<glyph unicode="t" d="M121 819v176l278 11l31 274h195v-274h458v-187h-458v-413q0 -125 51 -183.5t180 -58.5q66 0 119 11t102 30l45 -172q-68 -23 -149.5 -40.5t-173.5 -17.5q-115 0 -193 31t-126 87.5t-69.5 136t-21.5 176.5v413h-268z" />
|
||||
<glyph unicode="u" d="M143 383v623h236v-592q0 -123 42 -179.5t146 -56.5q72 0 128.5 33t123.5 117v678h236v-1006h-193l-18 160h-8q-72 -84 -158 -134.5t-199 -50.5q-176 0 -256 105.5t-80 302.5z" />
|
||||
<glyph unicode="v" d="M84 1006h238l194 -523q29 -76 52.5 -150.5t47.5 -152.5h9q25 78 48 153t52 150l195 523h225l-391 -1006h-269z" />
|
||||
<glyph unicode="w" d="M12 1006h234l92 -523q12 -72 21.5 -143.5t19.5 -144.5h8q10 74 22.5 145.5t28.5 142.5l94 424h177l94 -424q16 -72 29.5 -143.5t25.5 -144.5h8q12 74 21.5 145.5t19.5 142.5l92 523h218l-187 -1006h-276l-88 420q-12 72 -23.5 143.5t-24.5 149.5h-8q-10 -59 -19 -128 t-26 -167l-86 -418h-272z" />
|
||||
<glyph unicode="x" d="M104 0l365 522l-340 484h256l131 -191q25 -41 53.5 -85t57.5 -87h8q23 43 49.5 88t48.5 86l119 189h248l-342 -508l366 -498h-256l-145 199q-29 41 -60.5 88t-62.5 90h-8q-29 -45 -54.5 -89t-54.5 -91l-131 -197h-248z" />
|
||||
<glyph unicode="y" d="M82 1006h235l207 -494q29 -68 55.5 -143.5t55.5 -151.5h8q23 72 49.5 147.5t50.5 147.5l183 494h223l-420 -1051q-33 -86 -73 -153.5t-93 -115.5t-122.5 -74t-159.5 -26q-41 0 -78 5.5t-66 15.5l45 184q20 -6 41 -10t43 -4q96 0 153.5 48t88.5 124l24 63z" />
|
||||
<glyph unicode="z" d="M145 0v127l605 692h-535v187h866v-125l-606 -693h625v-188h-955z" />
|
||||
<glyph unicode="{" d="M231 498v143q86 0 142.5 14.5t89.5 36t45 48t12 55.5q0 96 -10 181t-10 191q0 82 22.5 136.5t69.5 87t118.5 46t170.5 13.5h141v-129h-94q-72 0 -117 -8t-70.5 -27.5t-35 -51.5t-9.5 -77q0 -86 5.5 -172t5.5 -180q0 -109 -43 -161t-152 -71v-8q109 -18 152 -70.5 t43 -160.5q0 -98 -5.5 -180t-5.5 -172q0 -47 9.5 -78t35 -50.5t70.5 -27.5t117 -8h94v-129h-141q-98 0 -170 13t-119 46t-69.5 87t-22.5 136q0 55 3 101.5t7 89.5t7 87t3 95q0 27 -12 54.5t-45 49t-89.5 36t-142.5 14.5z" />
|
||||
<glyph unicode="|" d="M510 -512v2048h209v-2048h-209z" />
|
||||
<glyph unicode="}" d="M209 -182h94q70 0 115 8t71.5 27.5t36 50t9.5 78.5q0 90 -5.5 172t-5.5 180q0 109 42 161t153 70v8q-111 18 -153 70.5t-42 161.5q0 94 5.5 180t5.5 172q0 45 -9.5 77t-36 51.5t-71.5 27.5t-115 8h-94v129h141q98 0 169 -13.5t118 -46t69.5 -87t22.5 -136.5 q0 -106 -10 -191t-10 -181q0 -29 12 -55.5t45 -48t89 -36t142 -14.5v-143q-86 0 -142 -14.5t-89 -36t-45 -49t-12 -54.5q0 -51 3 -95t7 -87t7 -89t3 -102q0 -82 -22.5 -136t-69.5 -87t-117.5 -46t-169.5 -13h-141v129z" />
|
||||
<glyph unicode="~" d="M131 565q59 154 139 216.5t168 62.5q61 0 108.5 -25.5t88.5 -56.5t79 -56.5t81 -25.5q47 0 86 37t73 135l144 -68q-59 -152 -139 -214t-168 -62q-61 0 -108.5 25.5t-88.5 56.5t-79 56.5t-81 25.5q-47 0 -86 -38t-74 -134z" />
|
||||
<glyph unicode=" " />
|
||||
<glyph unicode="¡" d="M436 846q0 84 51.5 134t126.5 50q76 0 127.5 -50t51.5 -134q0 -82 -51.5 -131t-127.5 -49t-127 49t-51 131zM498 -367l6 234l33 639h155l33 -639l6 -234h-233z" />
|
||||
<glyph unicode="¢" d="M213 631q0 106 33 193t89 150.5t134 103.5t170 55v206h137v-200q84 -4 148.5 -37t111.5 -80l-110 -145q-72 63 -150 71v-631q53 6 98.5 31t81.5 53l99 -149q-59 -53 -132 -85t-147 -40v-203h-137v203q-193 25 -309.5 154t-116.5 350zM444 631q0 -115 50.5 -193 t144.5 -106v600q-94 -31 -144.5 -110t-50.5 -191z" />
|
||||
<glyph unicode="£" d="M150 0v145q117 49 181 138.5t64 201.5q0 23 -3 42.5t-7 41.5h-233v142l184 10q-20 53 -35.5 105.5t-15.5 103.5q0 92 32.5 165.5t92 125t142.5 79t183 27.5q125 0 215 -43t156 -117l-131 -129q-45 45 -97.5 71t-123.5 26q-117 0 -180.5 -56.5t-63.5 -160.5 q0 -51 13.5 -99.5t29.5 -97.5h367v-152h-326q8 -39 8 -86q0 -92 -32.5 -153.5t-98.5 -120.5v-8h637v-201h-958z" />
|
||||
<glyph unicode="¤" d="M96 272l168 170q-35 47 -53 105.5t-18 126.5q0 70 18 128t51 105l-166 170l121 123l180 -184q98 63 217 63t217 -63l181 184l121 -123l-168 -170q35 -47 53 -105.5t18 -127.5q0 -68 -19.5 -126.5t-53.5 -105.5l170 -170l-121 -122l-183 184q-47 -33 -102 -48.5 t-113 -15.5q-121 0 -217 64l-180 -184zM406 674q0 -106 61 -171t147 -65t147.5 64.5t61.5 171.5q0 109 -61.5 173t-147.5 64t-147 -64t-61 -173z" />
|
||||
<glyph unicode="¥" d="M86 1303h242l155 -310q35 -68 65 -135t64 -137h9q35 70 65.5 137.5t65.5 134.5l155 310h236l-357 -627h306v-121h-361v-121h361v-123h-361v-311h-235v311h-359v123h359v121h-359v121h303z" />
|
||||
<glyph unicode="¦" d="M510 428h209v-940h-209v940zM510 618v918h209v-918h-209z" />
|
||||
<glyph unicode="§" d="M166 684q0 84 49 152.5t127 111.5q-61 68 -61 168q0 61 22.5 114.5t65.5 92.5t105.5 61.5t143.5 22.5q111 0 200 -39t153 -86l-111 -149q-51 41 -108.5 68.5t-120.5 27.5q-72 0 -103.5 -29t-31.5 -74q0 -47 42 -78.5t105.5 -61.5t136 -61.5t136 -76.5t105.5 -109.5 t42 -156.5q0 -94 -47 -159t-131 -112q25 -33 39 -71.5t14 -89.5q0 -66 -24.5 -120.5t-70.5 -95t-113.5 -63.5t-151.5 -23q-115 0 -216.5 41t-168.5 119l139 123q53 -51 112.5 -78.5t133.5 -27.5q72 0 109.5 32.5t37.5 81.5t-41 82t-103.5 61.5t-135 59.5t-135 75 t-103.5 107.5t-41 159.5zM367 700q0 -57 37.5 -96t95 -69.5t127 -58t131.5 -62.5q53 27 78.5 61.5t25.5 87.5q0 57 -37 97t-94 71t-125.5 57.5t-132.5 61.5q-51 -27 -78.5 -63t-27.5 -87z" />
|
||||
<glyph unicode="¨" d="M268 1323q0 59 38 99t97 40t98.5 -40t39.5 -99t-39.5 -98t-98.5 -39t-97 39t-38 98zM688 1323q0 59 39 99t98 40t97.5 -40t38.5 -99t-38.5 -98t-97.5 -39t-98 39t-39 98z" />
|
||||
<glyph unicode="©" d="M49 664q0 158 44 283.5t121 212.5t180.5 133t219.5 46q117 0 220.5 -46t180.5 -133t121 -213t44 -283q0 -158 -44 -284t-121 -215t-180.5 -137t-220.5 -48t-220 48t-180 137t-121 215t-44 284zM164 664q0 -129 32.5 -235.5t91 -182.5t141.5 -118t185 -42q100 0 184.5 42 t142.5 118t91 182.5t33 235.5q0 131 -33 236.5t-91 180t-142 114.5t-185 40q-102 0 -185 -40t-141.5 -114.5t-91 -180t-32.5 -236.5zM291 662q0 90 28.5 162.5t75.5 122.5t110.5 78t131.5 28q78 0 130 -29t93 -70l-92 -102q-29 27 -55.5 41t-61.5 14q-86 0 -134 -69.5 t-48 -175.5q0 -119 47 -189t125 -70q47 0 79 17.5t66 42.5l78 -115q-47 -39 -102 -64.5t-127 -25.5q-74 0 -136.5 27.5t-108.5 80t-72.5 127.5t-26.5 169z" />
|
||||
<glyph unicode="ª" d="M330 713q0 109 99 167t316 81q-4 51 -33.5 84.5t-97.5 33.5q-49 0 -99 -18.5t-97 -46.5l-64 114q59 35 135 60.5t158 25.5q131 0 201 -73.5t70 -216.5v-392h-142l-12 72h-4q-47 -37 -103.5 -62.5t-115.5 -25.5q-92 0 -151.5 55.5t-59.5 141.5zM496 727q0 -41 28.5 -59.5 t69.5 -18.5t79 17.5t72 48.5v139q-139 -16 -194 -48t-55 -79z" />
|
||||
<glyph unicode="«" d="M129 399v234l332 321l104 -94l-260 -344l260 -346l-104 -92zM635 399v234l332 321l104 -94l-260 -344l260 -346l-104 -92z" />
|
||||
<glyph unicode="¬" d="M160 590v172h909v-559h-178v387h-731z" />
|
||||
<glyph unicode="­" d="M160 590v172h909v-172h-909z" />
|
||||
<glyph unicode="®" d="M217 1053q0 90 31 165.5t85 130t125.5 84t153.5 29.5t155 -29.5t126 -84t85 -130t32 -165.5t-32 -165t-85 -129t-126 -84t-155 -30t-153.5 30t-125.5 84t-85 129t-31 165zM313 1053q0 -72 22.5 -130.5t62.5 -100.5t94 -65.5t120 -23.5q63 0 118.5 23.5t95.5 65.5 t62.5 100.5t22.5 130.5t-22.5 131t-62.5 102t-95 66.5t-119 23.5q-66 0 -120 -23.5t-94 -66.5t-62.5 -102.5t-22.5 -130.5zM457 854v408h168q68 0 115.5 -31t47.5 -103q0 -35 -19 -65.5t-54 -46.5l90 -162h-111l-65 133h-72v-133h-100zM557 1061h47q37 0 56.5 16.5 t19.5 44.5q0 27 -17.5 44.5t-54.5 17.5h-51v-123z" />
|
||||
<glyph unicode="¯" d="M348 1221v155h533v-155h-533z" />
|
||||
<glyph unicode="°" d="M338 1124q0 61 22.5 112.5t60.5 88.5t88 57.5t107 20.5t107.5 -20.5t88.5 -57.5t59.5 -88t21.5 -113q0 -61 -21.5 -112t-59.5 -88t-88.5 -57.5t-107.5 -20.5t-107 20.5t-88 57.5t-60.5 88t-22.5 112zM469 1124q0 -70 40.5 -113.5t106.5 -43.5t106 44t40 113q0 72 -40 116 t-106 44t-106.5 -44t-40.5 -116z" />
|
||||
<glyph unicode="±" d="M160 0v170h909v-170h-909zM160 612v170h364v367h181v-367h364v-170h-364v-319h-181v319h-364z" />
|
||||
<glyph unicode="²" d="M338 1429q53 55 116.5 91t141.5 36q117 0 184.5 -56t67.5 -159q0 -39 -16.5 -75.5t-44 -73.5t-65.5 -74t-79 -74h233v-143h-512v94q143 102 229.5 180t86.5 138q0 47 -27.5 74.5t-81.5 27.5q-72 0 -129 -78z" />
|
||||
<glyph unicode="³" d="M344 975l76 108q33 -31 81 -53.5t97 -22.5q45 0 74.5 18.5t29.5 59.5q0 45 -40.5 66.5t-131.5 21.5v97q145 0 146 86q0 31 -24.5 50t-71.5 19q-35 0 -74 -17.5t-70 -41.5l-74 102q43 41 110 64.5t144 23.5q98 0 165 -47t67 -129q0 -57 -26.5 -92t-86.5 -57 q139 -35 139 -158q0 -45 -20 -81t-56 -61.5t-83 -40t-101 -14.5q-68 0 -138 22.5t-132 76.5z" />
|
||||
<glyph unicode="´" d="M463 1174l184 323h246l-254 -323h-176z" />
|
||||
<glyph unicode="µ" d="M143 -393v1399h236v-592q0 -123 44 -179.5t138 -56.5q70 0 131.5 38t126.5 153v637h238q-4 -94 -6 -195.5t-5.5 -202t-4.5 -193.5t-1 -169q0 -43 18.5 -60.5t47.5 -17.5h15t22 4l28 -176q-47 -20 -122 -21q-90 0 -137.5 51.5t-67.5 157.5h-6q-53 -100 -126 -150t-159 -50 q-57 0 -106.5 14t-84.5 63q0 -70 2.5 -127t4.5 -109t5 -105.5t7 -112.5h-238z" />
|
||||
<glyph unicode="¶" d="M123 893q0 125 38 210t102.5 137t152.5 75.5t190 23.5h88v-905h-73q-104 0 -195.5 27.5t-158 85t-105.5 143.5t-39 203zM803 -164v1503h233v-1503h-233z" />
|
||||
<glyph unicode="·" d="M412 717q0 90 57 148.5t145 58.5t145.5 -58.5t57.5 -148.5t-57.5 -148.5t-145.5 -58.5t-145 58.5t-57 148.5z" />
|
||||
<glyph unicode="¸" d="M430 -342q78 10 127 31.5t49 62.5q0 33 -29.5 55.5t-95.5 38.5l82 160h143l-47 -100q51 -18 86 -52t35 -98q0 -49 -26.5 -83.5t-72.5 -59.5t-105.5 -39t-125.5 -18z" />
|
||||
<glyph unicode="¹" d="M414 1354v108q37 6 64.5 12.5t51 14.5t45 18t43.5 25h138v-631h-176v453h-166z" />
|
||||
<glyph unicode="º" d="M281 864q0 84 27.5 149.5t73.5 109.5t106.5 67.5t125.5 23.5q66 0 126.5 -23.5t106.5 -67.5t73.5 -109.5t27.5 -149.5q0 -82 -27.5 -146.5t-73.5 -109.5t-106.5 -68.5t-126.5 -23.5t-126 23.5t-106 68.5t-73.5 109.5t-27.5 146.5zM459 864q0 -94 40 -151.5t115 -57.5 q78 0 117 57.5t39 151.5q0 96 -39 154.5t-117 58.5q-76 0 -115.5 -58.5t-39.5 -154.5z" />
|
||||
<glyph unicode="»" d="M160 170l260 346l-260 344l104 94l332 -321v-234l-332 -321zM666 170l260 346l-260 344l104 94l332 -321v-234l-332 -321z" />
|
||||
<glyph unicode="¼" d="M45 182l379 371l86 -80l-338 -412zM150 1125v108q37 6 64.5 12.5t51 14.5t45 18t43.5 25h138v-631h-176v453h-166zM606 137v84l274 410h211v-383h105v-111h-105v-137h-155v137h-330zM719 866l338 412l127 -121l-379 -371zM770 248h166v80l10 186h-6l-80 -129z" />
|
||||
<glyph unicode="½" d="M45 182l379 371l86 -80l-338 -412zM150 1125v108q37 6 64.5 12.5t51 14.5t45 18t43.5 25h138v-631h-176v453h-166zM606 528q53 55 116.5 91t141.5 36q117 0 184.5 -56t67.5 -159q0 -39 -16.5 -75.5t-44 -73.5t-65.5 -74t-79 -74h233v-143h-512v94q143 102 229.5 180 t86.5 138q0 47 -27.5 74.5t-81.5 27.5q-72 0 -129 -78zM719 866l338 412l127 -121l-379 -371z" />
|
||||
<glyph unicode="¾" d="M78 182l379 371l86 -80l-338 -412zM78 746l76 108q33 -31 81 -53.5t97 -22.5q45 0 74.5 18.5t29.5 59.5q0 45 -40.5 66.5t-131.5 21.5v97q145 0 146 86q0 31 -24.5 50t-71.5 19q-35 0 -74 -17.5t-70 -41.5l-74 102q43 41 110 64.5t144 23.5q98 0 165 -47t67 -129 q0 -57 -26.5 -92t-86.5 -57q139 -35 139 -158q0 -45 -20 -81t-56 -61.5t-83 -40t-101 -14.5q-68 0 -138 22.5t-132 76.5zM608 137v84l274 410h211v-383h105v-111h-105v-137h-155v137h-330zM752 866l338 412l127 -121l-379 -371zM772 248h166v80l10 186h-6l-80 -129z" />
|
||||
<glyph unicode="¿" d="M231 -63q0 68 26 117.5t64.5 92.5t83 81t79 79t56 88t13.5 111h207q12 -70 -6.5 -125t-51 -100t-75.5 -83t-80 -75t-62.5 -75t-25.5 -83q0 -74 50 -119t138 -45q72 0 129.5 30t108.5 77l133 -123q-72 -78 -169 -127t-218 -49q-86 0 -160 21.5t-127 63.5t-83 102.5 t-30 140.5zM467 846q0 84 51 134t127 50t127 -50t51 -134q0 -82 -51 -131t-127 -49t-127 49t-51 131z" />
|
||||
<glyph unicode="À" d="M41 0l434 1339h279l434 -1339h-252l-102 362h-447l-104 -362h-242zM313 1679h258l172 -237h-190zM440 549h340l-47 164q-29 106 -59.5 218.5t-59.5 223.5h-8q-29 -113 -58.5 -224.5t-60.5 -217.5z" />
|
||||
<glyph unicode="Á" d="M41 0l434 1339h279l434 -1339h-252l-102 362h-447l-104 -362h-242zM440 549h340l-47 164q-29 106 -59.5 218.5t-59.5 223.5h-8q-29 -113 -58.5 -224.5t-60.5 -217.5zM485 1442l172 237h258l-239 -237h-191z" />
|
||||
<glyph unicode="Â" d="M41 0l434 1339h279l434 -1339h-252l-102 362h-447l-104 -362h-242zM303 1442l197 237h229l197 -237h-185l-123 131h-8l-123 -131h-184zM440 549h340l-47 164q-29 106 -59.5 218.5t-59.5 223.5h-8q-29 -113 -58.5 -224.5t-60.5 -217.5z" />
|
||||
<glyph unicode="Ã" d="M41 0l434 1339h279l434 -1339h-252l-102 362h-447l-104 -362h-242zM291 1448q12 119 65.5 184.5t130.5 65.5q41 0 75 -15.5t63.5 -34t55.5 -34t52 -15.5q29 0 49.5 24t30.5 75h125q-12 -117 -65.5 -183.5t-131.5 -66.5q-41 0 -74.5 15.5t-63.5 35t-55.5 34.5t-51.5 15 q-29 0 -49.5 -24.5t-30.5 -75.5h-125zM440 549h340l-47 164q-29 106 -59.5 218.5t-59.5 223.5h-8q-29 -113 -58.5 -224.5t-60.5 -217.5z" />
|
||||
<glyph unicode="Ä" d="M41 0l434 1339h279l434 -1339h-252l-102 362h-447l-104 -362h-242zM303 1571q0 53 34 88t87 35t88 -35t35 -88t-35 -87t-88 -34t-87 34t-34 87zM440 549h340l-47 164q-29 106 -59.5 218.5t-59.5 223.5h-8q-29 -113 -58.5 -224.5t-60.5 -217.5zM682 1571q0 53 35 88t88 35 t87 -35t34 -88t-34 -87t-87 -34t-88 34t-35 87z" />
|
||||
<glyph unicode="Å" d="M41 0l434 1339h279l434 -1339h-252l-102 362h-447l-104 -362h-242zM403 1620q0 86 58.5 138t152.5 52q92 0 151.5 -52t59.5 -138q0 -88 -59.5 -139t-151.5 -51q-94 0 -152.5 51t-58.5 139zM440 549h340l-47 164q-29 106 -59.5 218.5t-59.5 223.5h-8 q-29 -113 -58.5 -224.5t-60.5 -217.5zM524 1620q0 -47 25.5 -71.5t64.5 -24.5q37 0 64 24.5t27 71.5q0 45 -27 70.5t-64 25.5q-39 0 -64.5 -25.5t-25.5 -70.5z" />
|
||||
<glyph unicode="Æ" d="M-4 0l479 1339h721v-200h-340v-340h270v-201h-270v-397h358v-201h-571v348h-283l-118 -348h-246zM424 535h219v622h-6q-35 -104 -70 -206.5t-69 -200.5z" />
|
||||
<glyph unicode="Ç" d="M123 666q0 164 47 294t130 220t196.5 137t246.5 47q123 0 219.5 -51t161.5 -117l-133 -147q-49 49 -109.5 78.5t-138.5 29.5q-84 0 -153.5 -33.5t-118.5 -96t-76.5 -153t-27.5 -202.5q0 -115 27.5 -206t77.5 -153.5t121 -96.5t157 -34q82 0 146.5 35t121.5 98l131 -145 q-82 -94 -184.5 -144.5t-229.5 -50.5q-129 0 -240.5 45.5t-194.5 133.5t-130 217t-47 295zM512 -342q78 10 126 31.5t48 62.5q0 33 -29 55.5t-94 38.5l82 160h143l-47 -100q51 -18 86 -52t35 -98q0 -49 -26.5 -83.5t-72.5 -59.5t-106.5 -39t-126.5 -18z" />
|
||||
<glyph unicode="È" d="M213 0v1339h856v-200h-618v-342h524v-201h-524v-395h639v-201h-877zM366 1679h258l172 -237h-190z" />
|
||||
<glyph unicode="É" d="M213 0v1339h856v-200h-618v-342h524v-201h-524v-395h639v-201h-877zM538 1442l172 237h258l-239 -237h-191z" />
|
||||
<glyph unicode="Ê" d="M213 0v1339h856v-200h-618v-342h524v-201h-524v-395h639v-201h-877zM356 1442l197 237h229l197 -237h-185l-123 131h-8l-123 -131h-184z" />
|
||||
<glyph unicode="Ë" d="M213 0v1339h856v-200h-618v-342h524v-201h-524v-395h639v-201h-877zM356 1571q0 53 34 88t87 35t88 -35t35 -88t-35 -87t-88 -34t-87 34t-34 87zM735 1571q0 53 35 88t88 35t87 -35t34 -88t-34 -87t-87 -34t-88 34t-35 87z" />
|
||||
<glyph unicode="Ì" d="M172 0v201h324v938h-324v200h885v-200h-324v-938h324v-201h-885zM313 1679h258l172 -237h-190z" />
|
||||
<glyph unicode="Í" d="M172 0v201h324v938h-324v200h885v-200h-324v-938h324v-201h-885zM485 1442l172 237h258l-239 -237h-191z" />
|
||||
<glyph unicode="Î" d="M172 0v201h324v938h-324v200h885v-200h-324v-938h324v-201h-885zM303 1442l197 237h229l197 -237h-185l-123 131h-8l-123 -131h-184z" />
|
||||
<glyph unicode="Ï" d="M172 0v201h324v938h-324v200h885v-200h-324v-938h324v-201h-885zM303 1571q0 53 34 88t87 35t88 -35t35 -88t-35 -87t-88 -34t-87 34t-34 87zM682 1571q0 53 35 88t88 35t87 -35t34 -88t-34 -87t-87 -34t-88 34t-35 87z" />
|
||||
<glyph unicode="Ð" d="M18 637v111l148 10v581h346q295 0 463 -165.5t168 -497.5q0 -166 -43 -293t-123 -212t-194.5 -128t-258.5 -43h-358v637h-148zM403 193h95q193 0 297 117.5t104 365.5q0 246 -105.5 358.5t-295.5 112.5h-95v-389h256v-121h-256v-444z" />
|
||||
<glyph unicode="Ñ" d="M152 0v1339h241l359 -753l125 -285h6q-8 104 -20.5 224t-12.5 233v581h227v-1339h-241l-359 756l-125 282h-6q8 -106 20.5 -223t12.5 -229v-586h-227zM303 1448q12 119 65.5 184.5t130.5 65.5q41 0 75 -15.5t63.5 -34t55.5 -34t52 -15.5q29 0 49.5 24t30.5 75h125 q-12 -117 -65.5 -183.5t-131.5 -66.5q-41 0 -74.5 15.5t-63.5 35t-55.5 34.5t-51.5 15q-29 0 -49.5 -24.5t-30.5 -75.5h-125z" />
|
||||
<glyph unicode="Ò" d="M88 676q0 162 39 290t107.5 216t166 135t213.5 47q117 0 214.5 -47t166 -135t107.5 -216t39 -290q0 -164 -39 -293t-107.5 -220t-166 -139.5t-214.5 -48.5t-214 48.5t-165.5 139.5t-107.5 220t-39 293zM313 1679h258l172 -237h-190zM332 676q0 -113 19.5 -204t56 -155.5 t88.5 -99.5t118 -35q63 0 115.5 35t89.5 99.5t57.5 155.5t20.5 204q0 225 -77 353t-206 128t-205.5 -128t-76.5 -353z" />
|
||||
<glyph unicode="Ó" d="M88 676q0 162 39 290t107.5 216t166 135t213.5 47q117 0 214.5 -47t166 -135t107.5 -216t39 -290q0 -164 -39 -293t-107.5 -220t-166 -139.5t-214.5 -48.5t-214 48.5t-165.5 139.5t-107.5 220t-39 293zM332 676q0 -113 19.5 -204t56 -155.5t88.5 -99.5t118 -35 q63 0 115.5 35t89.5 99.5t57.5 155.5t20.5 204q0 225 -77 353t-206 128t-205.5 -128t-76.5 -353zM485 1442l172 237h258l-239 -237h-191z" />
|
||||
<glyph unicode="Ô" d="M88 676q0 162 39 290t107.5 216t166 135t213.5 47q117 0 214.5 -47t166 -135t107.5 -216t39 -290q0 -164 -39 -293t-107.5 -220t-166 -139.5t-214.5 -48.5t-214 48.5t-165.5 139.5t-107.5 220t-39 293zM303 1442l197 237h229l197 -237h-185l-123 131h-8l-123 -131h-184z M332 676q0 -113 19.5 -204t56 -155.5t88.5 -99.5t118 -35q63 0 115.5 35t89.5 99.5t57.5 155.5t20.5 204q0 225 -77 353t-206 128t-205.5 -128t-76.5 -353z" />
|
||||
<glyph unicode="Õ" d="M88 676q0 162 39 290t107.5 216t166 135t213.5 47q117 0 214.5 -47t166 -135t107.5 -216t39 -290q0 -164 -39 -293t-107.5 -220t-166 -139.5t-214.5 -48.5t-214 48.5t-165.5 139.5t-107.5 220t-39 293zM291 1448q12 119 65.5 184.5t130.5 65.5q41 0 75 -15.5t63.5 -34 t55.5 -34t52 -15.5q29 0 49.5 24t30.5 75h125q-12 -117 -65.5 -183.5t-131.5 -66.5q-41 0 -74.5 15.5t-63.5 35t-55.5 34.5t-51.5 15q-29 0 -49.5 -24.5t-30.5 -75.5h-125zM332 676q0 -113 19.5 -204t56 -155.5t88.5 -99.5t118 -35q63 0 115.5 35t89.5 99.5t57.5 155.5 t20.5 204q0 225 -77 353t-206 128t-205.5 -128t-76.5 -353z" />
|
||||
<glyph unicode="Ö" d="M88 676q0 162 39 290t107.5 216t166 135t213.5 47q117 0 214.5 -47t166 -135t107.5 -216t39 -290q0 -164 -39 -293t-107.5 -220t-166 -139.5t-214.5 -48.5t-214 48.5t-165.5 139.5t-107.5 220t-39 293zM303 1571q0 53 34 88t87 35t88 -35t35 -88t-35 -87t-88 -34t-87 34 t-34 87zM332 676q0 -113 19.5 -204t56 -155.5t88.5 -99.5t118 -35q63 0 115.5 35t89.5 99.5t57.5 155.5t20.5 204q0 225 -77 353t-206 128t-205.5 -128t-76.5 -353zM682 1571q0 53 35 88t88 35t87 -35t34 -88t-34 -87t-87 -34t-88 34t-35 87z" />
|
||||
<glyph unicode="×" d="M190 367l304 307l-304 309l121 123l303 -311l304 311l120 -123l-303 -309l303 -307l-120 -123l-304 309l-303 -309z" />
|
||||
<glyph unicode="Ø" d="M78 12l129 191q-57 88 -88 206.5t-31 266.5q0 162 39 290t107.5 216t166 135t213.5 47q182 0 312 -111l108 160l129 -86l-133 -194q53 -86 82 -201t29 -256q0 -164 -39 -293t-107.5 -220t-166 -139.5t-214.5 -48.5q-174 0 -303 107l-106 -156zM332 676q0 -141 30 -248 l435 637q-74 92 -183 92q-129 0 -205.5 -128t-76.5 -353zM440 270q70 -88 174 -88q63 0 115.5 35t89.5 99.5t57.5 155.5t20.5 204q0 127 -25 225z" />
|
||||
<glyph unicode="Ù" d="M147 512v827h238v-845q0 -166 61.5 -239t169.5 -73q111 0 174.5 73t63.5 239v845h227v-827q0 -276 -120.5 -406.5t-344.5 -130.5q-219 0 -344 131.5t-125 405.5zM313 1679h258l172 -237h-190z" />
|
||||
<glyph unicode="Ú" d="M147 512v827h238v-845q0 -166 61.5 -239t169.5 -73q111 0 174.5 73t63.5 239v845h227v-827q0 -276 -120.5 -406.5t-344.5 -130.5q-219 0 -344 131.5t-125 405.5zM485 1442l172 237h258l-239 -237h-191z" />
|
||||
<glyph unicode="Û" d="M147 512v827h238v-845q0 -166 61.5 -239t169.5 -73q111 0 174.5 73t63.5 239v845h227v-827q0 -276 -120.5 -406.5t-344.5 -130.5q-219 0 -344 131.5t-125 405.5zM303 1442l197 237h229l197 -237h-185l-123 131h-8l-123 -131h-184z" />
|
||||
<glyph unicode="Ü" d="M147 512v827h238v-845q0 -166 61.5 -239t169.5 -73q111 0 174.5 73t63.5 239v845h227v-827q0 -276 -120.5 -406.5t-344.5 -130.5q-219 0 -344 131.5t-125 405.5zM303 1571q0 53 34 88t87 35t88 -35t35 -88t-35 -87t-88 -34t-87 34t-34 87zM682 1571q0 53 35 88t88 35 t87 -35t34 -88t-34 -87t-87 -34t-88 34t-35 87z" />
|
||||
<glyph unicode="Ý" d="M55 1339h252l168 -360q35 -78 69 -152.5t68 -156.5h9q37 82 71.5 157.5t69.5 153.5l166 358h246l-441 -874v-465h-237v465zM485 1442l172 237h258l-239 -237h-191z" />
|
||||
<glyph unicode="Þ" d="M178 0v1339h238v-213h213q111 0 204 -21.5t160.5 -69.5t106.5 -127t39 -195q0 -113 -39 -195t-107.5 -135t-162 -78.5t-201.5 -25.5h-213v-279h-238zM416 469h192q152 0 223.5 60.5t71.5 183.5q0 125 -73.5 174t-221.5 49h-192v-467z" />
|
||||
<glyph unicode="ß" d="M152 0v1038q0 94 28.5 174t83.5 137.5t137 89t189 31.5q90 0 158.5 -26.5t113.5 -71.5t67.5 -103.5t22.5 -121.5q0 -76 -23.5 -128t-53 -94t-53 -81t-23.5 -84q0 -41 26.5 -71t67.5 -55.5t88 -52t88 -64.5t67.5 -91t26.5 -131q0 -68 -23.5 -126t-68.5 -101t-108.5 -68 t-145.5 -25q-86 0 -154.5 21.5t-134.5 62.5l84 162q51 -35 99.5 -51t97.5 -16q63 0 98 35.5t35 86.5q0 49 -26.5 82t-67.5 60.5t-88 54.5t-88 60.5t-67.5 81t-26.5 116.5q0 66 23.5 113t53 91t53 90t23.5 108q0 66 -38 108.5t-105 42.5q-98 0 -149.5 -69.5t-51.5 -198.5 v-1016h-235z" />
|
||||
<glyph unicode="à" d="M145 270q0 84 39 148.5t123 109.5t215 74t318 41q-6 86 -61.5 141.5t-178.5 55.5q-86 0 -169 -32t-161 -75l-86 158q92 53 211 96t248 43q211 0 321.5 -111.5t110.5 -322.5v-596h-192l-19 125h-6q-80 -61 -177 -105.5t-200 -44.5q-74 0 -135 21.5t-106 60.5t-70 93 t-25 120zM359 1497h246l184 -323h-176zM373 289q0 -68 52 -98.5t128 -30.5t146.5 33.5t140.5 89.5v213q-135 -10 -225.5 -27.5t-143.5 -44.5t-75.5 -60.5t-22.5 -74.5z" />
|
||||
<glyph unicode="á" d="M145 270q0 84 39 148.5t123 109.5t215 74t318 41q-6 86 -61.5 141.5t-178.5 55.5q-86 0 -169 -32t-161 -75l-86 158q92 53 211 96t248 43q211 0 321.5 -111.5t110.5 -322.5v-596h-192l-19 125h-6q-80 -61 -177 -105.5t-200 -44.5q-74 0 -135 21.5t-106 60.5t-70 93 t-25 120zM373 289q0 -68 52 -98.5t128 -30.5t146.5 33.5t140.5 89.5v213q-135 -10 -225.5 -27.5t-143.5 -44.5t-75.5 -60.5t-22.5 -74.5zM486 1174l184 323h246l-254 -323h-176z" />
|
||||
<glyph unicode="â" d="M145 270q0 84 39 148.5t123 109.5t215 74t318 41q-6 86 -61.5 141.5t-178.5 55.5q-86 0 -169 -32t-161 -75l-86 158q92 53 211 96t248 43q211 0 321.5 -111.5t110.5 -322.5v-596h-192l-19 125h-6q-80 -61 -177 -105.5t-200 -44.5q-74 0 -135 21.5t-106 60.5t-70 93 t-25 120zM334 1174l203 323h201l203 -323h-177l-123 198h-8l-123 -198h-176zM373 289q0 -68 52 -98.5t128 -30.5t146.5 33.5t140.5 89.5v213q-135 -10 -225.5 -27.5t-143.5 -44.5t-75.5 -60.5t-22.5 -74.5z" />
|
||||
<glyph unicode="ã" d="M145 270q0 84 39 148.5t123 109.5t215 74t318 41q-6 86 -61.5 141.5t-178.5 55.5q-86 0 -169 -32t-161 -75l-86 158q92 53 211 96t248 43q211 0 321.5 -111.5t110.5 -322.5v-596h-192l-19 125h-6q-80 -61 -177 -105.5t-200 -44.5q-74 0 -135 21.5t-106 60.5t-70 93 t-25 120zM318 1182q14 123 67.5 191.5t141.5 68.5q37 0 67.5 -17.5t57 -38t50 -38t46.5 -17.5q33 0 53.5 25.5t30.5 85.5h125q-14 -123 -67.5 -191.5t-141.5 -68.5q-37 0 -67.5 17.5t-57.5 37.5t-49.5 37.5t-46.5 17.5q-33 0 -53.5 -25.5t-30.5 -84.5h-125zM373 289 q0 -68 52 -98.5t128 -30.5t146.5 33.5t140.5 89.5v213q-135 -10 -225.5 -27.5t-143.5 -44.5t-75.5 -60.5t-22.5 -74.5z" />
|
||||
<glyph unicode="ä" d="M145 270q0 84 39 148.5t123 109.5t215 74t318 41q-6 86 -61.5 141.5t-178.5 55.5q-86 0 -169 -32t-161 -75l-86 158q92 53 211 96t248 43q211 0 321.5 -111.5t110.5 -322.5v-596h-192l-19 125h-6q-80 -61 -177 -105.5t-200 -44.5q-74 0 -135 21.5t-106 60.5t-70 93 t-25 120zM291 1323q0 59 38 99t97 40t98.5 -40t39.5 -99t-39.5 -98t-98.5 -39t-97 39t-38 98zM373 289q0 -68 52 -98.5t128 -30.5t146.5 33.5t140.5 89.5v213q-135 -10 -225.5 -27.5t-143.5 -44.5t-75.5 -60.5t-22.5 -74.5zM711 1323q0 59 39 99t98 40t97.5 -40t38.5 -99 t-38.5 -98t-97.5 -39t-98 39t-39 98z" />
|
||||
<glyph unicode="å" d="M145 270q0 84 39 148.5t123 109.5t215 74t318 41q-6 86 -61.5 141.5t-178.5 55.5q-86 0 -169 -32t-161 -75l-86 158q92 53 211 96t248 43q211 0 321.5 -111.5t110.5 -322.5v-596h-192l-19 125h-6q-80 -61 -177 -105.5t-200 -44.5q-74 0 -135 21.5t-106 60.5t-70 93 t-25 120zM373 289q0 -68 52 -98.5t128 -30.5t146.5 33.5t140.5 89.5v213q-135 -10 -225.5 -27.5t-143.5 -44.5t-75.5 -60.5t-22.5 -74.5zM426 1315q0 92 58.5 146.5t152.5 54.5t152.5 -54.5t58.5 -146.5q0 -90 -58.5 -144.5t-152.5 -54.5t-152.5 54.5t-58.5 144.5zM547 1315 q0 -47 25.5 -76t64.5 -29t65 29t26 76t-26 76.5t-65 29.5t-64.5 -29.5t-25.5 -76.5z" />
|
||||
<glyph unicode="æ" d="M33 274q0 154 120.5 241t364.5 128q-4 92 -36.5 145.5t-110.5 53.5q-47 0 -108.5 -22.5t-112.5 -55.5l-87 158q74 45 156 76.5t172 31.5q94 0 152.5 -48t89.5 -126q51 86 116.5 130t159.5 44q76 0 134.5 -38t97.5 -102.5t58.5 -150.5t19.5 -182q0 -35 -3.5 -65.5 t-7.5 -53.5h-497q12 -129 66 -202.5t153 -73.5q49 0 92 15.5t84 43.5l82 -153q-55 -41 -126 -67t-140 -26q-111 0 -184.5 46.5t-123.5 125.5q-84 -86 -157.5 -129t-149.5 -43q-129 0 -201.5 83t-72.5 216zM248 291q0 -66 32.5 -98.5t88.5 -32.5q41 0 90 27.5t90 78.5 q-14 41 -21.5 88t-9.5 95l-2 47q-143 -27 -205.5 -78t-62.5 -127zM709 588h319q0 53 -7 100t-23.5 83t-43 56.5t-67.5 20.5q-72 0 -120 -65.5t-58 -194.5z" />
|
||||
<glyph unicode="ç" d="M150 502q0 125 46 223t123.5 165.5t182 103.5t219.5 36q123 0 216 -41t157 -100l-113 -148q-59 47 -119.5 72t-128.5 25q-152 0 -246 -91.5t-94 -244.5q0 -76 24.5 -137.5t68.5 -105.5t105.5 -67.5t135.5 -23.5q86 0 156.5 32.5t130.5 78.5l98 -152q-86 -76 -192.5 -114 t-214.5 -38q-119 0 -220.5 35t-176.5 102.5t-116.5 166t-41.5 223.5zM506 -342q78 10 127 31.5t49 62.5q0 33 -29.5 55.5t-95.5 38.5l82 160h143l-47 -100q51 -18 86 -52t35 -98q0 -49 -26.5 -83.5t-72.5 -59.5t-105.5 -39t-125.5 -18z" />
|
||||
<glyph unicode="è" d="M127 502q0 123 44 221t115.5 166.5t165 104.5t191.5 36q113 0 200 -36t146.5 -98t90 -150.5t30.5 -192.5q0 -35 -3 -65.5t-7 -49.5h-731q12 -135 106 -207.5t232 -72.5q78 0 145.5 21.5t136.5 60.5l80 -148q-82 -51 -182.5 -84t-210.5 -33q-115 0 -215.5 36t-174 103.5 t-116.5 165t-43 222.5zM365 1497h246l184 -323h-176zM367 598h526q0 117 -61.5 183.5t-182.5 66.5q-102 0 -182 -63.5t-100 -186.5z" />
|
||||
<glyph unicode="é" d="M127 502q0 123 44 221t115.5 166.5t165 104.5t191.5 36q113 0 200 -36t146.5 -98t90 -150.5t30.5 -192.5q0 -35 -3 -65.5t-7 -49.5h-731q12 -135 106 -207.5t232 -72.5q78 0 145.5 21.5t136.5 60.5l80 -148q-82 -51 -182.5 -84t-210.5 -33q-115 0 -215.5 36t-174 103.5 t-116.5 165t-43 222.5zM367 598h526q0 117 -61.5 183.5t-182.5 66.5q-102 0 -182 -63.5t-100 -186.5zM492 1174l184 323h246l-254 -323h-176z" />
|
||||
<glyph unicode="ê" d="M127 502q0 123 44 221t115.5 166.5t165 104.5t191.5 36q113 0 200 -36t146.5 -98t90 -150.5t30.5 -192.5q0 -35 -3 -65.5t-7 -49.5h-731q12 -135 106 -207.5t232 -72.5q78 0 145.5 21.5t136.5 60.5l80 -148q-82 -51 -182.5 -84t-210.5 -33q-115 0 -215.5 36t-174 103.5 t-116.5 165t-43 222.5zM340 1174l203 323h201l203 -323h-177l-123 198h-8l-123 -198h-176zM367 598h526q0 117 -61.5 183.5t-182.5 66.5q-102 0 -182 -63.5t-100 -186.5z" />
|
||||
<glyph unicode="ë" d="M127 502q0 123 44 221t115.5 166.5t165 104.5t191.5 36q113 0 200 -36t146.5 -98t90 -150.5t30.5 -192.5q0 -35 -3 -65.5t-7 -49.5h-731q12 -135 106 -207.5t232 -72.5q78 0 145.5 21.5t136.5 60.5l80 -148q-82 -51 -182.5 -84t-210.5 -33q-115 0 -215.5 36t-174 103.5 t-116.5 165t-43 222.5zM295 1323q0 59 38 99t97 40t98.5 -40t39.5 -99t-39.5 -98t-98.5 -39t-97 39t-38 98zM367 598h526q0 117 -61.5 183.5t-182.5 66.5q-102 0 -182 -63.5t-100 -186.5zM715 1323q0 59 39 99t98 40t97.5 -40t38.5 -99t-38.5 -98t-97.5 -39t-98 39t-39 98z " />
|
||||
<glyph unicode="ì" d="M172 819v187h672v-1006h-236v819h-436zM430 1497h246l184 -323h-176z" />
|
||||
<glyph unicode="í" d="M172 819v187h672v-1006h-236v819h-436zM557 1174l184 323h246l-254 -323h-176z" />
|
||||
<glyph unicode="î" d="M172 819v187h672v-1006h-236v819h-436zM405 1174l203 323h201l203 -323h-177l-123 198h-8l-123 -198h-176z" />
|
||||
<glyph unicode="ï" d="M172 819v187h672v-1006h-236v819h-436zM362 1323q0 59 38 99t97 40t98.5 -40t39.5 -99t-39.5 -98t-98.5 -39t-97 39t-38 98zM782 1323q0 59 39 99t98 40t97.5 -40t38.5 -99t-38.5 -98t-97.5 -39t-98 39t-39 98z" />
|
||||
<glyph unicode="ð" d="M109 461q0 106 35.5 192t99 146.5t146.5 92.5t179 32q84 0 161 -34t130 -104q-29 117 -84 206t-137 161l-307 -156l-66 109l260 133q-49 33 -103 62.5t-116 58.5l105 145q80 -37 155.5 -79t143.5 -93l278 142l64 -111l-234 -119q66 -61 120 -135t92 -162t59.5 -190.5 t21.5 -220.5q0 -123 -35 -226.5t-100.5 -178.5t-158.5 -116t-212 -41q-100 0 -190 34t-159 96.5t-108.5 152.5t-39.5 203zM328 461q0 -68 22.5 -122t61.5 -92t91 -58.5t111 -20.5q135 0 205 95t70 261v42.5t-2 39.5q-63 78 -133 108.5t-142 30.5q-137 0 -210.5 -75.5 t-73.5 -208.5z" />
|
||||
<glyph unicode="ñ" d="M168 0v1006h194l19 -152h8q72 72 159 124t204 52q174 0 256 -105.5t82 -301.5v-623h-238v592q0 123 -42 179t-146 56q-74 0 -131.5 -34.5t-126.5 -106.5v-686h-238zM328 1182q14 123 67.5 191.5t141.5 68.5q37 0 67.5 -17.5t57 -38t50 -38t46.5 -17.5q33 0 53.5 25.5 t30.5 85.5h125q-14 -123 -67.5 -191.5t-141.5 -68.5q-37 0 -67.5 17.5t-57.5 37.5t-49.5 37.5t-46.5 17.5q-33 0 -53.5 -25.5t-30.5 -84.5h-125z" />
|
||||
<glyph unicode="ò" d="M109 502q0 125 42 223t111.5 165.5t161.5 103.5t190 36t190.5 -36t162 -103.5t111.5 -165.5t42 -223t-42 -223.5t-111.5 -166t-161.5 -102.5t-191 -35q-98 0 -190 35t-161.5 102.5t-111.5 166t-42 223.5zM336 1497h246l184 -323h-176zM352 502q0 -152 70 -243t192 -91 q123 0 193 91t70 243q0 154 -70 245t-193 91t-192.5 -91t-69.5 -245z" />
|
||||
<glyph unicode="ó" d="M109 502q0 125 42 223t111.5 165.5t161.5 103.5t190 36t190.5 -36t162 -103.5t111.5 -165.5t42 -223t-42 -223.5t-111.5 -166t-161.5 -102.5t-191 -35q-98 0 -190 35t-161.5 102.5t-111.5 166t-42 223.5zM352 502q0 -152 70 -243t192 -91q123 0 193 91t70 243 q0 154 -70 245t-193 91t-192.5 -91t-69.5 -245zM463 1174l184 323h246l-254 -323h-176z" />
|
||||
<glyph unicode="ô" d="M109 502q0 125 42 223t111.5 165.5t161.5 103.5t190 36t190.5 -36t162 -103.5t111.5 -165.5t42 -223t-42 -223.5t-111.5 -166t-161.5 -102.5t-191 -35q-98 0 -190 35t-161.5 102.5t-111.5 166t-42 223.5zM311 1174l203 323h201l203 -323h-177l-123 198h-8l-123 -198h-176 zM352 502q0 -152 70 -243t192 -91q123 0 193 91t70 243q0 154 -70 245t-193 91t-192.5 -91t-69.5 -245z" />
|
||||
<glyph unicode="õ" d="M109 502q0 125 42 223t111.5 165.5t161.5 103.5t190 36t190.5 -36t162 -103.5t111.5 -165.5t42 -223t-42 -223.5t-111.5 -166t-161.5 -102.5t-191 -35q-98 0 -190 35t-161.5 102.5t-111.5 166t-42 223.5zM295 1182q14 123 67.5 191.5t141.5 68.5q37 0 67.5 -17.5t57 -38 t50 -38t46.5 -17.5q33 0 53.5 25.5t30.5 85.5h125q-14 -123 -67.5 -191.5t-141.5 -68.5q-37 0 -67.5 17.5t-57.5 37.5t-49.5 37.5t-46.5 17.5q-33 0 -53.5 -25.5t-30.5 -84.5h-125zM352 502q0 -152 70 -243t192 -91q123 0 193 91t70 243q0 154 -70 245t-193 91t-192.5 -91 t-69.5 -245z" />
|
||||
<glyph unicode="ö" d="M109 502q0 125 42 223t111.5 165.5t161.5 103.5t190 36t190.5 -36t162 -103.5t111.5 -165.5t42 -223t-42 -223.5t-111.5 -166t-161.5 -102.5t-191 -35q-98 0 -190 35t-161.5 102.5t-111.5 166t-42 223.5zM268 1323q0 59 38 99t97 40t98.5 -40t39.5 -99t-39.5 -98 t-98.5 -39t-97 39t-38 98zM352 502q0 -152 70 -243t192 -91q123 0 193 91t70 243q0 154 -70 245t-193 91t-192.5 -91t-69.5 -245zM688 1323q0 59 39 99t98 40t97.5 -40t38.5 -99t-38.5 -98t-97.5 -39t-98 39t-39 98z" />
|
||||
<glyph unicode="÷" d="M160 590v172h909v-172h-909zM475 307q0 59 40 96t99 37t99.5 -36.5t40.5 -96.5q0 -59 -40 -97t-100 -38q-59 0 -99 38t-40 97zM475 1044q0 59 40 96.5t99 37.5t99.5 -37t40.5 -97q0 -59 -40.5 -97t-99.5 -38t-99 38t-40 97z" />
|
||||
<glyph unicode="ø" d="M109 502q0 125 42 223t111.5 165.5t161.5 103.5t190 36q162 0 291 -88l99 115l94 -74l-103 -121q57 -66 91 -157t34 -203q0 -125 -42 -223.5t-111.5 -166t-161.5 -102.5t-191 -35q-80 0 -154.5 22.5t-137.5 68.5l-97 -115l-94 74l102 120q-59 66 -91.5 156t-32.5 201z M352 502q0 -102 31 -178l391 462q-31 29 -71.5 44.5t-88.5 15.5q-61 0 -110 -25.5t-83 -70.5t-51.5 -108.5t-17.5 -139.5zM453 221q68 -61 161 -61q61 0 109.5 25.5t82.5 70.5t52.5 107.5t18.5 138.5q0 104 -33 182z" />
|
||||
<glyph unicode="ù" d="M143 383v623h236v-592q0 -123 42 -179.5t146 -56.5q72 0 128.5 33t123.5 117v678h236v-1006h-193l-18 160h-8q-72 -84 -158 -134.5t-199 -50.5q-176 0 -256 105.5t-80 302.5zM328 1497h246l184 -323h-176z" />
|
||||
<glyph unicode="ú" d="M143 383v623h236v-592q0 -123 42 -179.5t146 -56.5q72 0 128.5 33t123.5 117v678h236v-1006h-193l-18 160h-8q-72 -84 -158 -134.5t-199 -50.5q-176 0 -256 105.5t-80 302.5zM455 1174l184 323h246l-254 -323h-176z" />
|
||||
<glyph unicode="û" d="M143 383v623h236v-592q0 -123 42 -179.5t146 -56.5q72 0 128.5 33t123.5 117v678h236v-1006h-193l-18 160h-8q-72 -84 -158 -134.5t-199 -50.5q-176 0 -256 105.5t-80 302.5zM303 1174l203 323h201l203 -323h-177l-123 198h-8l-123 -198h-176z" />
|
||||
<glyph unicode="ü" d="M143 383v623h236v-592q0 -123 42 -179.5t146 -56.5q72 0 128.5 33t123.5 117v678h236v-1006h-193l-18 160h-8q-72 -84 -158 -134.5t-199 -50.5q-176 0 -256 105.5t-80 302.5zM260 1323q0 59 38 99t97 40t98.5 -40t39.5 -99t-39.5 -98t-98.5 -39t-97 39t-38 98zM680 1323 q0 59 39 99t98 40t97.5 -40t38.5 -99t-38.5 -98t-97.5 -39t-98 39t-39 98z" />
|
||||
<glyph unicode="ý" d="M82 1006h235l207 -494q29 -68 55.5 -143.5t55.5 -151.5h8q23 72 49.5 147.5t50.5 147.5l183 494h223l-420 -1051q-33 -86 -73 -153.5t-93 -115.5t-122.5 -74t-159.5 -26q-41 0 -78 5.5t-66 15.5l45 184q20 -6 41 -10t43 -4q96 0 153.5 48t88.5 124l24 63zM475 1174 l184 323h246l-254 -323h-176z" />
|
||||
<glyph unicode="þ" d="M168 -397v1843h238v-383l-9 -166q68 61 148 97t164 36q96 0 172.5 -36t130 -103.5t81 -161.5t27.5 -211q0 -129 -38 -230.5t-100 -170t-142 -105.5t-166 -37q-74 0 -144.5 33t-130.5 86l7 -176v-315h-238zM406 262q55 -51 113.5 -71.5t105.5 -20.5q104 0 178 87t74 259 q0 152 -55.5 236t-178.5 84q-57 0 -116.5 -29t-120.5 -92v-453z" />
|
||||
<glyph unicode="ÿ" d="M82 1006h235l207 -494q29 -68 55.5 -143.5t55.5 -151.5h8q23 72 49.5 147.5t50.5 147.5l183 494h223l-420 -1051q-33 -86 -73 -153.5t-93 -115.5t-122.5 -74t-159.5 -26q-41 0 -78 5.5t-66 15.5l45 184q20 -6 41 -10t43 -4q96 0 153.5 48t88.5 124l24 63zM280 1323 q0 59 38 99t97 40t98.5 -40t39.5 -99t-39.5 -98t-98.5 -39t-97 39t-38 98zM700 1323q0 59 39 99t98 40t97.5 -40t38.5 -99t-38.5 -98t-97.5 -39t-98 39t-39 98z" />
|
||||
<glyph unicode="Œ" d="M53 676q0 166 40 290t113 206.5t175 124.5t227 42h586v-198h-363v-344h275v-201h-275v-395h383v-201h-616q-123 0 -223.5 43t-172 128t-110.5 212t-39 293zM297 676q0 -250 72.5 -366.5t212.5 -116.5h36v954h-36q-139 0 -212 -110.5t-73 -360.5z" />
|
||||
<glyph unicode="œ" d="M23 504q0 125 28.5 223t79.5 166t118.5 102.5t145.5 34.5q92 0 157.5 -54t104.5 -153q41 98 106.5 152.5t151.5 54.5q74 0 130.5 -38t94.5 -102.5t57.5 -150.5t19.5 -182q0 -35 -2.5 -60.5t-6.5 -58.5h-475q12 -129 65.5 -202.5t145.5 -73.5q47 0 84 15.5t78 43.5 l82 -153q-53 -41 -120 -67t-134 -26q-88 0 -160 49.5t-115 143.5q-45 -94 -109.5 -143.5t-158.5 -49.5q-78 0 -145.5 35t-116.5 102.5t-77.5 166t-28.5 225.5zM238 504q0 -154 42 -246t126 -92q74 0 115.5 92t41.5 246q0 152 -42 244t-115 92q-84 0 -126 -92t-42 -244z M731 588h297q0 51 -6 99t-21.5 83t-41 56.5t-62.5 21.5q-72 0 -114 -67.5t-52 -192.5z" />
|
||||
<glyph unicode="Ÿ" d="M55 1339h252l168 -360q35 -78 69 -152.5t68 -156.5h9q37 82 71.5 157.5t69.5 153.5l166 358h246l-441 -874v-465h-237v465zM303 1571q0 53 34 88t87 35t88 -35t35 -88t-35 -87t-88 -34t-87 34t-34 87zM682 1571q0 53 35 88t88 35t87 -35t34 -88t-34 -87t-87 -34t-88 34 t-35 87z" />
|
||||
<glyph unicode="ˆ" d="M311 1174l203 323h201l203 -323h-177l-123 198h-8l-123 -198h-176z" />
|
||||
<glyph unicode="˜" d="M295 1182q14 123 67.5 191.5t141.5 68.5q37 0 67.5 -17.5t57 -38t50 -38t46.5 -17.5q33 0 53.5 25.5t30.5 85.5h125q-14 -123 -67.5 -191.5t-141.5 -68.5q-37 0 -67.5 17.5t-57.5 37.5t-49.5 37.5t-46.5 17.5q-33 0 -53.5 -25.5t-30.5 -84.5h-125z" />
|
||||
<glyph unicode=" " horiz-adv-x="905" />
|
||||
<glyph unicode=" " horiz-adv-x="1810" />
|
||||
<glyph unicode=" " horiz-adv-x="905" />
|
||||
<glyph unicode=" " horiz-adv-x="1810" />
|
||||
<glyph unicode=" " horiz-adv-x="603" />
|
||||
<glyph unicode=" " horiz-adv-x="452" />
|
||||
<glyph unicode=" " horiz-adv-x="301" />
|
||||
<glyph unicode=" " horiz-adv-x="301" />
|
||||
<glyph unicode=" " horiz-adv-x="226" />
|
||||
<glyph unicode=" " horiz-adv-x="362" />
|
||||
<glyph unicode=" " horiz-adv-x="100" />
|
||||
<glyph unicode="‐" d="M160 590v172h909v-172h-909z" />
|
||||
<glyph unicode="‑" d="M160 590v172h909v-172h-909z" />
|
||||
<glyph unicode="‒" d="M160 590v172h909v-172h-909z" />
|
||||
<glyph unicode="–" d="M164 424v188h901v-188h-901z" />
|
||||
<glyph unicode="—" d="M41 424v188h1147v-188h-1147z" />
|
||||
<glyph unicode="‘" d="M401 942q0 160 84 285t244 203l68 -130q-100 -53 -156.5 -127.5t-62.5 -177.5q18 8 45 9q74 0 119.5 -46.5t45.5 -119.5q0 -84 -48 -134.5t-126 -50.5q-98 0 -155.5 77t-57.5 212z" />
|
||||
<glyph unicode="’" d="M430 782q100 53 156.5 128t64.5 177q-23 -8 -49 -8q-72 0 -119 46t-47 120q0 84 49.5 134.5t124.5 50.5q98 0 155.5 -77t57.5 -212q0 -160 -83 -285t-242 -203z" />
|
||||
<glyph unicode="‚" d="M430 -338q100 53 156.5 128t64.5 177q-23 -8 -49 -8q-72 0 -119 46t-47 120q0 84 49.5 134.5t124.5 50.5q98 0 155.5 -77t57.5 -212q0 -160 -83 -285t-242 -203z" />
|
||||
<glyph unicode="“" d="M149 942q0 160 84 285t244 203l68 -130q-100 -53 -156.5 -127.5t-62.5 -177.5q18 8 45 9q74 0 119.5 -46.5t45.5 -119.5q0 -84 -48 -134.5t-126 -50.5q-98 0 -155.5 77t-57.5 212zM655 942q0 160 84 285t244 203l68 -130q-100 -53 -156.5 -127.5t-62.5 -177.5q18 8 45 9 q74 0 119.5 -46.5t45.5 -119.5q0 -84 -48 -134.5t-126 -50.5q-98 0 -155.5 77t-57.5 212z" />
|
||||
<glyph unicode="”" d="M178 782q100 53 156.5 128t64.5 177q-23 -8 -49 -8q-72 0 -119 46t-47 120q0 84 49.5 134.5t124.5 50.5q98 0 155.5 -77t57.5 -212q0 -160 -83 -285t-242 -203zM684 782q100 53 156.5 128t64.5 177q-23 -8 -49 -8q-72 0 -119 46t-47 120q0 84 49.5 134.5t124.5 50.5 q98 0 155.5 -77t57.5 -212q0 -160 -83 -285t-242 -203z" />
|
||||
<glyph unicode="„" d="M178 -338q100 53 156.5 128t64.5 177q-23 -8 -49 -8q-72 0 -119 46t-47 120q0 84 49.5 134.5t124.5 50.5q98 0 155.5 -77t57.5 -212q0 -160 -83 -285t-242 -203zM684 -338q100 53 156.5 128t64.5 177q-23 -8 -49 -8q-72 0 -119 46t-47 120q0 84 49.5 134.5t124.5 50.5 q98 0 155.5 -77t57.5 -212q0 -160 -83 -285t-242 -203z" />
|
||||
<glyph unicode="•" d="M295 537q0 70 25.5 127t68.5 99t101.5 65.5t123.5 23.5q66 0 124.5 -23.5t101.5 -65.5t68.5 -99.5t25.5 -126.5q0 -70 -25.5 -127.5t-68.5 -99.5t-101.5 -65.5t-124.5 -23.5t-124 23.5t-101 65.5t-68.5 99.5t-25.5 127.5z" />
|
||||
<glyph unicode="…" d="M31 152q0 76 47 126t119 50t118.5 -50.5t46.5 -125.5q0 -78 -47 -127.5t-118 -49.5q-72 0 -119 49.5t-47 127.5zM449 152q0 76 47 126t118 50q72 0 119 -50.5t47 -125.5q0 -78 -47 -127.5t-119 -49.5t-118.5 49.5t-46.5 127.5zM866 152q0 76 47.5 126t118.5 50 q72 0 119 -50.5t47 -125.5q0 -78 -47 -127.5t-119 -49.5t-119 49.5t-47 127.5z" />
|
||||
<glyph unicode=" " horiz-adv-x="362" />
|
||||
<glyph unicode="‹" d="M381 399v234l332 321l104 -94l-260 -344l260 -346l-104 -92z" />
|
||||
<glyph unicode="›" d="M412 170l260 346l-260 344l104 94l332 -321v-234l-332 -321z" />
|
||||
<glyph unicode=" " horiz-adv-x="452" />
|
||||
<glyph unicode="€" d="M104 461v114l117 9q-2 16 -2 31.5v31.5v30.5t2 29.5h-117v114l132 8q20 119 70 211.5t123 156t167 97t203 33.5q104 0 198.5 -43t161.5 -117l-133 -129q-51 47 -107.5 76t-127.5 29q-129 0 -208 -82t-108 -230h559v-124h-573q-2 -12 -2 -24.5v-27.5v-35.5t2 -33.5h491 v-125h-475q33 -143 111 -222t198 -79q80 0 141.5 32.5t116.5 96.5l134 -123q-82 -92 -180.5 -141.5t-223.5 -49.5q-102 0 -191 32t-159 93.5t-119 152.5t-69 208h-132z" />
|
||||
<glyph unicode="™" d="M-18 1239v145h518v-145h-181v-494h-159v494h-178zM580 745v639h178l82 -213l49 -155h8l47 155l80 213h178v-639h-141v238l16 225h-8l-127 -342h-102l-127 342h-8l18 -225v-238h-143z" />
|
||||
<glyph unicode="◼" horiz-adv-x="1003" d="M0 0v1004h1004v-1004h-1004z" />
|
||||
<glyph unicode="fi" d="M59 819v176l136 11v104q0 78 18 144.5t59 114.5t103.5 74.5t152.5 26.5q55 0 102.5 -10t82.5 -24l-45 -176q-55 25 -109 24q-129 0 -129 -170v-108h197v-187h-197v-819h-235v819h-136zM782 1341q0 72 50 117t124 45q76 0 125 -45t49 -117t-49 -115.5t-125 -43.5 q-74 0 -124 44t-50 115zM840 0v1006h237v-1006h-237z" />
|
||||
<glyph unicode="fl" d="M70 819v176l135 11v104q0 78 18.5 144.5t58.5 114.5t102 74.5t153 26.5q55 0 102 -10t82 -24l-45 -176q-53 25 -109 24q-127 0 -127 -170v-108h197v-187h-197v-819h-235v819h-135zM813 258v1188h236v-1200q0 -43 16 -60.5t35 -17.5h15t22 4l28 -176q-23 -10 -52.5 -15.5 t-72.5 -5.5q-125 0 -176 76t-51 207z" />
|
||||
</font>
|
||||
</defs></svg>
|
After Width: | Height: | Size: 58 KiB |
BIN
website/assets/fonts/sourcecodepro-semibold.ttf
Normal file
BIN
website/assets/fonts/sourcecodepro-semibold.woff
Normal file
BIN
website/assets/fonts/worksans-bold.eot
Executable file
1909
website/assets/fonts/worksans-bold.svg
Executable file
After Width: | Height: | Size: 148 KiB |
BIN
website/assets/fonts/worksans-bold.ttf
Executable file
BIN
website/assets/fonts/worksans-bold.woff
Executable file
BIN
website/assets/fonts/worksans-bold.woff2
Executable file
BIN
website/assets/fonts/worksans-regular.eot
Executable file
1586
website/assets/fonts/worksans-regular.svg
Executable file
After Width: | Height: | Size: 133 KiB |
BIN
website/assets/fonts/worksans-regular.ttf
Executable file
BIN
website/assets/fonts/worksans-regular.woff
Executable file
BIN
website/assets/fonts/worksans-regular.woff2
Executable file
BIN
website/assets/fonts/worksans-semibold.eot
Executable file
1909
website/assets/fonts/worksans-semibold.svg
Executable file
After Width: | Height: | Size: 149 KiB |