diff options
author | olOwOlo <26087907+olOwOlo@users.noreply.github.com> | 2017-08-27 22:38:42 +0800 |
---|---|---|
committer | olOwOlo <26087907+olOwOlo@users.noreply.github.com> | 2017-08-27 22:38:42 +0800 |
commit | 3c6cb7f29631dfcdd954e7cbd5d2370efe7eb827 (patch) | |
tree | d374e090981dda28452dbd13400e377b9cc06277 /src |
🎉 first commit
Diffstat (limited to 'src')
40 files changed, 2700 insertions, 0 deletions
diff --git a/src/.babelrc b/src/.babelrc new file mode 100644 index 0000000..2645a84 --- /dev/null +++ b/src/.babelrc @@ -0,0 +1,10 @@ +{ + "presets": ["es2015","stage-2"], + "plugins": [ + ["transform-runtime", { + "polyfill": false, + "regenerator": true + }] + ], + "ignore": [] +} diff --git a/src/css/_base.scss b/src/css/_base.scss new file mode 100644 index 0000000..0e1c342 --- /dev/null +++ b/src/css/_base.scss @@ -0,0 +1,98 @@ +@import '_common/normalize'; + +html { + font-size: $global-font-size; + box-sizing: border-box; +} + +body { + padding: 0; + margin: 0; + font-family: $global-font-family; + font-weight: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + line-height: $global-lineheight; + color: $global-font-color; + background: $global-background; + scroll-behavior: smooth; + border-top: 3px solid $theme-color; +} + +@include max-screen() { + body { + border-top: 0; + } +} + +::selection { + background: $theme-color; + color: #fff; +} + +// ::-webkit-scrollbar { +// width: 8px; +// height: 6px; +// } + +// ::-webkit-scrollbar-thumb { +// background: lighten($theme-color, 10%); +// border-radius: 5px; +// } + +// ::-webkit-scrollbar-track { +// background: rgba(211, 211, 211, 0.4); +// border-radius: 5px; +// } + +img { + max-width: 100%; + height: auto; + display: inline-block; + vertical-align: middle; +} + +a { + color: $global-font-color; + text-decoration: none; +} + +@each $header, $size in $global-headings { + #{$header} { + font-size: $size; + font-family: $global-serif-font-family; + } +} + +.container { + margin: 0 auto; + width: $global-body-width; +} + +@include max-screen() { + .container { + width: 100%; + box-shadow: -1px -5px 5px $gray; + } +} + +.content-wrapper { + padding: $global-container-padding; +} + +// make video fluid: +// https://css-tricks.com/NetMag/FluidWidthVideo/Article-FluidWidthVideo.php +// class video-container is the wrapper used by hexo youtube tag plugin +.video-container { + position: relative; + padding-bottom: 56.25%; /* 16:9 */ + padding-top: 25px; + height: 0; +} +.video-container iframe { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +}
\ No newline at end of file diff --git a/src/css/_common/_animation.scss b/src/css/_common/_animation.scss new file mode 100644 index 0000000..2c3934c --- /dev/null +++ b/src/css/_common/_animation.scss @@ -0,0 +1,153 @@ +@mixin underline-from-center() { + display: inline-block; + vertical-align: middle; + transform: translateZ(0); + backface-visibility: hidden; + box-shadow: 0 0 1px transparent; + position: relative; + overflow: hidden; + + &:before { + content: ''; + position: absolute; + z-index: -1; + height: 2px; + bottom: 0; + left: 51%; + right: 51%; + background: $theme-color; + transition-duration: 0.2s; + transition-property: right, left; + transition-timing-function: ease-out; + } + + &.active, + &:active, + &:focus, + &:hover { + &:before { + right: 0; + left: 0; + } + } +} + +@mixin mobile-menu-icon() { + @keyframes clickfirst { + 0% { + transform: translateY(6px) rotate(0deg); + + } + + 100% { + transform: translateY(0) rotate(45deg); + } + } + + @keyframes clickmid { + 0% { + opacity: 1; + } + + 100% { + opacity: 0; + } + } + + @keyframes clicklast { + 0% { + transform: translateY(-6px) rotate(0deg); + } + + 100% { + transform: translateY(0) rotate(-45deg); + } + } + + @keyframes outfirst { + 0% { + transform: translateY(0) rotate(-45deg); + } + + 100% { + transform: translateY(-6px) rotate(0deg); + } + } + + @keyframes outmid { + 0% { + opacity: 0; + } + + 100% { + opacity: 1; + } + } + + @keyframes outlast { + 0% { + transform: translateY(0) rotate(45deg); + } + + 100% { + transform: translateY(6px) rotate(0deg); + } + } + + span { + position: absolute; + left: calc((100% - 20px) / 2); + top: calc((100% - 1px) / 2); + width: 20px; + height: 1px; + background-color: $theme-color; + + &:nth-child(1) { + transform: translateY(6px) rotate(0deg); + } + + &:nth-child(3) { + transform: translateY(-6px) rotate(0deg); + } + } + + &.icon-click { + span:nth-child(1) { + animation-duration: 0.5s; + animation-fill-mode: both; + animation-name: clickfirst; + } + + span:nth-child(2) { + animation-duration: 0.2s; + animation-fill-mode: both; + animation-name: clickmid; + } + + span:nth-child(3) { + animation-duration: 0.5s; + animation-fill-mode: both; + animation-name: clicklast; + } + } + + &.icon-out { + span:nth-child(1) { + animation-duration: 0.5s; + animation-fill-mode: both; + animation-name: outfirst; + } + + span:nth-child(2) { + animation-duration: 0.2s; + animation-fill-mode: both; + animation-name: outmid; + } + + span:nth-child(3) { + animation-duration: 0.5s; + animation-fill-mode: both; + animation-name: outlast; + } + } +}
\ No newline at end of file diff --git a/src/css/_common/_normalize.scss b/src/css/_common/_normalize.scss new file mode 100644 index 0000000..81c6f31 --- /dev/null +++ b/src/css/_common/_normalize.scss @@ -0,0 +1,427 @@ +/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ + +/** + * 1. Set default font family to sans-serif. + * 2. Prevent iOS text size adjust after orientation change, without disabling + * user zoom. + */ + +html { + font-family: sans-serif; /* 1 */ + -ms-text-size-adjust: 100%; /* 2 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/** + * Remove default margin. + */ + +body { + margin: 0; +} + +/* HTML5 display definitions + ========================================================================== */ + +/** + * Correct `block` display not defined for any HTML5 element in IE 8/9. + * Correct `block` display not defined for `details` or `summary` in IE 10/11 + * and Firefox. + * Correct `block` display not defined for `main` in IE 11. + */ + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} + +/** + * 1. Correct `inline-block` display not defined in IE 8/9. + * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. + */ + +audio, +canvas, +progress, +video { + display: inline-block; /* 1 */ + vertical-align: baseline; /* 2 */ +} + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ + +audio:not([controls]) { + display: none; + height: 0; +} + +/** + * Address `[hidden]` styling not present in IE 8/9/10. + * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. + */ + +[hidden], +template { + display: none; +} + +/* Links + ========================================================================== */ + +/** + * Remove the gray background color from active links in IE 10. + */ + +a { + background-color: transparent; +} + +/** + * Improve readability when focused and also mouse hovered in all browsers. + */ + +a:active, +a:hover { + outline: 0; +} + +/* Text-level semantics + ========================================================================== */ + +/** + * Address styling not present in IE 8/9/10/11, Safari, and Chrome. + */ + +abbr[title] { + border-bottom: 1px dotted; +} + +/** + * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. + */ + +b, +strong { + font-weight: bold; +} + +/** + * Address styling not present in Safari and Chrome. + */ + +dfn { + font-style: italic; +} + +/** + * Address variable `h1` font-size and margin within `section` and `article` + * contexts in Firefox 4+, Safari, and Chrome. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/** + * Address styling not present in IE 8/9. + */ + +mark { + background: #ff0; + color: #000; +} + +/** + * Address inconsistent and variable font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` affecting `line-height` in all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove border when inside `a` element in IE 8/9/10. + */ + +img { + border: 0; +} + +/** + * Correct overflow not hidden in IE 9/10/11. + */ + +svg:not(:root) { + overflow: hidden; +} + +/* Grouping content + ========================================================================== */ + +/** + * Address margin not present in IE 8/9 and Safari. + */ + +figure { + margin: 1em 40px; +} + +/** + * Address differences between Firefox and other browsers. + */ + +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} + +/** + * Contain overflow in all browsers. + */ + +pre { + overflow: auto; +} + +/** + * Address odd `em`-unit font size rendering in all browsers. + */ + +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} + +/* Forms + ========================================================================== */ + +/** + * Known limitation: by default, Chrome and Safari on OS X allow very limited + * styling of `select`, unless a `border` property is set. + */ + +/** + * 1. Correct color not being inherited. + * Known issue: affects color of disabled elements. + * 2. Correct font properties not being inherited. + * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. + */ + +button, +input, +optgroup, +select, +textarea { + color: inherit; /* 1 */ + font: inherit; /* 2 */ + margin: 0; /* 3 */ +} + +/** + * Address `overflow` set to `hidden` in IE 8/9/10/11. + */ + +button { + overflow: visible; +} + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. + * Correct `select` style inheritance in Firefox. + */ + +button, +select { + text-transform: none; +} + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + * `input` and others. + */ + +button, +html input[type="button"], /* 1 */ +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; /* 2 */ + cursor: pointer; /* 3 */ +} + +/** + * Re-set default cursor for disabled elements. + */ + +button[disabled], +html input[disabled] { + cursor: default; +} + +/** + * Remove inner padding and border in Firefox 4+. + */ + +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/** + * Address Firefox 4+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ + +input { + line-height: normal; +} + +/** + * It's recommended that you don't attempt to style these elements. + * Firefox's implementation doesn't respect box-sizing, padding, or width. + * + * 1. Address box sizing set to `content-box` in IE 8/9/10. + * 2. Remove excess padding in IE 8/9/10. + */ + +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Fix the cursor style for Chrome's increment/decrement buttons. For certain + * `font-size` values of the `input`, it causes the cursor style of the + * decrement button to change from `default` to `text`. + */ + +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Address `appearance` set to `searchfield` in Safari and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari and Chrome + * (include `-moz` to future-proof). + */ + +input[type="search"] { + -webkit-appearance: textfield; /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; /* 2 */ + box-sizing: content-box; +} + +/** + * Remove inner padding and search cancel button in Safari and Chrome on OS X. + * Safari (but not Chrome) clips the cancel button when the search input has + * padding (and `textfield` appearance). + */ + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * Define consistent border, margin, and padding. + */ + +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/** + * 1. Correct `color` not being inherited in IE 8/9/10/11. + * 2. Remove padding so people aren't caught out if they zero out fieldsets. + */ + +legend { + border: 0; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Remove default vertical scrollbar in IE 8/9/10/11. + */ + +textarea { + overflow: auto; +} + +/** + * Don't inherit the `font-weight` (applied by a rule above). + * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. + */ + +optgroup { + font-weight: bold; +} + +/* Tables + ========================================================================== */ + +/** + * Remove most spacing between table cells. + */ + +table { + border-collapse: collapse; + border-spacing: 0; +} + +td, +th { + padding: 0; +}
\ No newline at end of file diff --git a/src/css/_common/_utils.scss b/src/css/_common/_utils.scss new file mode 100644 index 0000000..1c7b777 --- /dev/null +++ b/src/css/_common/_utils.scss @@ -0,0 +1,23 @@ +@mixin clearfix() { + &:before, + &:after { + content: " "; + display: table; + } + + &:after { + clear: both; + } +} + +@mixin min-screen($min-width: $global-body-width) { + @media screen and (min-width: $min-width) { + @content; + } +} + +@mixin max-screen($max-width: $global-body-width) { + @media screen and (max-width: $max-width) { + @content; + } +} diff --git a/src/css/_custom/_custom.scss b/src/css/_custom/_custom.scss new file mode 100644 index 0000000..f7cbb5a --- /dev/null +++ b/src/css/_custom/_custom.scss @@ -0,0 +1,4 @@ +// ============================== +// Custom style +// ============================== +// You can override the variables in _variables.scss to customize the style diff --git a/src/css/_partial/_404.scss b/src/css/_partial/_404.scss new file mode 100644 index 0000000..63eb465 --- /dev/null +++ b/src/css/_partial/_404.scss @@ -0,0 +1,25 @@ +// ============================== +// Archive +// ============================= + +.not-found { + text-align: center; + + .error-emoji { + color: #363636; + font-size: 3rem; + } + + .error-text { + color: #797979; + font-size: 1.25rem; + } + + .error-link { + margin-top: 2rem; + + a { + color: $theme-color; + } + } +}
\ No newline at end of file diff --git a/src/css/_partial/_archive.scss b/src/css/_partial/_archive.scss new file mode 100644 index 0000000..9019225 --- /dev/null +++ b/src/css/_partial/_archive.scss @@ -0,0 +1,101 @@ +// ============================== +// Archive +// ============================= + +.archive { + margin: $archive-margin; + max-width: $archive-max-width; + + .archive-title { + font-family: $global-serif-font-family; + + &.tag, + &.category { + margin: 15px 0; + } + + .archive-name { + margin: 0; + display: inline-block; + font-weight: 400; + font-size: $archive-name-font-size; + line-height: $archive-name-font-size + 2px; + } + + .archive-post-counter { + display: none; + color: $dark-gray; + } + } + + .collection-title { + font-family: $global-serif-font-family; + + .archive-year { + margin: 15px 0; + font-weight: 400; + font-size: $collection-title-font-size; + line-height: $collection-title-font-size + 2px; + } + } + + .archive-post { + padding: $archive-post-padding; + border-left: $archive-post-border-left; + + .archive-post-time { + margin-right: 10px; + color: $dark-gray; + } + + .archive-post-title { + + .archive-post-link { + color: $theme-color; + } + } + + &::first-child { + margin-top: 10px; + } + + &:hover { + border-left: $archive-post-hover-border-left; + transition: $archive-post-hover-transition; + transform: $archive-post-hover-transform; + + .archive-post-time { + color: darken($dark-gray, 10%); + } + + .archive-post-title .archive-post-link { + color: darken($theme-color, 10%); + } + } + } +} + +@include max-screen() { + .archive { + margin-left: auto; + margin-right: auto; + + .archive-title .archive-name { + font-size: $archive-name-font-size - 4px; + } + + .collection-title .archive-year { + margin: 10px 0; + font-size: $collection-title-font-size - 4px; + } + + .archive-post { + padding: $archive-post-mobile-padding; + + .archive-post-time { + font-size: $archive-post-mobile-time-font-size; + display: block; + } + } + } +} diff --git a/src/css/_partial/_back-to-top.scss b/src/css/_partial/_back-to-top.scss new file mode 100644 index 0000000..ee67aa2 --- /dev/null +++ b/src/css/_partial/_back-to-top.scss @@ -0,0 +1,24 @@ +// ============================== +// Back to top +// ============================= + +.back-to-top { + display: none; + position: fixed; + right: 20px; + bottom: 20px; + transition-property: transform; + transition-timing-function: ease-out; + transition-duration: 0.3s; + z-index: 10; + + &:hover { + transform: translateY(-5px); + } +} + +@include max-screen() { + .back-to-top { + display: none !important; + } +}
\ No newline at end of file diff --git a/src/css/_partial/_categories.scss b/src/css/_partial/_categories.scss new file mode 100644 index 0000000..f9c413d --- /dev/null +++ b/src/css/_partial/_categories.scss @@ -0,0 +1,43 @@ + +.categories { + margin: 2em 0 3em; + text-align: center; + font-family: $global-serif-font-family; + + .categories-title { + display: inline-block; + font-size: $categories-title-size; + color: $theme-color; + border-bottom: $categories-title-border-bottom; + } + + .categories-tags { + margin: 10px 0; + + .category-link { + display: inline-block; + position: relative; + margin: $categories-tags-link-margin; + word-wrap: break-word; + transition-duration: 0.2s; + transition-property: transform; + transition-timing-function: ease-out; + + .category-count { + display: inline-block; + position: relative; + top: -8px; + right: -2px; + color: $theme-color; + font-size: $category-count-font-size; + } + + &:active, + &:focus, + &:hover { + color: $theme-color; + transform: scale(1.1); + } + } + } +}
\ No newline at end of file diff --git a/src/css/_partial/_footer.scss b/src/css/_partial/_footer.scss new file mode 100644 index 0000000..1f8cdae --- /dev/null +++ b/src/css/_partial/_footer.scss @@ -0,0 +1,10 @@ +// ============================== +// Post footer +// ============================= + +.footer { + margin-top: $footer-margin-top; + + @import "_footer/social"; + @import "_footer/copyright"; +}
\ No newline at end of file diff --git a/src/css/_partial/_footer/_copyright.scss b/src/css/_partial/_footer/_copyright.scss new file mode 100644 index 0000000..7d33fe3 --- /dev/null +++ b/src/css/_partial/_footer/_copyright.scss @@ -0,0 +1,23 @@ +// ============================== +// Copyright +// ============================= + +.copyright { + margin: $copyright-margin; + color: $dark-gray; + text-align: center; + font-family: $global-serif-font-family; + + .hexo-link, + .theme-link { + color: $theme-color; + } + + .copyright-year { + display: block; + + .heart { + font-size: 14px; + } + } +}
\ No newline at end of file diff --git a/src/css/_partial/_footer/_social.scss b/src/css/_partial/_footer/_social.scss new file mode 100644 index 0000000..a23eb69 --- /dev/null +++ b/src/css/_partial/_footer/_social.scss @@ -0,0 +1,19 @@ +// ============================== +// Social +// ============================= + +.social-links { + text-align: center; + + .iconfont { + font-size: $social-icon-font-size; + + & + .iconfont { + margin-left: $social-link-margin-left; + } + + &:hover { + color: $theme-color; + } + } +}
\ No newline at end of file diff --git a/src/css/_partial/_header.scss b/src/css/_partial/_header.scss new file mode 100644 index 0000000..d81f17c --- /dev/null +++ b/src/css/_partial/_header.scss @@ -0,0 +1,19 @@ +// ============================== +// Header +// ============================== + +.header { + @include clearfix; + padding: $header-padding; + + @import '_header/logo'; + @import '_header/menu'; +} + + +@include max-screen() { + .header { + padding: 50px 0 0; + text-align: center; + } +} diff --git a/src/css/_partial/_header/_logo.scss b/src/css/_partial/_header/_logo.scss new file mode 100644 index 0000000..cd6435f --- /dev/null +++ b/src/css/_partial/_header/_logo.scss @@ -0,0 +1,18 @@ +// ============================== +// Logo +// ============================= + +.logo-wrapper { + float: left; + + .logo { + font-size: $logo-font-size; + font-family: $logo-font-family; + } +} + +@include max-screen() { + .logo-wrapper { + display: none; + } +} diff --git a/src/css/_partial/_header/_menu.scss b/src/css/_partial/_header/_menu.scss new file mode 100644 index 0000000..7209c80 --- /dev/null +++ b/src/css/_partial/_header/_menu.scss @@ -0,0 +1,35 @@ +// ============================== +// Menu +// ============================= + +.site-navbar { + float: right; + + .menu { + display: inline-block; + position: relative; + padding-left: 0; + padding-right: 25px; + font-family: $global-serif-font-family; + + .menu-item { + display: inline-block; + + & + .menu-item { + margin-left: $menu-item-margin-left;; + } + + @include underline-from-center; + } + + .menu-item-link { + font-size: $menu-link-font-size; + } + } +} + +@include max-screen() { + .site-navbar { + display: none; + } +} diff --git a/src/css/_partial/_iconfont.scss b/src/css/_partial/_iconfont.scss new file mode 100644 index 0000000..3f3c794 --- /dev/null +++ b/src/css/_partial/_iconfont.scss @@ -0,0 +1,96 @@ +// ============================== +// Iconfont +// ============================== + +@font-face { + font-family: 'iconfont'; /* project id 96542 */ + src: url('//at.alicdn.com/t/font_96542_d5q5xyswt0kq33di.eot'); + src: url('//at.alicdn.com/t/font_96542_d5q5xyswt0kq33di.eot?#iefix') format('embedded-opentype'), + url('//at.alicdn.com/t/font_96542_d5q5xyswt0kq33di.woff') format('woff'), + url('//at.alicdn.com/t/font_96542_d5q5xyswt0kq33di.ttf') format('truetype'), + url('//at.alicdn.com/t/font_96542_d5q5xyswt0kq33di.svg#iconfont') format('svg'); +} + +.iconfont { + font-family: "iconfont" !important; + font-style: normal; + -webkit-font-smoothing: antialiased; + -webkit-text-stroke-width: 0.2px; + -moz-osx-font-smoothing: grayscale; + cursor: pointer; +} + +.icon-douban:before { + content: "\e610"; +} +.icon-tumblr:before { + content: "\e69f"; + font-size: .85em; + position: relative; + top: -4px; +} +.icon-linkedin:before { + content: "\e60d"; + position: relative; + top: -4px; +} +.icon-twitter:before { + content: "\e600"; +} +.icon-weibo:before { + content: "\e602"; +} +.icon-stack-overflow:before { + content: "\e603"; + font-size: .85em; + position: relative; + top: -4px; +} +.icon-email:before { + content: "\e605"; + position: relative; + top: -2px; +} +.icon-facebook:before { + content: "\e601"; + font-size: .95em; + position: relative; + top: -2px; +} +.icon-github:before { + content: "\e606"; + position: relative; + top: -3px; +} +.icon-rss:before { + content: "\e604"; +} +.icon-google:before { + content: "\e609"; +} +.icon-zhihu:before { + content: "\e607"; + font-size: .9em; + position: relative; + top: -2px; +} +.icon-pocket:before { + content: "\e856"; +} + +/* Generic Icon */ +.icon-heart:before { + content: "\e608"; +} +.icon-right:before { + content: "\e60a"; +} +.icon-left:before { + content: "\e60b"; +} +.icon-up:before { + content: "\e60c"; +} +.icon-close:before { + content: "\e60f"; +} diff --git a/src/css/_partial/_mobile.scss b/src/css/_partial/_mobile.scss new file mode 100644 index 0000000..26e4c76 --- /dev/null +++ b/src/css/_partial/_mobile.scss @@ -0,0 +1,77 @@ +// ============================== +// Mobile Navbar +// ============================== + +.mobile-navbar { + display: none; + position: fixed; + top: 0; + left: 0; + width: 100%; + height: $mobile-navbar-height; + background: $white; + box-shadow: 0px 2px 2px $gray; + text-align: center; + transition: transform 300ms ease; + z-index: 99; + + &.fixed-open { + transform: translate3d(180px, 0px, 0px); + } + + .mobile-header-logo { + display: inline-block; + margin-right: 50px; + + .logo { + font-size: 22px; + line-height: $mobile-navbar-height; + font-family: $logo-font-family; + } + } + + .mobile-navbar-icon { + color: $theme-color; + height: $mobile-navbar-height; + width: $mobile-navbar-height; + font-size: 24px; + text-align: center; + float: left; + position: relative; + transition: background 0.5s; + + @include mobile-menu-icon(); + } +} + +.mobile-menu { + background-color: rgba($deputy-color, 0.5); + + .mobile-menu-list { + position: relative; + list-style: none; + margin-top: 50px; + padding: 0; + border-top: 1px solid $deputy-color; + + .mobile-menu-item { + padding: 10px 30px; + border-bottom: 1px solid $deputy-color; + } + + a { + font-size: 18px; + font-family: $global-serif-font-family; + + &:hover { + color: $theme-color; + } + } + } +} + +@include max-screen() { + .mobile-navbar { + display: block; + } +} diff --git a/src/css/_partial/_pagination.scss b/src/css/_partial/_pagination.scss new file mode 100644 index 0000000..c58f8db --- /dev/null +++ b/src/css/_partial/_pagination.scss @@ -0,0 +1,36 @@ +// ============================== +// Pagination +// ============================== + +.pagination { + margin: $pagination-margin; + @include clearfix; + + .prev, + .next { + font-weight: 600; + font-size: $pagination-font-size; + font-family: $global-serif-font-family; + transition-property: transform; + transition-timing-function: ease-out; + transition-duration: 0.3s; + } + + .prev { + float: left; + + &:hover { + color: $theme-color; + transform: translateX(-4px); + } + } + + .next { + float: right; + + &:hover { + color: $theme-color; + transform: translateX(4px); + } + } +}
\ No newline at end of file diff --git a/src/css/_partial/_post.scss b/src/css/_partial/_post.scss new file mode 100644 index 0000000..4109d95 --- /dev/null +++ b/src/css/_partial/_post.scss @@ -0,0 +1,23 @@ +// ============================== +// Post +// ============================== + +.posts { + margin-bottom: $post-list-margin-bottom; + border-bottom: $post-border; +} + +.post { + padding: $post-padding; + + & + .post { + border-top: $post-border; + } + + @import '_post/header'; + @import '_post/toc'; + @import '_post/content'; + @import '_post/copyright'; + @import '_post/reward'; + @import '_post/footer'; +}
\ No newline at end of file diff --git a/src/css/_partial/_post/_code.scss b/src/css/_partial/_post/_code.scss new file mode 100644 index 0000000..ff4439f --- /dev/null +++ b/src/css/_partial/_post/_code.scss @@ -0,0 +1,177 @@ +code, pre { + padding: 7px; + font-size: $code-font-size; + font-family: $code-font-family; + background: $code-background; +} + +code { + padding: 3px 5px; + border-radius: 4px; + color: $code-color; +} + +.highlight { + margin: 1em 0; + border-radius: 5px; + overflow-x: auto; + box-shadow: 1px 1px 2px rgba(0,0,0,0.125); + position: relative; + + table { + position: relative; + + &::after { + position: absolute; + top: 0; + right: 0; + left: 0; + padding: 2px 7px; + font-size: $code-font-size; + font-weight: bold; + color: darken($gray, 10%); + background: darken($code-background, 3%); + content: 'Code'; + } + } + + @each $sign, $text in $code-type-list { + &.#{$sign} > table::after { + content: $text; + } + + &.#{$sign} > figcaption > span::after { + content: ' · ' + $text; + } + + &.#{$sign} figcaption + table { + &::after { + display: none; + } + } + } + + figcaption { + position: absolute; + top: 0; + width: 100%; + padding: 2px 7px; + font-size: $code-font-size; + font-weight: bold; + color: darken($gray, 10%); + background: darken($code-background, 3%); + z-index: 20; + overflow-x: hidden; + box-sizing: border-box; + + & > a { + position: absolute; + right: 0; + display: inline-box; + margin-right: 7px; + font-weight: 400; + + &:hover { + text-decoration: none; + border: 0; + } + } + } + + .code { + pre { + margin: 0; + padding: 30px 10px 10px; + } + } + + .gutter { + width: 10px; + color: $gray; + + pre { + margin: 0; + padding: 30px 7px 10px; + } + } + + .line { + // Fix code block null line height and + // Synchronous gutter and code line highly. + height: round($code-font-size * 1.5); + } + + table, tr, td { + margin: 0; + padding: 0; + width: 100%; + border-collapse: collapse; + } + + .code { + .hljs-comment, + .hljs-quote { + color: map-get($code-highlight-color, comment); + } + + .hljs-keyword, + .hljs-selector-tag, + .hljs-addition { + color: map-get($code-highlight-color, keyword); + } + + .hljs-number, + .hljs-string, + .hljs-meta .hljs-meta-string, + .hljs-literal, + .hljs-doctag, + .hljs-regexp { + color: map-get($code-highlight-color, number); + } + + .hljs-title, + .hljs-section, + .hljs-name, + .hljs-selector-id, + .hljs-selector-class { + color: map-get($code-highlight-color, title); + } + + .hljs-attribute, + .hljs-attr, + .hljs-variable, + .hljs-template-variable, + .hljs-class .hljs-title, + .hljs-type { + color: map-get($code-highlight-color, attribute); + } + + .hljs-symbol, + .hljs-bullet, + .hljs-subst, + .hljs-meta, + .hljs-meta .hljs-keyword, + .hljs-selector-attr, + .hljs-selector-pseudo, + .hljs-link { + color: map-get($code-highlight-color, symbol); + } + + .hljs-built_in, + .hljs-deletion { + color: map-get($code-highlight-color, built_in); + } + + .hljs-formula { + background: map-get($code-highlight-color, formula); + } + + .hljs-emphasis { + font-style: italic; + } + + .hljs-strong { + font-weight: bold; + } + } +} diff --git a/src/css/_partial/_post/_content.scss b/src/css/_partial/_post/_content.scss new file mode 100644 index 0000000..d680762 --- /dev/null +++ b/src/css/_partial/_post/_content.scss @@ -0,0 +1,101 @@ +// ============================== +// Post content +// ============================== + +.post-content { + word-wrap: break-word; + + @for $i from 1 through 6 { + h#{$i} { + font-weight: 400; + font-family: $global-serif-font-family; + } + } + + a { + color: $theme-color; + word-break: break-all; + + &:hover { + border-bottom: $content-link-border; + } + + &.fancybox { + border: 0; + } + } + + blockquote { + margin: 2em 0; + padding: 10px 20px; + position: relative; + color: rgba(#34495e, 0.8); + background-color: $content-blockquote-backgroud; + border-left: $content-blockquote-border-left; + box-shadow: 1px 1px 2px rgba(0,0,0,0.125); + + p { + margin: 0; + } + } + + img { + display: inline-block; + max-width: 100%; + } + + > table { + max-width: 100%; + margin: 10px 0; + border-spacing: 0; + box-shadow: 2px 2px 3px rgba(0,0,0,.125); + + th, td { + padding: 5px 15px; + border: 1px double $content-table-border-color; + } + } + + @import 'code'; + + .read-more { + .read-more-link { + color: $theme-color; + font-size: 1.1em; + font-family: $global-serif-font-family; + + &:hover { + border-bottom: $post-readMore-border-bottom; + } + } + } + + kbd { + display: inline-block; + padding: 0.25em; + background-color: #fafafa; + border: 1px solid #dbdbdb; + border-bottom-color: #b5b5b5; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #b5b5b5; + font-size: 0.8em; + line-height: 1.25; + font-family: "SFMono-Regular","Liberation Mono","Roboto Mono",Menlo,Monaco,Consolas,"Courier New",Courier,monospace; + color: #4a4a4a; + } + + dl dt::after { + content: ':'; + } + + figure figcaption h4 { + color: #b5b5b5; + font-size: 0.9rem; + text-align: center; + } + + .task-list { + list-style: none; + padding-left: 1.5rem; + } +} diff --git a/src/css/_partial/_post/_copyright.scss b/src/css/_partial/_post/_copyright.scss new file mode 100644 index 0000000..29ac0c7 --- /dev/null +++ b/src/css/_partial/_post/_copyright.scss @@ -0,0 +1,17 @@ +.post-copyright { + margin-top: 20px; + padding-top: 10px; + border-top: 1px dashed $light-gray; + + .copyright-item { + margin: 5px 0; + + &.lincese { + font-weight: bold; + } + + a { + text-decoration: underline; + } + } +} diff --git a/src/css/_partial/_post/_footer.scss b/src/css/_partial/_post/_footer.scss new file mode 100644 index 0000000..012110f --- /dev/null +++ b/src/css/_partial/_post/_footer.scss @@ -0,0 +1,74 @@ +// ============================== +// Post footer +// ============================== + +.post-footer { + margin-top: $post-footer-margin-top; + border-top: $post-footer-border-top; + font-family: $global-serif-font-family; + + .post-tags { + padding: $post-tags-padding; + + a { + margin-right: 5px; + color: $theme-color; + word-break: break-all; + + &::before { + content: '#'; + } + } + } + + .post-nav { + margin: 1em 0; + @include clearfix; + + .prev, + .next { + font-weight: 600; + font-size: $post-nav-font-size; + font-family: $global-serif-font-family; + transition-property: transform; + transition-timing-function: ease-out; + transition-duration: 0.3s; + } + + .prev { + float: left; + + &:hover { + color: $theme-color; + transform: translateX(-4px); + } + } + + .next { + float: right; + + &:hover { + color: $theme-color; + transform: translateX(4px); + } + } + + .nav-mobile { + display: none; + } + } +} + +@include max-screen() { + .post-footer { + .post-nav { + .nav-default { + display: none; + } + + .nav-mobile { + display: inline; + } + } + } +}
\ No newline at end of file diff --git a/src/css/_partial/_post/_header.scss b/src/css/_partial/_post/_header.scss new file mode 100644 index 0000000..c9ac667 --- /dev/null +++ b/src/css/_partial/_post/_header.scss @@ -0,0 +1,39 @@ +.post-header { + margin-bottom: 20px; + + .post-title { + margin: 0; + font-size: $post-title-font-size; + font-weight: $post-title-font-weight; + font-family: $global-serif-font-family; + } + + .post-link { + @include underline-from-center; + } + + .post-meta { + .post-time { + font-size: 15px; + color: $post-time-font-color; + } + + .post-category { + display: inline; + font-size: 14px; + color: $post-category-font-color; + + &::before { + content: '·'; + } + + a { + color: inherit; + + &:hover { + color: $theme-color; + } + } + } + } +} diff --git a/src/css/_partial/_post/_reward.scss b/src/css/_partial/_post/_reward.scss new file mode 100644 index 0000000..55728e7 --- /dev/null +++ b/src/css/_partial/_post/_reward.scss @@ -0,0 +1,48 @@ +.post-reward { + margin-top: 20px; + padding-top: 10px; + text-align: center; + border-top: 1px dashed $light-gray; + + .reward-button { + margin: 15px 0; + padding: 3px 7px; + display: inline-block; + color: $theme-color; + border: 1px solid $theme-color; + border-radius: 5px; + cursor: pointer; + + &:hover { + color: $white; + background-color: $theme-color; + transition: 0.5s; + } + } + + #reward:checked { + & ~ .qr-code { + display: block; + } + + & ~ .reward-button { + display: none; + } + } + + .qr-code { + display: none; + margin-top: 15px; + + .qr-code-image { + display: inline-block; + min-width: 200px; + width: 40%; + } + + .image { + width: 200px; + height: 200px; + } + } +}
\ No newline at end of file diff --git a/src/css/_partial/_post/_toc.scss b/src/css/_partial/_post/_toc.scss new file mode 100644 index 0000000..b5958c0 --- /dev/null +++ b/src/css/_partial/_post/_toc.scss @@ -0,0 +1,46 @@ +.post-toc { + position: absolute; + width: $post-toc-width; + margin-left: $post-toc-margin-left; + padding: 10px; + font-family: $global-serif-font-family; + border-radius: 5px; + background: $post-toc-backgroud; + box-shadow: 1px 1px 2px rgba(0,0,0,0.125); + word-wrap: break-word; + box-sizing: border-box; + + .post-toc-title { + margin: 0 10px; + font-size: $post-toc-title-size; + font-weight: 400; + text-transform: uppercase; + } + + .post-toc-content { + font-size: $post-toc-content; + + >nav>ul { + margin: 10px 0; + } + + ul { + padding-left: 20px; + list-style: $post-toc-list-style; + + ul { + padding-left: 15px; + } + } + + .toc-link.active { + color: $theme-color; + } + } +} + +@include max-screen($toc-max-sreen-width) { + .post-toc { + display: none; + } +} diff --git a/src/css/_partial/_slideout.scss b/src/css/_partial/_slideout.scss new file mode 100644 index 0000000..2dc757d --- /dev/null +++ b/src/css/_partial/_slideout.scss @@ -0,0 +1,33 @@ +// ============================== +// slideout (https://github.com/mango/slideout) +// ============================== + +.slideout-menu { + position: fixed; + top: 0; + left: 0px; + bottom: 0; + width: 180px; + min-height: 100vh; + overflow-y: hidden; + -webkit-overflow-scrolling: touch; + z-index: 0; + display: none; +} + +.slideout-panel { + position: relative; + z-index: 1; + background-color: $white; + min-height: 100vh; +} + +.slideout-open, +.slideout-open body, +.slideout-open .slideout-panel { + overflow: hidden; +} + +.slideout-open .slideout-menu { + display: block; +} diff --git a/src/css/_partial/_tags.scss b/src/css/_partial/_tags.scss new file mode 100644 index 0000000..e32a90e --- /dev/null +++ b/src/css/_partial/_tags.scss @@ -0,0 +1,46 @@ +// ============================== +// Tags +// ============================= + +.tag-cloud { + margin: 2em 0 3em; + text-align: center; + font-family: $global-serif-font-family; + + .tag-cloud-title { + display: inline-block; + font-size: $tag-cloud-title-size; + color: $theme-color; + border-bottom: $tag-cloud-title-border-bottom; + } + + .tag-cloud-tags { + margin: 10px 0; + + a { + display: inline-block; + position: relative; + margin: $tag-cloud-tags-link-margin; + word-wrap: break-word; + transition-duration: 0.2s; + transition-property: transform; + transition-timing-function: ease-out; + + .tag-count { + display: inline-block; + position: relative; + top: -8px; + right: -2px; + color: $theme-color; + font-size: $category-count-font-size; + } + + &:active, + &:focus, + &:hover { + color: $theme-color; + transform: scale(1.1); + } + } + } +}
\ No newline at end of file diff --git a/src/css/_variables.scss b/src/css/_variables.scss new file mode 100644 index 0000000..07b78e5 --- /dev/null +++ b/src/css/_variables.scss @@ -0,0 +1,343 @@ +// ============================== +// Variables +// ============================== + +// ========== Theme Color ========== // +// Config here to change theme color +// Default | Mint Green | Cobalt Blue | Hot Pink | Dark Violet +$theme-color-config: 'Default'; + +// Default theme color map +$theme-color-map: ( + 'Default': #c05b4d #f8f5ec, + 'Mint Green': #16982B #f5f5f5, + 'Cobalt Blue': #0047AB #f0f2f5, + 'Hot Pink': #FF69B4 #f8f5f5, + 'Dark Violet': #9932CC #f5f4fa +); + +// Check theme color config. +// if it does not exist, use default theme color. +@if not(map-has-key($theme-color-map, $theme-color-config)) { + $theme-color-config: 'Default'; +} +$theme-color-list: map-get($theme-color-map, $theme-color-config); + +// Default theme color of the site. +$theme-color: nth($theme-color-list, 1) !default; + +// Deputy theme color of the site. +$deputy-color: nth($theme-color-list, 2) !default; + + +// ========== Color ========== // +$black: #0a0a0a !default; +$white: #fefefe !default; +$light-gray: #e6e6e6 !default; +$gray: #cacaca !default; +$dark-gray: #8a8a8a !default; + + +// ========== Global ========== // +// Text color of the body. +$global-font-color: #34495e !default; + +// Font size attribute applied to '<html>' and '<body>'. +$global-font-size: 16px !default; + +// Global width of '<body>'. +$global-body-width: 800px !default; + +// Padding of container main +$global-container-padding: 0 20px !default; + +// Default line height for all type. `$global-lineheight` is 24px while `$global-font-size` is 16px. +$global-lineheight: 1.5 !default; + +// Font family of the site. +$global-font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, sans-serif !default; + +// Serif font family of the site. +$global-serif-font-family: Athelas, STHeiti, Microsoft Yahei, serif !default; + +// Background color of the site. +$global-background: $white !default; + +// Headings font size of the site. +$global-headings: ( + h1: 26px, + h2: 24px, + h3: 20px, + h4: 16px, + h5: 14px, + h6: 14px +) !default; + + +// ========== Header ========== // +// Padding of the site header. +$header-padding: 20px 20px !default; + +// Font family: Chancery +@font-face { + font-family: 'Chancery'; + src: url('../fonts/chancery/apple-chancery-webfont.eot'); + src: local('Apple Chancery'), url('../fonts/chancery/apple-chancery-webfont.eot?#iefix') format('embedded-opentype'), + url('../fonts/chancery/apple-chancery-webfont.woff2') format('woff2'), + url('../fonts/chancery/apple-chancery-webfont.woff') format('woff'), + url('../fonts/chancery/apple-chancery-webfont.ttf') format('truetype'), + url('../fonts/chancery/apple-chancery-webfont.svg#apple-chancery') format('svg'); + font-weight: lighter; + font-style: normal; +} + +// Font size of the logo. +$logo-font-size: 48px !default; + +// Font family of the logo. +$logo-font-family: 'Chancery', cursive, LiSu, sans-serif !default; + +// Margin of menu item. +$menu-item-margin-left: 10px !default; + +// Margin of menu item in mobile. +$menu-item-mobile-margin: 5px !default; + +// Font size of menu item link. +$menu-link-font-size: 18px !default; + +// Height of the mobile header. +$mobile-navbar-height: 50px !default; + +// ========== Post ========== // +// Margin bottom of post list. +$post-list-margin-bottom: 20px !default; + +// Padding of the post. +$post-padding: 1.5em 0 !default; + +// Border top of the post + post. +$post-border: 1px solid $light-gray !default; + +// Font size of post title. +$post-title-font-size: 27px !default; + +// Font weight of post title. +$post-title-font-weight: 400 !default; + +// Margin top of the post meta (post time). +$post-meta-margin-top: 5px !default; + +// Font color of the post time. +$post-time-font-color: $dark-gray !default; + +// Font color of the post category +$post-category-font-color: $dark-gray !default; + +// Border bottom of the read more link when hover it. +$post-readMore-border-bottom: 1px solid $theme-color !default; + +// Margin top of the post footer. +$post-footer-margin-top: 20px !default; + +// Border top of post footer. +$post-footer-border-top: 1px solid $light-gray !default; + +// Padding of the post tags. +$post-tags-padding: 15px 0 !default; + +// Font size of post pagination. +$post-nav-font-size: 18px !default; + + +// ========== TOC ========== // +// Width of the post toc. +$post-toc-width: 200px !default; + +// Backgroud color of the post toc. +$post-toc-backgroud: rgba($deputy-color, 0.6) !default; + +// Margin left of the post toc. +$post-toc-margin-left: $global-body-width - 15px !default; + +// Font size of the post toc title. +$post-toc-title-size: 20px !default; + +// Font size of the post toc content. +$post-toc-content: 15px !default; + +// List style of the post toc list. +$post-toc-list-style: square !default; + +// Max screen media of the post toc. +$toc-max-sreen-width: 2 * $post-toc-width + $post-toc-margin-left !default; + +// ========== Content ========== // +// Headings anchor. +$content-headings-anchor: "" !default; + +// Border bottom of the link when hover it. +$content-link-border: 1px solid $theme-color !default; + +// Background color of the blockquote. +$content-blockquote-backgroud: rgba($theme-color, 0.05) !default; + +// Border left of the blockquote. +$content-blockquote-border-left: 3px solid rgba($theme-color, 0.3) !default; + +// Border color of the table. +$content-table-border-color: darken($deputy-color, 3%) !default; + +// ========== Code ========== // +// Color of the code. +$code-color: #c7254e !default; + +// Font size of code. +$code-font-size: 13px !default; + +// Font family of the code. +$code-font-family: Consolas, Monaco, Menlo, Consolas, monospace !default; + +// Color of code highlight, solarized. +$code-highlight-color: ( + comment: #93a1a1, + keyword: #859900, + number: #2aa198, + title: #268bd2, + attribute: #b58900, + symbol: #cb4b16, + built_in: #dc322f, + formula: #eee8d5 +) !default; + +// Code type list. +$code-type-list: ( + // Custom code type + language-html: "HTML", + language-coffeescript: "Coffeescript", + language-makefile: "Makefile", + language-markdown: "Markdown", + language-js: "JavaScript", + language-javascript: "JavaScript", + language-bash: "Bash", + language-css: "CSS", + language-java: "Java", + language-xml: "XML", + language-python: "Python", + language-json: "JSON", + language-ruby: "Ruby", + language-php: "PHP", + language-c: "C", + language-cpp: "C++", + language-cs: "C#", + language-objectivec: "Objective-C", + language-sql: "SQL", + language-http: "HTTP", + language-shell: "Shell", + + language-clojure: "Clojure", + language-elm: "elm", + language-erlang: "Erlang", + language-go: "Go", + language-groovy: "Groovy", + language-handlebars: "Handlebars", + language-haskell: "Haskell", + language-less: "Less", + language-lisp: "Lisp", + language-lua: "Lua", + language-matlab: "Matlab", + language-prolog: "Prolog", + language-rust: "Rust", + language-scss: "Scss", + language-scala: "Scala", + language-scheme: "Scheme", + language-stylus: "Stylus", + language-swift: "Swift", + language-typescript: "Typescript", + language-yml: "YAML", + language-yaml: "YAML", + language-toml: "TOML" +) !default; + +// Color of the code background. +$code-background: $deputy-color !default; + + +// ========== Pagination ========== // +// Margin of the pagination. +$pagination-margin: 2em 0 !default; + +// Font size of the pagination (Without post, post pagination see line 140). +$pagination-font-size: 20px !default; + + +// ========== Footer ========== // +// Margin top of the footer. +$footer-margin-top: 2em !default; + +// Margin left of the social link. +$social-link-margin-left: 10px !default; + +// Font size of the social icon. +$social-icon-font-size: 30px !default; + +// Margin of the copyright. +$copyright-margin: 10px 0 !default; + + +// ========== Archive ========== // +// Margin of the archive. +$archive-margin: 2em 0px !default; + +// Max width of the archive. +$archive-max-width: 550px !default; + +// Font size of the archive name. +$archive-name-font-size: 30px !default; + +// Font size of the collection title. +$collection-title-font-size: 28px !default; + +// Padding of the archive post. +$archive-post-padding: 3px 20px !default; + +// Padding of the archive post in mobile. +$archive-post-mobile-padding: 5px 10px !default; + +// Font size of the archive post time in mobile. +$archive-post-mobile-time-font-size: 13px !default; + +// Border left of the archive post, use $archive-post-hover-border-left when hover it. +$archive-post-border-left: 1px solid $gray !default; +$archive-post-hover-border-left: 3px solid $theme-color !default; + +// Transition of the archive post when hover it. +$archive-post-hover-transition: 0.2s ease-out !default; + +// Transform of the archive post when hover it. +$archive-post-hover-transform: translateX(4px) !default; + + +// ========== Tags ========== // +// Font soze of the tag cloud title. +$tag-cloud-title-size: 18px !default; + +// Border bottom of the tag cloud title. +$tag-cloud-title-border-bottom: 2px solid $theme-color !default; + +// Margin of the tag cloud tags link. +$tag-cloud-tags-link-margin: 5px 10px !default; + + +// ========== Categories ========== // +// Font soze of the categories title. +$categories-title-size: 18px !default; + +// Border bottom of the categories title. +$categories-title-border-bottom: 2px solid $theme-color !default; + +// Margin of the categories tags link. +$categories-tags-link-margin: 5px 10px !default; + +// Font size of the category count +$category-count-font-size: 12px !default; diff --git a/src/css/style.scss b/src/css/style.scss new file mode 100644 index 0000000..ac08217 --- /dev/null +++ b/src/css/style.scss @@ -0,0 +1,19 @@ +@import "_custom/custom"; +@import "_variables"; + +@import "_common/utils"; +@import "_common/animation"; + +@import "_base"; +@import "_partial/header"; +@import "_partial/post"; +@import "_partial/pagination"; +@import "_partial/footer"; +@import "_partial/archive"; +@import "_partial/tags"; +@import "_partial/categories"; +@import "_partial/iconfont"; +@import "_partial/slideout"; +@import "_partial/mobile"; +@import "_partial/back-to-top"; +@import "_partial/404"; diff --git a/src/fonts/chancery/apple-chancery-webfont.eot b/src/fonts/chancery/apple-chancery-webfont.eot Binary files differnew file mode 100644 index 0000000..39c3936 --- /dev/null +++ b/src/fonts/chancery/apple-chancery-webfont.eot diff --git a/src/fonts/chancery/apple-chancery-webfont.svg b/src/fonts/chancery/apple-chancery-webfont.svg new file mode 100644 index 0000000..2b18b6a --- /dev/null +++ b/src/fonts/chancery/apple-chancery-webfont.svg @@ -0,0 +1,228 @@ +<?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="apple_chancerychancery" horiz-adv-x="1138" > +<font-face units-per-em="2048" ascent="1624" descent="-424" /> +<missing-glyph horiz-adv-x="569" /> +<glyph unicode="
" horiz-adv-x="569" /> +<glyph horiz-adv-x="0" /> +<glyph horiz-adv-x="0" /> +<glyph unicode=" " horiz-adv-x="569" /> +<glyph unicode="	" horiz-adv-x="569" /> +<glyph unicode=" " horiz-adv-x="569" /> +<glyph unicode="!" horiz-adv-x="525" d="M136 103l148 141q66 -49 115 -141l-146 -142q-45 95 -117 142zM237 1352l182 70q12 -87 12 -176q0 -181 -25 -420q-13 -127 -15 -141l-17 -197l-126 -95l12 167q16 215 16 377q0 254 -39 415z" /> +<glyph unicode=""" horiz-adv-x="712" d="M220 771v494l142 105v-504zM556 771v494l142 105v-504z" /> +<glyph unicode="#" d="M73 317l77 77h254l64 207h-312l77 78h259l100 329l111 109l-134 -438h207l101 330l111 108l-135 -438h321l-75 -78h-269l-64 -207h325l-76 -77h-272l-97 -317l-111 -110l130 427h-207l-97 -317l-110 -108l130 425h-308zM482 394h207l63 207h-207z" /> +<glyph unicode="$" horiz-adv-x="794" d="M38 67l106 100q95 -78 238 -100l46 416l-45 30q-172 117 -172 231q0 211 275 264l27 238l72 67l-34 -305l48 1q136 0 230 -31l-94 -96q-71 50 -190 71l-38 -342l53 -38q185 -134 185 -245q0 -102 -92 -194t-212 -111l-29 -264l-72 -69l35 317q-60 -7 -87 -7 q-125 0 -250 67zM324 823q0 -76 124 -162l33 294q-157 0 -157 -132zM446 67q187 25 187 185q0 76 -111 163l-34 26z" /> +<glyph unicode="%" horiz-adv-x="1504" d="M176 595q0 166 123.5 302.5t273.5 136.5q177 0 177 -206q0 -159 -125.5 -294.5t-273.5 -135.5q-75 0 -125 56t-50 141zM284 676q0 -211 164 -211q80 0 136.5 85.5t56.5 204.5q0 95 -41 153.5t-108 58.5q-91 0 -149.5 -81.5t-58.5 -209.5zM345 -155l796 1235l130 84 l-797 -1237zM867 171q0 166 123.5 302.5t273.5 136.5q176 0 176 -206q0 -159 -125 -294.5t-272 -135.5q-76 0 -126 56t-50 141zM975 253q0 -212 164 -212q79 0 136 85.5t57 204.5q0 212 -149 212q-91 0 -149.5 -81.5t-58.5 -208.5z" /> +<glyph unicode="&" horiz-adv-x="1812" d="M117 298q0 291 413 483q-64 162 -64 260q0 148 101.5 246t255.5 98q224 0 224 -198q0 -183 -359 -382q11 -24 13 -29l27 -55q34 -70 51 -100q151 159 467 159h137l72 1q177 0 252 43.5t75 146.5q0 60 -59 120l111 112q42 -56 42 -142q0 -190 -161.5 -303t-431.5 -113h-18 q-51 -235 -240 -425q101 -141 187 -141q69 0 144 104q16 -14 16 -33q0 -52 -85.5 -121.5t-149.5 -69.5q-94 0 -222 159q-209 -159 -442 -159q-159 0 -257.5 94t-98.5 245zM294 362q0 -138 91 -227t231 -89q136 0 272 106l-24 33q-162 229 -292 520l-17 38 q-261 -127 -261 -381zM594 1135q0 -102 79 -294q235 138 235 315q0 69 -48 119t-114 50q-152 0 -152 -190zM798 588q18 -33 21 -39l68 -117q75 -129 109 -176q134 194 150 389h-29q-215 0 -319 -57z" /> +<glyph unicode="'" horiz-adv-x="376" d="M220 771v494l142 105v-504z" /> +<glyph unicode="(" horiz-adv-x="696" d="M201 583q0 763 675 1227l25 -37q-545 -426 -545 -1107q0 -540 340 -964l-127 -129q-368 450 -368 1010z" /> +<glyph unicode=")" horiz-adv-x="696" d="M-63 -390q545 426 545 1107q0 539 -340 965l127 128q368 -451 368 -1009q0 -763 -675 -1228z" /> +<glyph unicode="*" horiz-adv-x="914" d="M115 711l343 258q-149 101 -286 257l121 70q79 -102 210 -211l30 271l111 68l-38 -339l250 183l127 28l-382 -286l34 -20q193 -112 323 -165l-141 -84q-136 63 -234 138l-28 -253l-110 -65l39 360l-230 -175z" /> +<glyph unicode="+" d="M97 446l119 123h359l38 346l130 119l-52 -465h463l-119 -123h-358l-39 -353l-129 -119l52 472h-464z" /> +<glyph unicode="," horiz-adv-x="423" d="M58 -334q153 111 153 243q0 110 -121 189l141 140q122 -91 122 -216q0 -178 -270 -384z" /> +<glyph unicode="-" horiz-adv-x="741" d="M126 420l130 130h467l-129 -130h-468z" /> +<glyph unicode="." horiz-adv-x="423" d="M91 100l148 141q65 -49 116 -141l-147 -142q-44 95 -117 142z" /> +<glyph unicode="/" horiz-adv-x="888" d="M-215 -427l1387 2153l195 84l-1388 -2155z" /> +<glyph unicode="0" horiz-adv-x="1056" d="M143 303q0 276 190 503.5t420 227.5q122 0 197 -94.5t75 -248.5q0 -265 -192.5 -491t-418.5 -226q-118 0 -194.5 93t-76.5 236zM296 441q0 -164 71.5 -263.5t188.5 -99.5q131 0 223.5 144t92.5 349q0 161 -72 260.5t-188 99.5q-131 0 -223.5 -143.5t-92.5 -346.5z" /> +<glyph unicode="1" horiz-adv-x="882" d="M116 0l99 78h182l93 831q-98 -69 -162 -105l-106 -62q-3 -2 -24 -14l11 96q198 71 440 241l-110 -987h251l-97 -78h-577z" /> +<glyph unicode="2" horiz-adv-x="1144" d="M88 0l124 122q271 65 439 220t168 340q0 107 -79 177t-200 70q-146 0 -282 -108q-9 21 -9 27q0 53 157 119.5t281 66.5q123 0 216 -78t93 -181q0 -140 -168.5 -330t-411.5 -323l586 -29l-117 -119z" /> +<glyph unicode="3" horiz-adv-x="944" d="M11 -273l118 127q143 -61 264 -61q131 0 217 74.5t86 188.5q0 136 -122.5 217t-329.5 81q-32 0 -70 -8l119 117h33q16 0 49 -1q318 79 318 300q0 84 -57.5 137t-148.5 53q-144 0 -239 -96q-10 19 -10 28q0 47 114 98.5t217 51.5q126 0 206.5 -62t80.5 -159 q0 -198 -368 -357q332 -54 332 -305q0 -178 -176 -319.5t-396 -141.5q-122 0 -237 37z" /> +<glyph unicode="4" horiz-adv-x="1266" d="M58 138l995 938l-98 -885l249 -20l-114 -119l-149 11l-35 -312l-149 -61l3 28l8 74l8 70l24 213zM280 251l534 -47l67 604z" /> +<glyph unicode="5" horiz-adv-x="989" d="M38 -276l127 130q142 -59 251 -59q140 0 227 77.5t87 200.5q0 145 -121.5 233.5t-320.5 88.5q-38 0 -90 -6l74 466l146 153h556l-120 -122h-450l-59 -343q489 -34 489 -362q0 -200 -164 -345.5t-390 -145.5q-142 0 -242 34z" /> +<glyph unicode="6" horiz-adv-x="1161" d="M189 425q0 343 251 618.5t564 275.5q116 0 234 -35l-133 -128q-117 73 -246 73q-195 0 -326 -163q-78 -97 -133.5 -259.5t-55.5 -294.5v-34q73 130 195 210t249 80q120 0 196 -84t76 -216q0 -190 -150 -342t-337 -152q-168 0 -276 127t-108 324zM357 379 q64 -321 311 -321q110 0 185 80.5t75 198.5q0 138 -73 228.5t-186 90.5q-228 0 -312 -277z" /> +<glyph unicode="7" horiz-adv-x="1042" d="M141 -310q84 440 734 1138l49 53l-714 14l129 128l813 -15l-129 -127q-307 -289 -484.5 -578.5t-202.5 -540.5z" /> +<glyph unicode="8" horiz-adv-x="1058" d="M135 279q0 231 339 424l-21 18q-174 142 -174 261q0 131 124.5 234t282.5 103q124 0 203 -69t79 -176q0 -157 -239 -325l-40 -28l23 -18q238 -182 238 -311q0 -153 -152 -285.5t-327 -132.5q-141 0 -238.5 88.5t-97.5 216.5zM276 366q0 -116 96.5 -202t226.5 -86 q93 0 161.5 62.5t68.5 147.5q0 128 -290 362l-37 29q-226 -162 -226 -313zM384 1077q0 -115 228 -292l44 -34q170 91 170 268q0 101 -68 165t-176 64q-87 0 -142.5 -48t-55.5 -123z" /> +<glyph unicode="9" horiz-adv-x="1161" d="M27 -353l132 128q117 -73 246 -73q195 0 326 162q79 98 134.5 260.5t55.5 294.5l-1 34q-72 -130 -194.5 -210t-249.5 -80q-119 0 -195 84t-76 216q0 190 149.5 342t336.5 152q168 0 276 -127t108 -324q0 -343 -251 -618.5t-564 -275.5q-115 0 -233 35zM337 594 q0 -138 73 -228.5t185 -90.5q228 0 313 277q-65 321 -312 321q-109 0 -184 -80.5t-75 -198.5z" /> +<glyph unicode=":" horiz-adv-x="423" d="M91 100l148 141q65 -49 116 -141l-147 -142q-43 94 -117 142zM170 815l149 142q65 -51 115 -142l-146 -141q-45 95 -118 141z" /> +<glyph unicode=";" horiz-adv-x="423" d="M57 -334q153 111 153 243q0 110 -121 189l141 140q122 -91 122 -216q0 -178 -270 -384zM158 815l149 142q66 -51 115 -142l-147 -141q-44 95 -117 141z" /> +<glyph unicode="<" d="M104 443l106 107l955 484l-158 -163l-735 -356q382 -147 753 -449l-95 -92q-332 279 -826 469z" /> +<glyph unicode="=" d="M86 304l134 109h912l-119 -109h-927zM118 602l119 110h911l-118 -110h-912z" /> +<glyph unicode=">" d="M71 -26l158 163l735 357q-383 146 -753 448l95 92q333 -278 826 -468l-106 -108z" /> +<glyph unicode="?" horiz-adv-x="745" d="M144 103l148 141q65 -49 115 -141l-146 -142q-45 95 -117 142zM209 1304q0 39 113.5 78.5t221.5 39.5q293 0 293 -224q0 -156 -224 -301q-68 -44 -86 -60l-25 -23q-110 -100 -110 -224q0 -27 9 -62l-167 -151q-15 40 -15 88q0 174 179 327l57 47l22 20q168 146 168 281 q0 205 -218 205q-88 0 -208 -64q-10 17 -10 23z" /> +<glyph unicode="@" horiz-adv-x="1418" d="M140 427q0 410 251 684t626 274q441 0 441 -442q0 -244 -123.5 -429t-285.5 -185q-145 0 -145 215q0 20 2 34l4 37q-68 -121 -162 -206.5t-158 -85.5q-107 0 -107 176q0 209 145 366t339 157q46 0 103 -10l-25 -229l-9 -83q-8 -73 -8 -132q0 -88 21 -119t81 -31 q94 0 154.5 118t60.5 301q0 471 -423 471q-295 0 -479 -223t-184 -581q0 -460 317 -460q196 0 294 151q18 -22 18 -36q0 -63 -135.5 -131.5t-261.5 -68.5q-351 0 -351 468zM614 568q0 -109 58 -109q87 0 167.5 125.5t99.5 289.5l4 41q-63 9 -106 9q-98 0 -160.5 -99.5 t-62.5 -256.5z" /> +<glyph unicode="A" horiz-adv-x="1469" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123z" /> +<glyph unicode="B" horiz-adv-x="1477" d="M121 770q0 270 230.5 442.5t589.5 172.5q463 0 463 -266q0 -227 -299 -363q292 -114 292 -350q0 -192 -195 -306t-522 -114q-201 0 -482 38l127 135l31 -7q60 -15 114 -22q81 50 109.5 120.5t51.5 274.5l84 753q-208 -15 -332 -112t-124 -244q0 -88 44 -166l-161 -142 q-21 77 -21 156zM545 118q198 -32 391 -32q312 0 312 248q0 107 -85.5 206.5t-208.5 135.5l-26 -1l-48 -2l-44 2l-27 1l-15 -134l-9 -84q-17 -149 -59.5 -209.5t-180.5 -130.5zM818 756q59 -5 102 -5q48 0 115 7q213 123 213 296q0 232 -371 232z" /> +<glyph unicode="C" horiz-adv-x="1275" d="M145 522q0 367 235 615t583 248q177 0 367 -67l-67 -147l-19 -43q-24 -51 -59 -51q-7 0 -21 3q14 31 14 51q0 67 -89.5 117t-208.5 50q-244 0 -396.5 -193t-152.5 -502q0 -239 107 -381t286 -142q129 0 257.5 77.5t189.5 191.5q23 -11 23 -32q0 -66 -121 -174 q-205 -183 -466 -183q-211 0 -336.5 152.5t-125.5 409.5z" /> +<glyph unicode="D" horiz-adv-x="1727" d="M121 768q0 300 233.5 458.5t673.5 158.5q726 0 726 -505q0 -302 -204 -557q-271 -337 -826 -337q-233 0 -525 41l139 147q51 -19 142 -34q74 45 101 114.5t50 273.5l83 745q-453 -53 -453 -327q0 -82 44 -171l-162 -152q-22 49 -22 145zM567 130q219 -30 409 -30 q177 0 273.5 49.5t188.5 187.5q129 192 129 431q0 528 -656 528h-33l-84 -751l-10 -94q-15 -131 -56 -191t-161 -130z" /> +<glyph unicode="E" horiz-adv-x="1497" d="M27 31l183 138q99 -17 238 -30q98 38 132 108t57 282l79 708h-35q-194 0 -304 -79.5t-110 -219.5q0 -81 46 -168l-162 -156q-24 80 -24 152q0 280 233 453q170 126 484 126h330q186 0 380 13l-81 -205l-16 -37q-25 -59 -64 -59q-6 0 -14 1q11 50 11 80q0 66 -69.5 82.5 t-346.5 16.5h-97l-53 -484h195q169 0 300 16q-114 -137 -230 -137q-65 0 -184 10q-49 3 -69 3h-24l-10 -87q-21 -190 -66.5 -270t-178.5 -161l219 -17l89 -8q94 -7 225 -7q221 0 368 143q17 -19 17 -36q0 -28 -107 -115q-156 -127 -341 -127q-171 0 -492 29l-373 34 q-19 1 -135 8z" /> +<glyph unicode="F" horiz-adv-x="1436" d="M121 766q0 280 233 453q170 126 483 126h331q186 0 379 13l-80 -205l-16 -37q-25 -59 -64 -59q-7 0 -15 1q12 51 12 80q0 66 -70 82.5t-347 16.5h-96l-59 -531h214q149 0 307 27q-118 -141 -222 -141l-85 2l-97 2l-77 2h-52l-8 -73l-10 -88q-17 -141 -61.5 -204.5 t-171.5 -123.5l277 -15l-120 -116l-474 22l129 124l108 -12q122 77 150 315l11 98l79 712h-34q-194 0 -304.5 -79.5t-110.5 -217.5q0 -83 46 -170l-162 -156q-23 78 -23 152z" /> +<glyph unicode="G" horiz-adv-x="1356" d="M140 516q0 371 234 620t584 249q177 0 367 -67l-67 -147l-19 -43q-24 -51 -59 -51q-7 0 -21 3q14 31 14 51q0 67 -89.5 117t-208.5 50q-249 0 -399 -195.5t-150 -518.5q0 -237 105 -370t292 -133q172 0 333 136l41 361h-170q-173 0 -277 -34q50 102 94.5 128t167.5 26 l101 1h266l-10 -41l-16 -63q-13 -56 -18 -97l-44 -402q-23 -203 -59 -303.5t-118 -185.5q-164 -172 -392 -172q-210 0 -327 144l149 118q92 -177 283 -177q144 0 207.5 90.5t91.5 332.5l19 173q-226 -157 -445 -157q-207 0 -333.5 153t-126.5 404z" /> +<glyph unicode="H" horiz-adv-x="1734" d="M110 775q0 258 192 414t510 156h79q-45 -229 -54 -308l-31 -277h558l4 36q65 581 230 790q202 256 448 256q92 0 171 -32l-148 -145q-84 57 -167 57q-169 0 -235 -167.5t-131 -758.5l-15 -136q-28 -263 -28 -407q0 -85 73 -85q54 0 134 46q4 -18 4 -25q0 -30 -53 -54 l-58 -27l-294 -134q0 185 48 629l4 36h-558l-10 -91l-13 -111q-17 -142 -61.5 -205t-170.5 -123l236 -15l-120 -116l-433 22l128 124l109 -12q79 51 109 127.5t52 284.5l77 700h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155z" /> +<glyph unicode="I" horiz-adv-x="935" d="M121 775q0 258 192 414t510 156h79q-45 -229 -54 -308l-54 -489l-13 -111q-17 -142 -61.5 -205t-170.5 -123l290 -15l-120 -116l-487 22l128 124l109 -12q122 77 150 315l11 97l77 700h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155z" /> +<glyph unicode="J" horiz-adv-x="931" d="M-176 -229l160 122q50 -256 281 -256q142 0 214 109t100 369l123 1109h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155q0 258 192 414t510 156h79q-45 -229 -54 -308l-88 -795q-40 -354 -192 -513q-172 -180 -411 -180q-226 0 -328 222z" /> +<glyph unicode="K" horiz-adv-x="1641" d="M121 775q0 258 192 414t510 156h79q-45 -229 -54 -308l-33 -299q467 603 768 603q75 0 142 -20l-129 -140q-56 33 -125 33q-129 0 -269 -122t-228 -311q94 -182 219 -352l108 -146q108 -147 168 -147q81 0 148 117q27 -23 27 -38q0 -59 -87.5 -143t-148.5 -84 q-110 0 -310 284q-180 257 -283 465l-21 -189l-13 -111q-17 -142 -61.5 -205t-170.5 -123l236 -15l-120 -116l-433 22l128 124l109 -12q122 77 150 315l11 97l77 700h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155z" /> +<glyph unicode="L" horiz-adv-x="1311" d="M-11 26l168 131q77 -14 130 -17q115 44 162 152.5t47 329.5l4 155q0 299 204 468q170 140 359 140q81 0 166 -37l-148 -145q-91 59 -180 59q-223 0 -223 -365l-4 -138q0 -283 -54 -414.5t-207 -217.5l207 -17l92 -7l111 -7q44 -3 99 -3q248 0 387 144q16 -20 16 -29 q0 -33 -96 -113q-164 -135 -352 -135q-77 0 -189 8l-297 22q-232 17 -402 36z" /> +<glyph unicode="M" horiz-adv-x="2029" d="M121 776q0 248 187.5 411.5t471.5 163.5q47 0 83 -4q24 -2 32 -2h13q-1 -29 -1 -42q0 -154 134 -496l45 -114q9 -24 29 -79l37 -104q30 -82 52 -163l52 86q86 143 154 260l98 169l76 140l92 168q13 23 51 94l193 121q-64 -373 -64 -599l-13 -327l-3 -123 q0 -156 20.5 -204.5t87.5 -48.5q71 0 127 20q9 -12 9 -21q0 -33 -68 -49l-53 -13l-284 -58q-5 94 -5 173q0 510 45 906q-138 -196 -208 -318l-60 -103q-123 -212 -199 -409l-144 -150q-14 189 -149 531l-39 101q-8 18 -36 88q-57 138 -85 264l-81 -495q-36 -223 -75 -303.5 t-138 -132.5l252 -19l-128 -117l-427 22l129 124l113 -10q66 49 94 120t65 287l120 703h-47q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 156z" /> +<glyph unicode="N" horiz-adv-x="1807" d="M121 776q0 246 186.5 410.5t466.5 164.5q39 0 73 -3q38 -3 48 -3h11q-4 -35 -4 -50q0 -206 267 -524l75 -88l66 -79q105 -125 166 -230l67 543q63 497 231 697q192 228 424 228q87 0 172 -32l-148 -147q-91 53 -161 53q-155 0 -235.5 -142.5t-125.5 -496.5l-106 -847 l-126 -260q-46 184 -98 280t-207 282l-77 93q-178 215 -252 385l-50 -450l-12 -108q-16 -134 -51.5 -196.5t-141.5 -141.5l221 -20l-119 -116l-435 22l129 124l111 -10q76 55 105 119t46 212l9 87l77 692h-47q-416 0 -416 -275q0 -86 47 -173l-162 -156q-24 78 -24 156z" /> +<glyph unicode="O" horiz-adv-x="1404" d="M151 511q0 353 238.5 613.5t562.5 260.5q201 0 326 -152.5t125 -398.5q0 -356 -239.5 -615.5t-567.5 -259.5q-196 0 -320.5 154.5t-124.5 397.5zM341 611q0 -248 109 -409.5t277 -161.5q207 0 346.5 199t139.5 494q0 247 -109 409.5t-274 162.5q-209 0 -349 -198.5 t-140 -495.5z" /> +<glyph unicode="P" horiz-adv-x="1370" d="M121 770q0 272 231 443.5t598 171.5q492 0 492 -322q0 -204 -183 -349t-464 -162q-24 -233 -63 -304t-183 -139l264 -15l-120 -116l-461 22l129 124l108 -12q122 77 150 315l11 97l85 758q-455 -86 -455 -343q0 -103 43 -183l-161 -142q-21 77 -21 156zM806 656 q56 -10 98 -10q383 0 383 335q0 313 -410 313z" /> +<glyph unicode="Q" horiz-adv-x="1418" d="M144 511q0 353 238.5 613.5t562.5 260.5q202 0 326 -152t124 -399q0 -492 -420 -766l18 -18q501 -466 848 -466q78 0 129.5 46t51.5 116q0 32 -17 67l175 96q7 -28 7 -46q0 -136 -128.5 -241.5t-294.5 -105.5q-195 0 -464 131.5t-506 342.5q-110 -31 -211 -31 q-191 0 -315 155.5t-124 396.5zM334 611q0 -260 105.5 -409t298.5 -162l137 141q13 -15 17 -19l28 -36q3 -3 14 -16q272 188 272 626q0 244 -109.5 406.5t-273.5 162.5q-209 0 -349 -198.5t-140 -495.5z" /> +<glyph unicode="R" horiz-adv-x="1612" d="M121 770q0 271 231 443t595 172q494 0 494 -314q0 -229 -294 -395q20 -38 29 -57q159 -308 226 -405t124 -100h6q86 0 134 138q33 -19 33 -41q0 -63 -84.5 -157t-141.5 -94q-83 0 -216 182t-264 476q-55 -5 -94 -5q-38 0 -96 5l-8 -66l-13 -115q-17 -143 -61 -205.5 t-171 -122.5l236 -15l-120 -116l-433 22l128 124l109 -12q121 77 150 315l11 97l84 758q-455 -86 -455 -343q0 -103 43 -183l-161 -142q-21 77 -21 156zM813 709q80 -13 146 -13q62 0 135 13q179 128 179 310q0 270 -396 270z" /> +<glyph unicode="S" horiz-adv-x="1076" d="M86 177l170 103q40 -246 295 -246q124 0 203 67.5t79 173.5q0 145 -175 288l-121 98q-146 120 -195 189.5t-49 156.5q0 164 131 271t331 107q159 0 301 -76l-58 -133l-26 -59q-22 -52 -52 -52q-13 0 -27 10q17 52 17 83q0 64 -70.5 107t-174.5 43q-236 0 -236 -195 q0 -70 52.5 -134.5t218.5 -199.5l97 -80q185 -150 185 -315q0 -182 -153.5 -303t-383.5 -121q-280 0 -359 217z" /> +<glyph unicode="T" horiz-adv-x="1560" d="M121 773q0 275 229 445q171 127 471 127h597q371 0 371 229q0 80 -55 148l126 120q44 -60 44 -154q0 -197 -177.5 -330.5t-438.5 -133.5h-278l-75 -676l-12 -111q-17 -142 -61.5 -205t-171.5 -123l291 -15l-120 -116l-488 22l129 124l109 -12q121 77 150 315l10 97 l78 700h-170q-419 0 -419 -277q0 -84 47 -171l-163 -156q-23 78 -23 153z" /> +<glyph unicode="U" horiz-adv-x="1750" d="M121 775q0 258 192 414t510 156h146q-90 -174 -147 -416t-57 -448q0 -414 252 -414q170 0 274 164.5t135 482.5q14 145 19 189l42 377l198 103q-43 -165 -70 -407l-36 -320q-2 -17 -11 -113l-14 -139q-8 -79 -8 -136q0 -100 76 -100q60 0 135 47l3 -12q2 -12 2 -19 q0 -29 -55 -55l-59 -29l-294 -140l37 334q-214 -335 -461 -335q-338 0 -338 516q0 349 168 749h-84q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155z" /> +<glyph unicode="V" horiz-adv-x="1414" d="M166 1245q88 140 224 140q112 0 174 -101.5t143 -417.5q90 -355 143 -633q437 612 437 853q0 94 -76 137l147 162q100 -56 100 -173q0 -148 -241 -531l-113 -174l-82 -129q-7 -11 -49 -84l-46 -81q-10 -17 -39 -81l-175 -172q-40 318 -141 721q-87 343 -134.5 444.5 t-123.5 101.5q-131 0 -189 -200q-35 8 -35 37q0 60 76 181z" /> +<glyph unicode="W" horiz-adv-x="1839" d="M111 1062q0 102 98.5 212.5t189.5 110.5q92 0 139.5 -70.5t82.5 -259.5q53 -281 53 -648l1 -70l144 280l64 123l93 183q80 156 107 250l153 146q-7 -76 -7 -130q0 -170 69 -543l12 -65l20 -104q20 -107 40 -231q29 54 36 70l81 168l98 199q122 253 122 395q0 96 -79 146 l147 161q102 -67 102 -161q0 -125 -210 -538q-35 -69 -84 -168l-43 -88l-44 -101l-58 -130q-7 -17 -32 -80l-154 -163l-4 44q-20 210 -75 497l-12 60l-17 89q-19 97 -25 142l-19 137q-2 15 -10 70l-135 -268l-55 -109q-151 -296 -231 -493l-170 -165q17 120 17 359 q0 476 -42.5 696t-135.5 220q-60 0 -116 -63t-70 -146q-41 9 -41 36z" /> +<glyph unicode="X" horiz-adv-x="1436" d="M14 -7l147 143q39 -21 84 -21q131 0 272 200q118 166 179 293l20 40l-62 146l-38 94q-20 49 -49 108q-38 81 -45 96q-55 128 -109 128q-98 0 -166 -189q-32 8 -32 42q0 95 92 204t174 109q65 0 117 -75t151 -312l79 -190l34 60l64 113q230 403 461 403q77 0 145 -32 l-144 -144q-42 24 -73 24q-91 0 -181 -100t-236 -363l-31 -56l80 -192l45 -102l43 -101q90 -213 167 -213q112 0 163 172q37 -16 37 -43q0 -44 -60 -137q-90 -139 -204 -139q-82 0 -146.5 90t-181.5 369l-55 133l-22 -43q-287 -549 -582 -549q-63 0 -137 34z" /> +<glyph unicode="Y" horiz-adv-x="1321" d="M140 1170q0 61 81.5 138t146.5 77q135 0 252.5 -205t156.5 -508q82 299 250 506t329 207q63 0 122 -40l-113 -155q-43 27 -93 27q-149 0 -304.5 -243.5t-189.5 -529.5l-2 -21q-15 -125 -57.5 -183.5t-171.5 -131.5l310 -14l-117 -116l-545 22l140 124l122 -10 q74 45 109.5 118t50.5 212l2 21q4 38 4 83q0 247 -102.5 478t-212.5 231q-83 0 -137 -126q-31 10 -31 39z" /> +<glyph unicode="Z" horiz-adv-x="1207" d="M68 3q0 31 48 91l48 59l859 1027q-44 -8 -74 -8q-98 0 -242 53l-46 17l-41 15q-49 18 -106 18q-147 0 -147 -227q0 -31 7 -72l-158 -100q-1 26 -1 37q0 192 133 332t316 140q65 0 164 -27l42 -12q85 -23 156 -23q135 0 194 62q25 -20 25 -42q0 -28 -55 -88 q-12 -13 -52 -61l-854 -1031q64 7 113 7q51 0 149 -14l76 -11l130 -22q102 -18 172 -18q176 0 224 134q37 -11 37 -30q0 -38 -60 -124q-86 -125 -227 -125q-45 0 -166 16l-92 12l-98 13q-90 13 -173 13q-141 0 -276 -54q-25 21 -25 43z" /> +<glyph unicode="[" horiz-adv-x="647" d="M127 -427l235 2116l123 121h479l-119 -116h-353l-223 -2004h467l-118 -117h-491z" /> +<glyph unicode="\" horiz-adv-x="715" d="M27 1743l115 67l530 -2169l-118 -68z" /> +<glyph unicode="]" horiz-adv-x="647" d="M-156 -427l119 117h353l223 2004h-467l117 116h492l-235 -2115l-123 -122h-479z" /> +<glyph unicode="^" d="M154 310l536 955l83 80q42 -246 136 -524t186 -428l-86 -83q-207 342 -313 840l-362 -666z" /> +<glyph unicode="_" d="M40 -103l11 103h1035l-12 -103h-1034z" /> +<glyph unicode="`" horiz-adv-x="914" d="M567 1368l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="a" horiz-adv-x="1051" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424z" /> +<glyph unicode="b" horiz-adv-x="993" d="M148 0q22 76 31 159l96 863q35 311 230 530t436 219q50 0 96 -11l-147 -144q-57 17 -107 17q-298 0 -349 -464l-71 -636q108 188 239 306t231 118q144 0 144 -245q0 -300 -190.5 -512.5t-459.5 -212.5q-34 0 -60 3l-81 8q-7 0 -38 2zM319 137q93 -51 186 -51 q138 0 224 159.5t86 415.5q0 149 -81 149q-90 0 -211 -135q-164 -183 -192 -430z" /> +<glyph unicode="c" horiz-adv-x="784" d="M103 274q0 259 176 471t391 212q78 0 133 -26l-114 -137q-80 33 -153 33q-131 0 -206.5 -111t-75.5 -304q0 -136 54.5 -219t142.5 -83q149 0 234 195q22 -24 22 -45q0 -83 -129.5 -184.5t-237.5 -101.5q-104 0 -170.5 83.5t-66.5 216.5z" /> +<glyph unicode="d" horiz-adv-x="1051" d="M101 195q0 289 195 519t440 230q12 0 39 -2l10 86q36 320 218.5 532t420.5 212q57 0 98 -10l-142 -145q-47 16 -111 16q-150 0 -224 -105t-102 -358l-93 -833l-7 -64q-9 -85 -9 -121q0 -49 26 -49q83 0 167 188q27 -16 27 -32q0 -36 -81 -141q-113 -144 -212 -144 q-77 0 -77 106q0 39 12 155l10 88l8 74q-68 -150 -220.5 -286.5t-251.5 -136.5q-141 0 -141 221zM265 250q0 -130 76 -130q92 0 216 136q161 175 190 430l12 113q-84 46 -154 46q-148 0 -244 -168t-96 -427z" /> +<glyph unicode="e" horiz-adv-x="761" d="M103 262q0 228 172.5 461.5t341.5 233.5q122 0 122 -131q0 -147 -142.5 -287t-347.5 -195q20 -241 190 -241q168 0 275 215q25 -17 25 -40q0 -31 -64 -106q-171 -198 -338 -198q-102 0 -168 81t-66 207zM253 466q29 -10 53 -10q124 0 217 76t93 178q0 117 -119 117 q-86 0 -155.5 -102.5t-88.5 -258.5z" /> +<glyph unicode="f" horiz-adv-x="639" d="M-457 -816l133 122q85 -28 154 -28q295 0 341 447l26 248l84 842h-181l114 116h79l6 58q36 370 213 576.5t457 206.5q53 0 119 -10l-140 -138q-75 29 -147 29q-172 0 -245 -119t-106 -456l-15 -147h405l-119 -116h-298l-81 -809q-27 -275 -83.5 -419t-182.5 -259 q-185 -169 -415 -169q-46 0 -118 25z" /> +<glyph unicode="g" horiz-adv-x="955" d="M-164 -529q0 269 329 531q-70 55 -70 194q0 302 199 525t470 223q115 0 173 -26q-5 -18 -6 -22l-11 -53q-13 -58 -14 -64l-40 -366q-10 -92 -21 -323q-14 -289 -55 -428t-145 -248q-238 -251 -507 -251q-130 0 -216 88t-86 220zM-32 -434q0 -125 88.5 -209.5t219.5 -84.5 q202 0 310 178q82 137 114 653q12 195 21 290q-270 -412 -489 -412q-9 0 -32 2q-232 -234 -232 -417zM259 250q0 -130 77 -130q88 0 215 136q176 189 202 428l13 110q-72 51 -181 51q-137 0 -231.5 -172t-94.5 -423z" /> +<glyph unicode="h" horiz-adv-x="1090" d="M161 -26l3 28l8 74l8 70l97 876q35 310 230 529.5t436 219.5q50 0 97 -11l-147 -144q-57 17 -108 17q-297 0 -349 -464l-69 -617q117 176 257.5 290.5t240.5 114.5q97 0 97 -135q0 -40 -12 -123l-53 -373q-16 -112 -16 -177q0 -52 28 -52q69 0 169 184q25 -15 25 -31 q0 -65 -111.5 -170.5t-181.5 -105.5q-78 0 -78 112q0 82 21 227l34 242q17 119 17 189q0 77 -55 77q-128 0 -259 -173.5t-154 -372.5l-26 -240z" /> +<glyph unicode="i" horiz-adv-x="606" d="M118 690q0 61 112.5 164t179.5 103q75 0 75 -104q0 -20 -8 -82l-9 -67q-1 -8 -11 -81l-41 -286l-10 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 173 188q27 -16 27 -31q0 -36 -87 -142q-117 -144 -217 -144q-73 0 -73 97q0 41 30 252l39 272l10 69l8 55q5 35 5 59 q0 50 -28 50q-78 0 -168 -172q-19 17 -19 34zM390 1086l84 207q112 46 184 127q10 -14 10 -29q0 -134 -278 -305z" /> +<glyph unicode="j" horiz-adv-x="545" d="M-449 -815q13 12 20 18l47 42q56 50 120 50q21 0 48 -8q10 -3 15 -5l21 -5q36 -8 64 -8q165 0 231 143t112 599l80 802q-49 -38 -101 -82q-67 -56 -117 -88l8 80q166 98 372 285l-100 -997q-43 -428 -185 -606q-196 -245 -476 -245q-97 0 -159 25zM387 1086l45 190 q128 57 191 141q10 -22 10 -35q0 -41 -74.5 -130.5t-171.5 -165.5z" /> +<glyph unicode="k" horiz-adv-x="947" d="M161 -26l3 28l8 74l8 70l98 876q34 311 229 530t437 219q50 0 96 -11l-147 -144q-57 17 -108 17q-297 0 -349 -464l-60 -540q75 140 188.5 234t208.5 94q128 0 128 -132q0 -126 -106.5 -230.5t-281.5 -150.5q190 -341 283 -341q67 0 141 117q23 -17 23 -33 q0 -47 -92 -129t-148 -84h-2q-100 0 -338 425l-25 45l-45 -409zM358 474q161 0 269 72.5t108 179.5q0 108 -76 108q-70 0 -155.5 -102.5t-145.5 -257.5z" /> +<glyph unicode="l" horiz-adv-x="546" d="M170 94q0 73 9 149l11 89l77 696q36 318 218.5 531t420.5 213q58 0 98 -10l-142 -145q-47 16 -110 16q-150 0 -224.5 -105.5t-102.5 -357.5l-93 -838q-11 -97 -11 -139q0 -90 31 -90q37 0 87 59.5t73 131.5q29 -14 29 -36q0 -72 -107.5 -178t-180.5 -106q-83 0 -83 120z " /> +<glyph unicode="m" horiz-adv-x="1616" d="M94 690q0 60 109.5 163.5t173.5 103.5q86 0 86 -110q0 -28 -5 -75l-8 -81l-8 -68l-8 -71l28 44q224 361 417 361q93 0 93 -134q0 -23 -8 -97l-10 -92l-14 -125q93 193 220.5 320.5t227.5 127.5q99 0 99 -128q0 -55 -11 -131l-53 -371q-17 -115 -17 -178q0 -53 29 -53 q34 0 85.5 57t82.5 129q27 -18 27 -33q0 -63 -111.5 -169t-177.5 -106q-85 0 -85 114q0 72 22 223l35 241q2 13 7 57q2 18 7 61t5 66q0 85 -56 85q-94 0 -218.5 -188t-143.5 -358l-27 -240l-148 -61l3 28l8 74l7 70l50 449l7 51q4 40 4 78q0 97 -59 97q-92 0 -214.5 -188 t-141.5 -358l-26 -240l-149 -61l3 28l8 74l8 70l51 464l6 53q7 62 7 100q0 64 -32 64q-75 0 -162 -170q-23 19 -23 33z" /> +<glyph unicode="n" horiz-adv-x="1156" d="M94 690q0 60 109.5 163.5t172.5 103.5q86 0 86 -110q0 -28 -5 -75l-8 -81l-8 -68l-8 -71q118 176 258.5 290.5t239.5 114.5q97 0 97 -135q0 -41 -11 -123l-54 -373q-16 -112 -16 -177q0 -52 28 -52q69 0 170 184q24 -15 24 -31q0 -65 -111.5 -170.5t-181.5 -105.5 q-78 0 -78 112q0 82 21 227l35 242q17 118 17 187q0 79 -55 79q-128 0 -259.5 -173.5t-153.5 -372.5l-27 -240l-149 -61l3 28l8 74l8 70l52 464l6 53q6 62 6 100q0 64 -32 64q-75 0 -161 -170q-23 19 -23 33z" /> +<glyph unicode="o" horiz-adv-x="878" d="M103 272q0 240 176 462.5t365 222.5q228 0 228 -298q0 -241 -176 -463t-368 -222q-225 0 -225 298zM256 398q0 -312 193 -312q115 0 192.5 128t77.5 319q0 312 -194 312q-114 0 -191.5 -128.5t-77.5 -318.5z" /> +<glyph unicode="p" horiz-adv-x="1019" d="M-434 -829l145 144q57 -17 108 -17q298 0 344 464l104 1037q-47 -35 -101 -81q-66 -56 -116 -88l8 80q169 100 371 286l-46 -463q106 186 238 305t232 119q144 0 144 -246q0 -293 -189 -508.5t-446 -215.5l-34 1l-8 -79q-31 -310 -224 -530t-434 -220q-50 0 -96 12z M343 137q81 -51 183 -51q137 0 222.5 160t85.5 415q0 149 -81 149q-89 0 -211 -136q-163 -181 -188 -429z" /> +<glyph unicode="q" horiz-adv-x="993" d="M109 195q0 298 198 523.5t459 225.5q100 0 172 -26q-5 -18 -6 -21l-11 -54q-12 -55 -13 -64l-158 -1420q26 24 103 84l87 69q5 4 37 25l-10 -84q-178 -102 -381 -288l137 1233q-116 -184 -252.5 -304t-229.5 -120q-132 0 -132 221zM273 250q0 -130 68 -130h4 q80 4 222 149q97 99 134 180t54 234l13 120q-67 42 -168 42q-138 0 -232.5 -172t-94.5 -423z" /> +<glyph unicode="r" horiz-adv-x="853" d="M206 856q108 100 172 101q85 0 85 -112q0 -27 -5 -73l-7 -70l-9 -84l-9 -82q222 421 437 421q56 0 112 -26l-141 -154q-32 18 -82 18q-104 0 -219.5 -168.5t-135.5 -350.5l-27 -244l-148 -50l3 30l7 65l8 65l52 476l6 52q7 59 7 96q0 61 -34 61q-80 0 -159 -171 q-24 18 -24 37q-1 60 111 163z" /> +<glyph unicode="s" horiz-adv-x="728" d="M43 28l138 113q78 -83 196 -83q144 0 144 139q0 77 -132 215l-57 59q-125 131 -125 212q0 116 100.5 195t247.5 79q80 0 175 -30l-120 -111q-76 57 -169 57q-109 0 -109 -91q0 -65 121 -191l62 -66q138 -144 138 -232q0 -126 -121 -222.5t-279 -96.5q-112 0 -210 54z" /> +<glyph unicode="t" horiz-adv-x="725" d="M66 815l117 116h107l21 182l147 49l-25 -231h424l-117 -116h-320l-50 -442q-13 -119 -13 -176q0 -113 77 -113q83 0 172 136q15 -19 15 -34q0 -56 -98.5 -134t-169.5 -78q-142 0 -142 182q0 67 17 217l49 442h-211z" /> +<glyph unicode="u" horiz-adv-x="1148" d="M88 689q0 62 110.5 165t175.5 103q83 0 83 -114q0 -27 -4 -63l-9 -77l-9 -84l-32 -286q-8 -73 -8 -148q0 -69 51 -69q113 0 255.5 186t168.5 368l34 237l162 55q-28 -116 -42 -207l-60 -418q-5 -38 -8 -64l-7 -55q-6 -51 -6 -72q0 -43 24 -43q85 0 173 188q27 -16 27 -32 q0 -35 -87 -141q-117 -144 -217 -144q-73 0 -73 98q0 31 7 83l11 80q9 65 12 88l10 70q-114 -175 -257 -297t-233 -122q-99 0 -99 132q0 49 13 161l36 328q1 7 5 58l6 65q3 29 3 52q0 58 -33 58q-76 0 -164 -171q-19 15 -19 32z" /> +<glyph unicode="v" horiz-adv-x="923" d="M25 702q0 76 65.5 164t123.5 91h6q213 0 339 -761q279 390 279 543q0 57 -58 90l125 128q73 -37 73 -118q0 -100 -191 -389q-42 -62 -59 -90l-25 -43l-46 -73q-38 -60 -80 -135l-139 -135q-38 322 -124 584t-154 262q-76 0 -106 -151q-29 10 -29 33z" /> +<glyph unicode="w" horiz-adv-x="1285" d="M27 705q0 76 71.5 164t131.5 88q88 0 138.5 -145t86.5 -498l6 -61q176 323 263 590l119 114q12 -135 23 -209l24 -160l17 -112l44 -256l24 39q231 378 231 485q0 58 -61 99l121 114q74 -41 74 -109q0 -82 -114 -271l-61 -101l-75 -131q-81 -141 -118 -251l-120 -120 q-14 180 -49 379l-17 94l-43 234l-47 -86q-128 -234 -216 -479l-153 -139q0 232 -33 441l-33 212q-28 181 -96 186h-6q-72 0 -100 -151q-32 9 -32 40z" /> +<glyph unicode="x" horiz-adv-x="1026" d="M7 9l116 114q30 -30 70 -30q113 0 254 228l52 84l20 33l-31 82q-34 87 -37 94l-48 107q-51 115 -98 115q-71 0 -112 -133q-30 11 -30 32q0 62 72 142t129 80q112 0 232 -322l20 -53l23 37q213 338 359 338q38 0 89 -22l-121 -127q-24 7 -34 7q-110 0 -262 -253l-29 -48 l23 -62q132 -363 217 -363q78 0 119 112q28 -18 28 -37q0 -50 -80 -120t-138 -70q-116 0 -237 327l-28 74l-29 -51q-204 -350 -390 -350q-70 0 -119 35z" /> +<glyph unicode="y" horiz-adv-x="1110" d="M-60 -811l123 135q94 -42 196 -42q208 0 312 135t174 495l94 486q-101 -184 -211.5 -304t-180.5 -120q-96 0 -106 202l-7 139l-13 283l-3 81q-9 161 -59 161q-78 0 -152 -148q-26 18 -26 39q0 54 97 140t158 86q63 0 89 -56.5t34 -208.5l18 -350q10 -200 64 -200 q81 0 201 185.5t154 364.5l39 204l178 62q-34 -88 -70 -266l-134 -671q-79 -394 -244 -582q-247 -280 -572 -280q-68 0 -153 30z" /> +<glyph unicode="z" horiz-adv-x="843" d="M47 -21l83 160q57 60 110 128l64 79q32 41 49 61l46 56q22 27 70 90l90 116l77 102q8 9 23 28q-20 -2 -29 -2q-70 0 -190 34l-36 10l-30 10q-28 8 -49 8q-70 0 -70 -79q0 -30 16 -61l-117 -101q-4 34 -4 50q0 116 77.5 202.5t181.5 86.5q28 0 71 -8l58 -10l48 -7 q83 -14 116 -14q74 0 157 33l-87 -160q-74 -82 -151 -177l-79 -99l-70 -87l-46 -57l-42 -51q-58 -71 -65 -81l-48 -69q-8 -11 -37 -46q55 6 91 6q64 0 143 -11l65 -9l61 -8q36 -5 73 -5q93 0 136 58q17 -16 17 -29q0 -52 -57 -99.5t-120 -47.5q-29 0 -73 5q-37 4 -65 6 l-59 4q-73 6 -143 6q-145 0 -256 -21z" /> +<glyph unicode="{" horiz-adv-x="713" d="M90 677l103 103l123 1q173 78 173 245l-2 111l-1 125q0 425 367 548l12 -32q-237 -113 -237 -410l3 -92l2 -108q0 -162 -56.5 -250.5t-195.5 -147.5q193 -27 193 -218q0 -113 -31 -281l-35 -189l-13 -91l-12 -79q-6 -37 -6 -75q0 -124 129 -175l-86 -89q-186 59 -186 246 q0 54 8 112l15 102q8 59 11 75l35 189q24 129 24 219q0 89 -57.5 125t-202.5 36h-77z" /> +<glyph unicode="|" horiz-adv-x="418" d="M132 -110l156 1409l147 156l-156 -1410z" /> +<glyph unicode="}" horiz-adv-x="713" d="M3 -394q237 111 237 410l-3 92l-2 108q0 161 56.5 250t195.5 147q-193 28 -193 218q0 112 31 281l34 189l14 91l12 80q6 36 6 74q0 125 -129 176l86 88q186 -58 186 -245q0 -54 -8 -112l-15 -102q-8 -61 -11 -76l-35 -189q-24 -128 -24 -218t57.5 -125.5t202.5 -35.5 l77 -1l-104 -102l-122 -2q-173 -77 -173 -245l2 -110l1 -126q0 -426 -367 -548z" /> +<glyph unicode="~" d="M155 393q0 103 79.5 202t161.5 99q83 0 223 -113l48 -38q136 -110 208 -110q148 0 175 230q43 -19 43 -52q0 -103 -79 -202t-161 -99q-84 0 -223 113l-48 39q-135 109 -208 109q-149 0 -175 -229q-44 18 -44 51z" /> +<glyph unicode="¡" horiz-adv-x="525" d="M195 -328q0 178 26 420q12 123 14 141l17 197l127 95l-12 -167q-16 -215 -16 -376q0 -253 39 -416l-182 -70q-13 87 -13 176zM227 815l146 142q46 -96 118 -142l-149 -141q-65 49 -115 141z" /> +<glyph unicode="¢" horiz-adv-x="1060" d="M213 271q0 173 116 361.5t283 288.5l36 320l72 73l-39 -358q109 40 183 40q72 0 124 -26l-129 -137q-76 33 -145 33q-19 0 -44 -3l-79 -709q129 43 209 190q18 -22 18 -39q0 -43 -70.5 -117.5t-166.5 -131.5l-25 -218l-72 -69l29 262q-64 -19 -102 -19q-198 0 -198 259z M378 391q0 -214 148 -241l78 698q-92 -35 -159 -170.5t-67 -286.5z" /> +<glyph unicode="£" horiz-adv-x="937" d="M4 1l107 122l28 -2q23 -3 60 -5l31 -3q120 107 120 377v27h-238l61 65h177q15 195 152 323.5t329 128.5q83 0 130 -17l-125 -121q-79 32 -153 32q-105 0 -148 -65t-43 -222v-59h281l-59 -65h-222v-18q0 -128 -34 -201t-133 -158q-11 -10 -33 -29l68 -4q32 -1 80 -1 l110 -2q227 0 329 137q11 -15 11 -34q0 -42 -84 -120q-123 -113 -274 -113q-42 0 -109 3q-154 8 -177 8q-62 0 -242 16z" /> +<glyph unicode="¤" horiz-adv-x="1306" d="M16 -26l350 285q-50 79 -50 179q0 133 87 256l-257 243l89 71l251 -218q118 109 273 109q135 0 244 -101l172 142l233 68l-359 -275q41 -83 41 -165q0 -135 -87 -265l258 -243l-93 -86l-247 229q-138 -109 -282 -109q-114 0 -229 105l-187 -155zM421 516q0 -122 90 -215 t209 -93q110 0 188 81t78 195q0 125 -88 213.5t-211 88.5q-113 0 -189.5 -77.5t-76.5 -192.5z" /> +<glyph unicode="¥" horiz-adv-x="1132" d="M128 0l117 115l132 -9q114 69 137 214h-312l49 52h268q3 23 3 44q0 34 -4 75h-295l52 52h230l-6 22q-85 323 -204 323q-80 0 -109 -106q-36 5 -36 30q0 58 73 127t134 69q92 0 176.5 -140.5t102.5 -324.5h20l14 30q201 435 423 435q68 0 127 -36l-118 -123q-31 20 -75 20 q-165 0 -318 -326h290l-53 -52h-256q-13 -48 -25 -119h312l-52 -52h-271q-17 -110 -202 -217l283 -16l-110 -113z" /> +<glyph unicode="§" d="M87 -206l162 91q16 -247 299 -247q120 0 196 68.5t76 174.5q0 131 -157 238l-127 87q-256 176 -256 353q0 168 152 288q-109 89 -109 203q0 148 127.5 241.5t329.5 93.5q148 0 294 -66l-53 -124l-24 -53q-23 -50 -45 -50q-8 0 -23 8q17 52 17 78q0 66 -68.5 107.5 t-178.5 41.5q-116 0 -188 -57t-72 -150q0 -100 188 -232l144 -101q241 -168 241 -351q0 -162 -132 -295q67 -81 67 -178q0 -163 -143.5 -276.5t-350.5 -113.5q-273 0 -366 221zM396 637q0 -87 54 -153.5t214 -179.5l183 -128q57 83 57 184q0 92 -49.5 155.5t-207.5 173.5 l-181 126q-70 -70 -70 -178z" /> +<glyph unicode="¨" horiz-adv-x="914" d="M388 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM711 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="©" horiz-adv-x="1573" d="M144 672q0 296 208.5 504.5t503.5 208.5q296 0 504.5 -209t208.5 -504t-208.5 -503.5t-504.5 -208.5q-295 0 -503.5 208.5t-208.5 503.5zM211 672q0 -268 188.5 -456.5t456.5 -188.5t457 188.5t189 456.5t-189 457t-457 189q-267 0 -456 -189t-189 -457zM479 573 q0 210 154.5 370t357.5 160q115 0 226 -40l-38 -94l-21 -50q-18 -44 -43 -44q-11 0 -27 6q10 23 10 36q0 123 -158 123q-130 0 -222.5 -118t-92.5 -284q0 -139 63 -218t173 -79q140 0 260 100q7 -27 7 -40q0 -53 -118.5 -109t-231.5 -56q-129 0 -214 95.5t-85 241.5z" /> +<glyph unicode="ª" horiz-adv-x="708" d="M166 907q0 186 127 316t310 130q73 0 122 -19q-5 -17 -6 -22l-7 -31q-8 -31 -8 -36l-39 -256l-5 -37l-4 -32q-3 -25 -3 -30l-1 -13q0 -12 8 -12q40 0 91 103l4 11q32 -17 32 -33q0 -44 -72.5 -110.5t-120.5 -66.5q-54 0 -54 68q0 24 17 142q-153 -210 -280 -210 q-111 0 -111 138zM286 941q0 -71 48 -71q75 0 156 103t99 221l8 55q-56 25 -114 25q-88 0 -142.5 -92.5t-54.5 -240.5z" /> +<glyph unicode="«" horiz-adv-x="1166" d="M78 406l92 93l544 387l-64 -147l-430 -260q207 -108 364 -337l-92 -94q-146 243 -414 358zM524 406l92 93l544 387l-64 -147l-430 -260q207 -108 363 -337l-91 -94q-146 243 -414 358z" /> +<glyph unicode="¬" d="M100 472l117 123h880l-41 -368l-131 -129l42 374h-867z" /> +<glyph unicode="­" horiz-adv-x="741" d="M126 420l130 130h467l-129 -130h-468z" /> +<glyph unicode="®" horiz-adv-x="1573" d="M144 672q0 296 208.5 504.5t503.5 208.5q296 0 504.5 -209t208.5 -504t-208.5 -503.5t-504.5 -208.5q-295 0 -503.5 208.5t-208.5 503.5zM211 672q0 -268 188.5 -456.5t456.5 -188.5t457 188.5t189 456.5t-189 457t-457 189q-267 0 -456 -189t-189 -457zM442 249l79 80 l66 -1q24 48 36 149l62 560h-109l68 77h163h114q275 0 275 -190q0 -151 -208 -247q149 -365 238 -365q34 0 55 15q6 -14 6 -23q0 -22 -48 -39l-51 -18q-29 -10 -54 -10q-109 0 -265 392q-24 -3 -39 -3q-12 0 -45 4l-21 3l-21 -189q-10 -90 -65 -105q-13 -3 -38 -11h168 l-78 -79h-288zM770 693q43 -9 102 -9q11 0 40 4q140 74 140 216q0 133 -160 133h-51h-32z" /> +<glyph unicode="¯" horiz-adv-x="914" d="M346 1086l104 104h467l-102 -104h-469z" /> +<glyph unicode="°" horiz-adv-x="548" d="M182 1176q0 110 103.5 210t218.5 100q142 0 142 -142q0 -101 -108 -202t-215 -101q-141 0 -141 135zM276 1266q0 -140 140 -140q56 0 96 41t40 99q0 56 -40 96t-97 40q-58 0 -98.5 -39.5t-40.5 -96.5z" /> +<glyph unicode="±" d="M47 0l119 123h937l-119 -123h-937zM107 543l119 123h358l28 249l130 119l-41 -368h463l-119 -123h-358l-25 -225l-129 -119l38 344h-464z" /> +<glyph unicode="´" horiz-adv-x="914" d="M532 1086l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="µ" horiz-adv-x="1059" d="M98 -425l3 28l8 74l8 70l128 1152l160 55q-26 -123 -35 -208l-40 -355q-5 -50 -5 -88q0 -168 120 -168q99 0 210.5 171t131.5 355l26 238l161 55q-26 -123 -35 -208l-46 -412l-6 -66l-6 -54q-3 -35 -3 -63q0 -48 30 -48q77 0 169 183q20 -20 20 -36q0 -64 -111 -170 t-178 -106q-78 0 -78 108q0 49 10 153l8 78l9 78q-176 -391 -363 -391q-55 0 -103 38l-45 -402z" /> +<glyph unicode="¶" d="M184 795q0 222 395 350l22 200l101 94l-31 -280q85 16 183 21l19 165l101 94l-29 -259q146 -11 241 -35l-112 -107q-66 31 -140 39l-54 -477q135 15 232 84q7 -15 7 -30q0 -35 -76.5 -79t-172.5 -64l-93 -838l-101 -100l102 920q-59 -4 -91 -4t-90 4l-91 -820l-102 -100 l104 938q-324 90 -324 284zM610 611q84 -19 141 -19q11 0 38 1l54 484q-28 5 -69 5q-68 0 -112 -5z" /> +<glyph unicode="·" d="M493 504l148 142q66 -50 115 -142l-146 -141q-45 95 -117 141z" /> +<glyph unicode="¸" horiz-adv-x="914" d="M214 -414q183 14 183 121q0 87 -135 114l99 179h76l-60 -102q130 -45 130 -154q0 -76 -76.5 -143t-164.5 -67q-36 0 -52 52z" /> +<glyph unicode="º" horiz-adv-x="604" d="M164 949q0 157 110 284.5t245 127.5q154 0 154 -183q0 -152 -110 -280.5t-239 -128.5q-160 0 -160 180zM277 1025q0 -176 116 -176q72 0 119 72.5t47 183.5q0 176 -116 176q-71 0 -118.5 -73t-47.5 -183z" /> +<glyph unicode="»" horiz-adv-x="1166" d="M97 48l64 147l430 260q-206 106 -363 337l91 94q145 -241 414 -358l-92 -93zM543 48l64 147l431 260q-209 107 -364 337l91 94q143 -241 414 -358l-92 -93z" /> +<glyph unicode="¿" horiz-adv-x="745" d="M8 -280q0 156 225 301q68 44 85 60l26 23q110 99 110 223q0 27 -9 63l167 151q15 -39 15 -88q0 -174 -179 -327l-57 -47l-23 -20q-167 -144 -167 -281q0 -205 218 -205q88 0 208 64q9 -17 9 -23q0 -38 -112.5 -78t-220.5 -40q-295 0 -295 224zM439 815l146 142 q45 -96 117 -142l-148 -141q-66 50 -115 141z" /> +<glyph unicode="À" horiz-adv-x="1469" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123zM1006 1782l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="Á" horiz-adv-x="1470" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123zM1149 1500l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="Â" horiz-adv-x="1469" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123zM890 1500l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="Ã" horiz-adv-x="1469" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123zM871 1530q0 54 58.5 126.5t102.5 72.5q22 0 51 -18l31 -19l59 -35l28 -18q34 -21 56 -21q50 0 104 114q26 -9 26 -31q0 -48 -60.5 -123.5t-98.5 -75.5q-32 0 -61 18l-37 24l-54 33l-22 14q-35 21 -60 21q-54 0 -97 -112q-26 11 -26 30z" /> +<glyph unicode="Ä" horiz-adv-x="1469" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123zM877 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM1200 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="Å" horiz-adv-x="1469" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123zM996 1457q0 92 87.5 176.5t183.5 84.5q119 0 119 -116q0 -88 -89.5 -173t-181.5 -85q-119 0 -119 113zM1081 1533q0 -113 112 -113q109 0 109 113q0 108 -110 108q-111 0 -111 -108z" /> +<glyph unicode="Æ" horiz-adv-x="1469" d="M121 830q0 248 215 400q180 128 616 128q74 0 130 -3q155 -10 159 -10h70q-78 -122 -78 -494l1 -52l4 -115q0 -207 51 -424q20 -84 39 -108t66 -24q51 0 116 33q7 -17 7 -28q0 -25 -39 -43l-47 -23l-246 -107q-82 253 -99 530l-76 -53h-336q-92 -234 -252 -334l207 -10 l-108 -114l-399 14l133 120l100 -6q68 50 116 140.5t143 350.5l30 83q92 251 175 365.5t226 188.5q-157 29 -331 29q-443 0 -443 -299q0 -102 48 -191l-157 -151q-41 107 -41 207zM715 545h369q-14 174 -14 282q0 55 2 90l8 116q8 119 22 182q-196 -120 -322 -490 q-36 -107 -42 -123zM983 1739l113 117q-2 -22 -2 -33q-3 -33 -3 -47q0 -166 91 -166q58 0 115.5 69.5t86.5 176.5q34 -10 34 -39q0 -94 -98.5 -205.5t-180.5 -111.5q-156 0 -156 239z" /> +<glyph unicode="Ç" horiz-adv-x="1275" d="M145 522q0 367 235 615t583 248q177 0 367 -67l-67 -147l-19 -43q-24 -51 -59 -51q-7 0 -21 3q14 31 14 51q0 67 -89.5 117t-208.5 50q-244 0 -396.5 -193t-152.5 -502q0 -239 107 -381t286 -142q129 0 257.5 77.5t189.5 191.5q23 -11 23 -32q0 -66 -121 -174 q-205 -183 -466 -183q-211 0 -336.5 152.5t-125.5 409.5zM465 -414q183 14 183 121q0 87 -135 114l99 179h76l-60 -102q130 -45 130 -154q0 -76 -76.5 -143t-164.5 -67q-36 0 -52 52z" /> +<glyph unicode="È" horiz-adv-x="1497" d="M27 31l183 138q99 -17 238 -30q98 38 132 108t57 282l79 708h-35q-194 0 -304 -79.5t-110 -219.5q0 -81 46 -168l-162 -156q-24 80 -24 152q0 280 233 453q170 126 484 126h330q186 0 380 13l-81 -205l-16 -37q-25 -59 -64 -59q-6 0 -14 1q11 50 11 80q0 66 -69.5 82.5 t-346.5 16.5h-97l-53 -484h195q169 0 300 16q-114 -137 -230 -137q-65 0 -184 10q-49 3 -69 3h-24l-10 -87q-21 -190 -66.5 -270t-178.5 -161l219 -17l89 -8q94 -7 225 -7q221 0 368 143q17 -19 17 -36q0 -28 -107 -115q-156 -127 -341 -127q-171 0 -492 29l-373 34 q-19 1 -135 8zM953 1782l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="É" horiz-adv-x="1497" d="M27 31l183 138q99 -17 238 -30q98 38 132 108t57 282l79 708h-35q-194 0 -304 -79.5t-110 -219.5q0 -81 46 -168l-162 -156q-24 80 -24 152q0 280 233 453q170 126 484 126h330q186 0 380 13l-81 -205l-16 -37q-25 -59 -64 -59q-6 0 -14 1q11 50 11 80q0 66 -69.5 82.5 t-346.5 16.5h-97l-53 -484h195q169 0 300 16q-114 -137 -230 -137q-65 0 -184 10q-49 3 -69 3h-24l-10 -87q-21 -190 -66.5 -270t-178.5 -161l219 -17l89 -8q94 -7 225 -7q221 0 368 143q17 -19 17 -36q0 -28 -107 -115q-156 -127 -341 -127q-171 0 -492 29l-373 34 q-19 1 -135 8zM1054 1500l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="Ê" horiz-adv-x="1497" d="M27 31l183 138q99 -17 238 -30q98 38 132 108t57 282l79 708h-35q-194 0 -304 -79.5t-110 -219.5q0 -81 46 -168l-162 -156q-24 80 -24 152q0 280 233 453q170 126 484 126h330q186 0 380 13l-81 -205l-16 -37q-25 -59 -64 -59q-6 0 -14 1q11 50 11 80q0 66 -69.5 82.5 t-346.5 16.5h-97l-53 -484h195q169 0 300 16q-114 -137 -230 -137q-65 0 -184 10q-49 3 -69 3h-24l-10 -87q-21 -190 -66.5 -270t-178.5 -161l219 -17l89 -8q94 -7 225 -7q221 0 368 143q17 -19 17 -36q0 -28 -107 -115q-156 -127 -341 -127q-171 0 -492 29l-373 34 q-19 1 -135 8zM914 1500l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="Ë" horiz-adv-x="1497" d="M27 31l183 138q99 -17 238 -30q98 38 132 108t57 282l79 708h-35q-194 0 -304 -79.5t-110 -219.5q0 -81 46 -168l-162 -156q-24 80 -24 152q0 280 233 453q170 126 484 126h330q186 0 380 13l-81 -205l-16 -37q-25 -59 -64 -59q-6 0 -14 1q11 50 11 80q0 66 -69.5 82.5 t-346.5 16.5h-97l-53 -484h195q169 0 300 16q-114 -137 -230 -137q-65 0 -184 10q-49 3 -69 3h-24l-10 -87q-21 -190 -66.5 -270t-178.5 -161l219 -17l89 -8q94 -7 225 -7q221 0 368 143q17 -19 17 -36q0 -28 -107 -115q-156 -127 -341 -127q-171 0 -492 29l-373 34 q-19 1 -135 8zM880 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM1203 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="Ì" horiz-adv-x="935" d="M121 775q0 258 192 414t510 156h79q-45 -229 -54 -308l-54 -489l-13 -111q-17 -142 -61.5 -205t-170.5 -123l290 -15l-120 -116l-487 22l128 124l109 -12q122 77 150 315l11 97l77 700h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM672 1782l81 81 q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="Í" horiz-adv-x="936" d="M121 775q0 258 192 414t510 156h79q-45 -229 -54 -308l-54 -489l-13 -111q-17 -142 -61.5 -205t-170.5 -123l290 -15l-120 -116l-487 22l128 124l109 -12q122 77 150 315l11 97l77 700h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM748 1500l113 207 q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="Î" horiz-adv-x="936" d="M121 775q0 258 192 414t510 156h79q-45 -229 -54 -308l-54 -489l-13 -111q-17 -142 -61.5 -205t-170.5 -123l290 -15l-120 -116l-487 22l128 124l109 -12q122 77 150 315l11 97l77 700h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM630 1500l53 124 q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="Ï" horiz-adv-x="936" d="M121 775q0 258 192 414t510 156h79q-45 -229 -54 -308l-54 -489l-13 -111q-17 -142 -61.5 -205t-170.5 -123l290 -15l-120 -116l-487 22l128 124l109 -12q122 77 150 315l11 97l77 700h-31q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM547 1612l119 112 q59 -42 89 -112l-114 -112q-33 73 -94 112zM870 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="Ñ" horiz-adv-x="1807" d="M121 776q0 246 186.5 410.5t466.5 164.5q39 0 73 -3q38 -3 48 -3h11q-4 -35 -4 -50q0 -206 267 -524l75 -88l66 -79q105 -125 166 -230l67 543q63 497 231 697q192 228 424 228q87 0 172 -32l-148 -147q-91 53 -161 53q-155 0 -235.5 -142.5t-125.5 -496.5l-106 -847 l-126 -260q-46 184 -98 280t-207 282l-77 93q-178 215 -252 385l-50 -450l-12 -108q-16 -134 -51.5 -196.5t-141.5 -141.5l221 -20l-119 -116l-435 22l129 124l111 -10q76 55 105 119t46 212l9 87l77 692h-47q-416 0 -416 -275q0 -86 47 -173l-162 -156q-24 78 -24 156z M999 1530q0 54 58.5 126.5t102.5 72.5q22 0 51 -18l31 -19l59 -35l28 -18q34 -21 56 -21q50 0 104 114q26 -9 26 -31q0 -48 -60.5 -123.5t-98.5 -75.5q-32 0 -61 18l-37 24l-54 33l-22 14q-35 21 -60 21q-54 0 -97 -112q-26 11 -26 30z" /> +<glyph unicode="Ò" horiz-adv-x="1404" d="M151 511q0 353 238.5 613.5t562.5 260.5q201 0 326 -152.5t125 -398.5q0 -356 -239.5 -615.5t-567.5 -259.5q-196 0 -320.5 154.5t-124.5 397.5zM341 611q0 -248 109 -409.5t277 -161.5q207 0 346.5 199t139.5 494q0 247 -109 409.5t-274 162.5q-209 0 -349 -198.5 t-140 -495.5zM806 1782l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="Ó" horiz-adv-x="1404" d="M151 511q0 353 238.5 613.5t562.5 260.5q201 0 326 -152.5t125 -398.5q0 -356 -239.5 -615.5t-567.5 -259.5q-196 0 -320.5 154.5t-124.5 397.5zM341 611q0 -248 109 -409.5t277 -161.5q207 0 346.5 199t139.5 494q0 247 -109 409.5t-274 162.5q-209 0 -349 -198.5 t-140 -495.5zM900 1500l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="Ô" horiz-adv-x="1404" d="M151 511q0 353 238.5 613.5t562.5 260.5q201 0 326 -152.5t125 -398.5q0 -356 -239.5 -615.5t-567.5 -259.5q-196 0 -320.5 154.5t-124.5 397.5zM341 611q0 -248 109 -409.5t277 -161.5q207 0 346.5 199t139.5 494q0 247 -109 409.5t-274 162.5q-209 0 -349 -198.5 t-140 -495.5zM750 1500l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="Õ" horiz-adv-x="1404" d="M151 511q0 353 238.5 613.5t562.5 260.5q201 0 326 -152.5t125 -398.5q0 -356 -239.5 -615.5t-567.5 -259.5q-196 0 -320.5 154.5t-124.5 397.5zM341 611q0 -248 109 -409.5t277 -161.5q207 0 346.5 199t139.5 494q0 247 -109 409.5t-274 162.5q-209 0 -349 -198.5 t-140 -495.5zM714 1530q0 54 58.5 126.5t102.5 72.5q22 0 51 -18l31 -19l59 -35l28 -18q34 -21 56 -21q50 0 104 114q26 -9 26 -31q0 -48 -60.5 -123.5t-98.5 -75.5q-32 0 -61 18l-37 24l-54 33l-22 14q-35 21 -60 21q-54 0 -97 -112q-26 11 -26 30z" /> +<glyph unicode="Ö" horiz-adv-x="1404" d="M151 511q0 353 238.5 613.5t562.5 260.5q201 0 326 -152.5t125 -398.5q0 -356 -239.5 -615.5t-567.5 -259.5q-196 0 -320.5 154.5t-124.5 397.5zM341 611q0 -248 109 -409.5t277 -161.5q207 0 346.5 199t139.5 494q0 247 -109 409.5t-274 162.5q-209 0 -349 -198.5 t-140 -495.5zM686 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM1009 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="Ø" horiz-adv-x="1076" d="M86 177l170 103q40 -246 295 -246q124 0 203 67.5t79 173.5q0 145 -175 288l-121 98q-146 120 -195 189.5t-49 156.5q0 164 131 271t331 107q159 0 301 -76l-58 -133l-26 -59q-22 -52 -52 -52q-13 0 -27 10q17 52 17 83q0 64 -70.5 107t-174.5 43q-236 0 -236 -195 q0 -70 52.5 -134.5t218.5 -199.5l97 -80q185 -150 185 -315q0 -182 -153.5 -303t-383.5 -121q-280 0 -359 217zM430 -602q118 84 118 190q0 83 -84 145l113 112q98 -72 98 -173q0 -142 -216 -307z" /> +<glyph unicode="Ù" horiz-adv-x="1750" d="M121 775q0 258 192 414t510 156h146q-90 -174 -147 -416t-57 -448q0 -414 252 -414q170 0 274 164.5t135 482.5q14 145 19 189l42 377l198 103q-43 -165 -70 -407l-36 -320q-2 -17 -11 -113l-14 -139q-8 -79 -8 -136q0 -100 76 -100q60 0 135 47l3 -12q2 -12 2 -19 q0 -29 -55 -55l-59 -29l-294 -140l37 334q-214 -335 -461 -335q-338 0 -338 516q0 349 168 749h-84q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM1104 1782l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="Ú" horiz-adv-x="1750" d="M121 775q0 258 192 414t510 156h146q-90 -174 -147 -416t-57 -448q0 -414 252 -414q170 0 274 164.5t135 482.5q14 145 19 189l42 377l198 103q-43 -165 -70 -407l-36 -320q-2 -17 -11 -113l-14 -139q-8 -79 -8 -136q0 -100 76 -100q60 0 135 47l3 -12q2 -12 2 -19 q0 -29 -55 -55l-59 -29l-294 -140l37 334q-214 -335 -461 -335q-338 0 -338 516q0 349 168 749h-84q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM1241 1500l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="Û" horiz-adv-x="1750" d="M121 775q0 258 192 414t510 156h146q-90 -174 -147 -416t-57 -448q0 -414 252 -414q170 0 274 164.5t135 482.5q14 145 19 189l42 377l198 103q-43 -165 -70 -407l-36 -320q-2 -17 -11 -113l-14 -139q-8 -79 -8 -136q0 -100 76 -100q60 0 135 47l3 -12q2 -12 2 -19 q0 -29 -55 -55l-59 -29l-294 -140l37 334q-214 -335 -461 -335q-338 0 -338 516q0 349 168 749h-84q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM1079 1500l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24 q-107 -139 -209 -201z" /> +<glyph unicode="Ü" horiz-adv-x="1750" d="M121 775q0 258 192 414t510 156h146q-90 -174 -147 -416t-57 -448q0 -414 252 -414q170 0 274 164.5t135 482.5q14 145 19 189l42 377l198 103q-43 -165 -70 -407l-36 -320q-2 -17 -11 -113l-14 -139q-8 -79 -8 -136q0 -100 76 -100q60 0 135 47l3 -12q2 -12 2 -19 q0 -29 -55 -55l-59 -29l-294 -140l37 334q-214 -335 -461 -335q-338 0 -338 516q0 349 168 749h-84q-416 0 -416 -275q0 -86 47 -173l-163 -156q-23 78 -23 155zM1046 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM1369 1612l119 112q59 -42 89 -112l-114 -112 q-33 73 -94 112z" /> +<glyph unicode="ß" horiz-adv-x="1179" d="M-465 -815l134 121q88 -30 157 -30q292 0 343 443l28 248l115 1029q40 359 211 567t427 208q106 0 176.5 -61t70.5 -155q0 -143 -209 -349q-21 -21 -61 -63l-21 -21q-138 -142 -138 -220q0 -81 149 -259l69 -83q127 -152 127 -274q0 -125 -117.5 -218.5t-274.5 -93.5 q-102 0 -208 51l136 114q74 -79 198 -79q142 0 142 132q0 86 -83 192l-43 54l-58 74l-56 67q-126 149 -126 247q0 100 162 249q50 45 56 52l24 24q171 174 171 314q0 195 -197 195q-160 0 -258 -117q-77 -91 -117 -459l-121 -1085q-30 -275 -88 -418t-185 -257 q-184 -165 -414 -165q-49 0 -121 26z" /> +<glyph unicode="à" horiz-adv-x="1070" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424zM510 1368l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="á" horiz-adv-x="1070" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424zM617 1086l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="â" horiz-adv-x="1070" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424zM500 1086l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24 q-107 -139 -209 -201z" /> +<glyph unicode="ã" horiz-adv-x="1070" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424zM461 1116q0 54 58.5 126.5t102.5 72.5q22 0 51 -18l31 -19l59 -35l28 -18q34 -21 56 -21q50 0 104 114 q26 -9 26 -31q0 -48 -60.5 -123.5t-98.5 -75.5q-32 0 -61 18l-37 24l-54 33l-22 14q-35 21 -60 21q-54 0 -97 -112q-26 11 -26 30z" /> +<glyph unicode="ä" horiz-adv-x="1070" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424zM447 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM770 1198l119 112q59 -42 89 -112 l-114 -112q-33 73 -94 112z" /> +<glyph unicode="å" horiz-adv-x="1070" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424zM573 1199q0 92 87.5 176.5t183.5 84.5q119 0 119 -116q0 -88 -89.5 -173t-181.5 -85q-119 0 -119 113z M658 1275q0 -113 112 -113q109 0 109 113q0 108 -110 108q-111 0 -111 -108z" /> +<glyph unicode="æ" horiz-adv-x="1051" d="M107 195q0 304 199.5 526.5t472.5 222.5q104 0 177 -26q-5 -18 -6 -22l-12 -53q-12 -55 -13 -64l-64 -442l-9 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 172 188q27 -16 27 -32q0 -35 -86 -141q-117 -144 -217 -144q-73 0 -73 98q0 30 7 83l10 80l13 88l11 74 q-113 -186 -248.5 -304.5t-235.5 -118.5q-137 0 -137 221zM271 250q0 -130 77 -130q89 0 215 136q170 183 206 430l16 108q-91 51 -184 51q-140 0 -235 -171t-95 -424zM532 1325l113 117q-2 -22 -2 -33q-3 -33 -3 -47q0 -166 91 -166q58 0 115.5 69.5t86.5 176.5 q34 -10 34 -39q0 -94 -98.5 -205.5t-180.5 -111.5q-156 0 -156 239z" /> +<glyph unicode="ç" horiz-adv-x="784" d="M103 274q0 259 176 471t391 212q78 0 133 -26l-114 -137q-80 33 -153 33q-131 0 -206.5 -111t-75.5 -304q0 -136 54.5 -219t142.5 -83q149 0 234 195q22 -24 22 -45q0 -83 -129.5 -184.5t-237.5 -101.5q-104 0 -170.5 83.5t-66.5 216.5zM173 -414q183 14 183 121 q0 87 -135 114l99 179h76l-60 -102q130 -45 130 -154q0 -76 -76.5 -143t-164.5 -67q-36 0 -52 52z" /> +<glyph unicode="è" horiz-adv-x="761" d="M103 262q0 228 172.5 461.5t341.5 233.5q122 0 122 -131q0 -147 -142.5 -287t-347.5 -195q20 -241 190 -241q168 0 275 215q25 -17 25 -40q0 -31 -64 -106q-171 -198 -338 -198q-102 0 -168 81t-66 207zM253 466q29 -10 53 -10q124 0 217 76t93 178q0 117 -119 117 q-86 0 -155.5 -102.5t-88.5 -258.5zM418 1368l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="é" horiz-adv-x="761" d="M103 262q0 228 172.5 461.5t341.5 233.5q122 0 122 -131q0 -147 -142.5 -287t-347.5 -195q20 -241 190 -241q168 0 275 215q25 -17 25 -40q0 -31 -64 -106q-171 -198 -338 -198q-102 0 -168 81t-66 207zM253 466q29 -10 53 -10q124 0 217 76t93 178q0 117 -119 117 q-86 0 -155.5 -102.5t-88.5 -258.5zM472 1086l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="ê" horiz-adv-x="761" d="M103 262q0 228 172.5 461.5t341.5 233.5q122 0 122 -131q0 -147 -142.5 -287t-347.5 -195q20 -241 190 -241q168 0 275 215q25 -17 25 -40q0 -31 -64 -106q-171 -198 -338 -198q-102 0 -168 81t-66 207zM253 466q29 -10 53 -10q124 0 217 76t93 178q0 117 -119 117 q-86 0 -155.5 -102.5t-88.5 -258.5zM368 1086l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="ë" horiz-adv-x="761" d="M103 262q0 228 172.5 461.5t341.5 233.5q122 0 122 -131q0 -147 -142.5 -287t-347.5 -195q20 -241 190 -241q168 0 275 215q25 -17 25 -40q0 -31 -64 -106q-171 -198 -338 -198q-102 0 -168 81t-66 207zM253 466q29 -10 53 -10q124 0 217 76t93 178q0 117 -119 117 q-86 0 -155.5 -102.5t-88.5 -258.5zM347 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM670 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="ì" horiz-adv-x="606" d="M118 690q0 61 112.5 164t179.5 103q75 0 75 -104q0 -20 -8 -82l-9 -67q-1 -8 -11 -81l-41 -286l-10 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 173 188q27 -16 27 -31q0 -36 -87 -142q-117 -144 -217 -144q-73 0 -73 97q0 41 30 252l39 272l10 69l8 55q5 35 5 59 q0 50 -28 50q-78 0 -168 -172q-19 17 -19 34zM248 1368l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z" /> +<glyph unicode="í" horiz-adv-x="606" d="M118 690q0 61 112.5 164t179.5 103q75 0 75 -104q0 -20 -8 -82l-9 -67q-1 -8 -11 -81l-41 -286l-10 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 173 188q27 -16 27 -31q0 -36 -87 -142q-117 -144 -217 -144q-73 0 -73 97q0 41 30 252l39 272l10 69l8 55q5 35 5 59 q0 50 -28 50q-78 0 -168 -172q-19 17 -19 34zM351 1086l113 207q168 71 259 155q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="î" horiz-adv-x="606" d="M118 690q0 61 112.5 164t179.5 103q75 0 75 -104q0 -20 -8 -82l-9 -67q-1 -8 -11 -81l-41 -286l-10 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 173 188q27 -16 27 -31q0 -36 -87 -142q-117 -144 -217 -144q-73 0 -73 97q0 41 30 252l39 272l10 69l8 55q5 35 5 59 q0 50 -28 50q-78 0 -168 -172q-19 17 -19 34zM211 1086l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="ï" horiz-adv-x="606" d="M118 690q0 61 112.5 164t179.5 103q75 0 75 -104q0 -20 -8 -82l-9 -67q-1 -8 -11 -81l-41 -286l-10 -64q-13 -95 -13 -127q0 -43 25 -43q84 0 173 188q27 -16 27 -31q0 -36 -87 -142q-117 -144 -217 -144q-73 0 -73 97q0 41 30 252l39 272l10 69l8 55q5 35 5 59 q0 50 -28 50q-78 0 -168 -172q-19 17 -19 34zM186 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM509 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="ñ" horiz-adv-x="1156" d="M94 690q0 60 109.5 163.5t172.5 103.5q86 0 86 -110q0 -28 -5 -75l-8 -81l-8 -68l-8 -71q118 176 258.5 290.5t239.5 114.5q97 0 97 -135q0 -41 -11 -123l-54 -373q-16 -112 -16 -177q0 -52 28 -52q69 0 170 184q24 -15 24 -31q0 -65 -111.5 -170.5t-181.5 -105.5 q-78 0 -78 112q0 82 21 227l35 242q17 118 17 187q0 79 -55 79q-128 0 -259.5 -173.5t-153.5 -372.5l-27 -240l-149 -61l3 28l8 74l8 70l52 464l6 53q6 62 6 100q0 64 -32 64q-75 0 -161 -170q-23 19 -23 33zM462 1116q0 54 58.5 126.5t102.5 72.5q22 0 51 -18l31 -19 l59 -35l28 -18q34 -21 56 -21q50 0 104 114q26 -9 26 -31q0 -48 -60.5 -123.5t-98.5 -75.5q-32 0 -61 18l-37 24l-54 33l-22 14q-35 21 -60 21q-54 0 -97 -112q-26 11 -26 30z" /> +<glyph unicode="ò" horiz-adv-x="878" d="M103 272q0 240 176 462.5t365 222.5q228 0 228 -298q0 -241 -176 -463t-368 -222q-225 0 -225 298zM256 398q0 -312 193 -312q115 0 192.5 128t77.5 319q0 312 -194 312q-114 0 -191.5 -128.5t-77.5 -318.5zM494 1368l81 81q90 -194 208 -271l-87 -92q-123 79 -202 282z " /> +<glyph unicode="ó" horiz-adv-x="878" d="M103 272q0 240 176 462.5t365 222.5q228 0 228 -298q0 -241 -176 -463t-368 -222q-225 0 -225 298zM256 398q0 -312 193 -312q115 0 192.5 128t77.5 319q0 312 -194 312q-114 0 -191.5 -128.5t-77.5 -318.5zM585 1086l113 207q168 71 259 155q20 -32 20 -53 q0 -103 -392 -309z" /> +<glyph unicode="ô" horiz-adv-x="878" d="M103 272q0 240 176 462.5t365 222.5q228 0 228 -298q0 -241 -176 -463t-368 -222q-225 0 -225 298zM256 398q0 -312 193 -312q115 0 192.5 128t77.5 319q0 312 -194 312q-114 0 -191.5 -128.5t-77.5 -318.5zM439 1086l53 124q91 49 161 156l80 82q54 -177 153 -272 l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="õ" horiz-adv-x="878" d="M103 272q0 240 176 462.5t365 222.5q228 0 228 -298q0 -241 -176 -463t-368 -222q-225 0 -225 298zM256 398q0 -312 193 -312q115 0 192.5 128t77.5 319q0 312 -194 312q-114 0 -191.5 -128.5t-77.5 -318.5zM414 1116q0 54 58.5 126.5t102.5 72.5q22 0 51 -18l31 -19 l59 -35l28 -18q34 -21 56 -21q50 0 104 114q26 -9 26 -31q0 -48 -60.5 -123.5t-98.5 -75.5q-32 0 -61 18l-37 24l-54 33l-22 14q-35 21 -60 21q-54 0 -97 -112q-26 11 -26 30z" /> +<glyph unicode="ö" horiz-adv-x="878" d="M103 272q0 240 176 462.5t365 222.5q228 0 228 -298q0 -241 -176 -463t-368 -222q-225 0 -225 298zM256 398q0 -312 193 -312q115 0 192.5 128t77.5 319q0 312 -194 312q-114 0 -191.5 -128.5t-77.5 -318.5zM440 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z M763 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="÷" d="M97 446l119 123h938l-119 -123h-938zM439 142l147 141q65 -45 117 -141l-147 -142q-45 95 -117 142zM522 867l149 141q65 -49 115 -141l-147 -142q-44 96 -117 142z" /> +<glyph unicode="ø" horiz-adv-x="728" d="M43 28l138 113q78 -83 196 -83q144 0 144 139q0 77 -132 215l-57 59q-125 131 -125 212q0 116 100.5 195t247.5 79q80 0 175 -30l-120 -111q-76 57 -169 57q-109 0 -109 -91q0 -65 121 -191l62 -66q138 -144 138 -232q0 -126 -121 -222.5t-279 -96.5q-112 0 -210 54z M238 -602q118 84 118 190q0 83 -84 145l113 112q98 -72 98 -173q0 -142 -216 -307z" /> +<glyph unicode="ù" horiz-adv-x="1148" d="M88 689q0 62 110.5 165t175.5 103q83 0 83 -114q0 -27 -4 -63l-9 -77l-9 -84l-32 -286q-8 -73 -8 -148q0 -69 51 -69q113 0 255.5 186t168.5 368l34 237l162 55q-28 -116 -42 -207l-60 -418q-5 -38 -8 -64l-7 -55q-6 -51 -6 -72q0 -43 24 -43q85 0 173 188q27 -16 27 -32 q0 -35 -87 -141q-117 -144 -217 -144q-73 0 -73 98q0 31 7 83l11 80q9 65 12 88l10 70q-114 -175 -257 -297t-233 -122q-99 0 -99 132q0 49 13 161l36 328q1 7 5 58l6 65q3 29 3 52q0 58 -33 58q-76 0 -164 -171q-19 15 -19 32zM556 1368l81 81q90 -194 208 -271l-87 -92 q-123 79 -202 282z" /> +<glyph unicode="ú" horiz-adv-x="1148" d="M88 689q0 62 110.5 165t175.5 103q83 0 83 -114q0 -27 -4 -63l-9 -77l-9 -84l-32 -286q-8 -73 -8 -148q0 -69 51 -69q113 0 255.5 186t168.5 368l34 237l162 55q-28 -116 -42 -207l-60 -418q-5 -38 -8 -64l-7 -55q-6 -51 -6 -72q0 -43 24 -43q85 0 173 188q27 -16 27 -32 q0 -35 -87 -141q-117 -144 -217 -144q-73 0 -73 98q0 31 7 83l11 80q9 65 12 88l10 70q-114 -175 -257 -297t-233 -122q-99 0 -99 132q0 49 13 161l36 328q1 7 5 58l6 65q3 29 3 52q0 58 -33 58q-76 0 -164 -171q-19 15 -19 32zM602 1086l113 207q168 71 259 155 q20 -32 20 -53q0 -103 -392 -309z" /> +<glyph unicode="û" horiz-adv-x="1148" d="M88 689q0 62 110.5 165t175.5 103q83 0 83 -114q0 -27 -4 -63l-9 -77l-9 -84l-32 -286q-8 -73 -8 -148q0 -69 51 -69q113 0 255.5 186t168.5 368l34 237l162 55q-28 -116 -42 -207l-60 -418q-5 -38 -8 -64l-7 -55q-6 -51 -6 -72q0 -43 24 -43q85 0 173 188q27 -16 27 -32 q0 -35 -87 -141q-117 -144 -217 -144q-73 0 -73 98q0 31 7 83l11 80q9 65 12 88l10 70q-114 -175 -257 -297t-233 -122q-99 0 -99 132q0 49 13 161l36 328q1 7 5 58l6 65q3 29 3 52q0 58 -33 58q-76 0 -164 -171q-19 15 -19 32zM502 1086l53 124q91 49 161 156l80 82 q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="ü" horiz-adv-x="1148" d="M88 689q0 62 110.5 165t175.5 103q83 0 83 -114q0 -27 -4 -63l-9 -77l-9 -84l-32 -286q-8 -73 -8 -148q0 -69 51 -69q113 0 255.5 186t168.5 368l34 237l162 55q-28 -116 -42 -207l-60 -418q-5 -38 -8 -64l-7 -55q-6 -51 -6 -72q0 -43 24 -43q85 0 173 188q27 -16 27 -32 q0 -35 -87 -141q-117 -144 -217 -144q-73 0 -73 98q0 31 7 83l11 80q9 65 12 88l10 70q-114 -175 -257 -297t-233 -122q-99 0 -99 132q0 49 13 161l36 328q1 7 5 58l6 65q3 29 3 52q0 58 -33 58q-76 0 -164 -171q-19 15 -19 32zM439 1198l119 112q59 -42 89 -112l-114 -112 q-33 73 -94 112zM762 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="ÿ" horiz-adv-x="1110" d="M-60 -811l123 135q94 -42 196 -42q208 0 312 135t174 495l94 486q-101 -184 -211.5 -304t-180.5 -120q-96 0 -106 202l-7 139l-13 283l-3 81q-9 161 -59 161q-78 0 -152 -148q-26 18 -26 39q0 54 97 140t158 86q63 0 89 -56.5t34 -208.5l18 -350q10 -200 64 -200 q81 0 201 185.5t154 364.5l39 204l178 62q-34 -88 -70 -266l-134 -671q-79 -394 -244 -582q-247 -280 -572 -280q-68 0 -153 30zM480 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM803 1198l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="Œ" horiz-adv-x="2055" d="M151 511q0 351 238 612.5t557 261.5q193 0 335 -154l201 114h254q186 0 379 13l-80 -205l-16 -37q-25 -59 -64 -59q-6 0 -15 1q12 51 12 80q0 66 -70 82.5t-347 16.5h-96l-54 -484h195q170 0 301 16q-119 -144 -220 -144q-36 0 -90 6q-134 14 -173 14h-25l-6 -56 q-15 -138 -79.5 -239.5t-210.5 -216.5l259 -23q165 -15 311 -15q223 0 385 143q8 -11 11 -23l2 -9q0 -31 -119 -119q-172 -127 -357 -127q-110 0 -450 25q-205 15 -250 15q-107 -41 -239 -41q-223 0 -351 148t-128 404zM342 611q0 -262 102 -406.5t301 -164.5l148 114 q16 -1 23 -2l45 -4q3 0 19 -4q233 184 233 587q0 254 -110.5 413.5t-286.5 159.5q-198 0 -336 -201.5t-138 -491.5z" /> +<glyph unicode="œ" horiz-adv-x="1357" d="M103 272q0 240 176 462.5t365 222.5q184 0 225 -236q176 236 344 236q122 0 122 -131q0 -147 -142.5 -287t-347.5 -195q22 -241 190 -241t275 215q25 -17 25 -40q0 -32 -64 -106q-171 -198 -338 -198q-191 0 -229 233q-184 -233 -375 -233q-226 0 -226 298zM256 398 q0 -312 193 -312q115 0 192.5 128t77.5 319q0 312 -194 312q-114 0 -191.5 -128.5t-77.5 -318.5zM849 466q6 -10 53 -10q125 0 217.5 76t92.5 177q0 118 -119 118q-82 0 -153 -99.5t-88 -239.5z" /> +<glyph unicode="Ÿ" horiz-adv-x="1321" d="M140 1170q0 61 81.5 138t146.5 77q135 0 252.5 -205t156.5 -508q82 299 250 506t329 207q63 0 122 -40l-113 -155q-43 27 -93 27q-149 0 -304.5 -243.5t-189.5 -529.5l-2 -21q-15 -125 -57.5 -183.5t-171.5 -131.5l310 -14l-117 -116l-545 22l140 124l122 -10 q74 45 109.5 118t50.5 212l2 21q4 38 4 83q0 247 -102.5 478t-212.5 231q-83 0 -137 -126q-31 10 -31 39zM601 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112zM924 1612l119 112q59 -42 89 -112l-114 -112q-33 73 -94 112z" /> +<glyph unicode="ˆ" horiz-adv-x="914" d="M449 1086l53 124q91 49 161 156l80 82q54 -177 153 -272l-84 -90q-91 103 -135 225q-13 -16 -19 -24q-107 -139 -209 -201z" /> +<glyph unicode="˜" horiz-adv-x="914" d="M391 1116q0 54 58.5 126.5t102.5 72.5q22 0 51 -18l31 -19l59 -35l28 -18q34 -21 56 -21q50 0 104 114q26 -9 26 -31q0 -48 -60.5 -123.5t-98.5 -75.5q-32 0 -61 18l-37 24l-54 33l-22 14q-35 21 -60 21q-54 0 -97 -112q-26 11 -26 30z" /> +<glyph unicode=" " horiz-adv-x="931" /> +<glyph unicode=" " horiz-adv-x="1863" /> +<glyph unicode=" " horiz-adv-x="931" /> +<glyph unicode=" " horiz-adv-x="1863" /> +<glyph unicode=" " horiz-adv-x="621" /> +<glyph unicode=" " horiz-adv-x="465" /> +<glyph unicode=" " horiz-adv-x="310" /> +<glyph unicode=" " horiz-adv-x="310" /> +<glyph unicode=" " horiz-adv-x="232" /> +<glyph unicode=" " horiz-adv-x="372" /> +<glyph unicode=" " horiz-adv-x="103" /> +<glyph unicode="‐" horiz-adv-x="741" d="M126 420l130 130h467l-129 -130h-468z" /> +<glyph unicode="‑" horiz-adv-x="741" d="M126 420l130 130h467l-129 -130h-468z" /> +<glyph unicode="‒" horiz-adv-x="741" d="M126 420l130 130h467l-129 -130h-468z" /> +<glyph unicode="–" horiz-adv-x="879" d="M105 465l10 117h776l-10 -117h-776z" /> +<glyph unicode="—" horiz-adv-x="1758" d="M105 465l10 117h1655l-10 -117h-1655z" /> +<glyph unicode="‘" horiz-adv-x="423" d="M193 1038q0 177 270 384l25 -28q-153 -112 -153 -242q0 -111 121 -190l-141 -140q-122 91 -122 216z" /> +<glyph unicode="’" horiz-adv-x="423" d="M188 850q153 111 153 243q0 110 -120 190l140 139q123 -91 123 -215q0 -178 -270 -385z" /> +<glyph unicode="‚" horiz-adv-x="423" d="M58 -334q153 111 153 243q0 110 -121 189l141 140q122 -91 122 -216q0 -178 -270 -384z" /> +<glyph unicode="“" horiz-adv-x="779" d="M193 1038q0 177 270 384l25 -28q-153 -112 -153 -242q0 -111 120 -190l-140 -140q-122 91 -122 216zM549 1038q0 177 270 384l25 -28q-153 -112 -153 -242q0 -111 121 -190l-141 -140q-122 91 -122 216z" /> +<glyph unicode="”" horiz-adv-x="779" d="M188 850q153 111 153 243q0 110 -120 190l140 139q123 -91 123 -215q0 -178 -270 -385zM544 850q154 111 154 243q0 110 -121 190l140 139q123 -91 123 -215q0 -178 -270 -385z" /> +<glyph unicode="„" horiz-adv-x="779" d="M58 -334q153 111 153 243q0 110 -121 189l141 140q122 -91 122 -216q0 -178 -270 -384zM414 -334q153 111 153 243q0 110 -121 189l141 140q122 -91 122 -216q0 -178 -270 -384z" /> +<glyph unicode="•" d="M270 647l418 397q183 -139 323 -397l-412 -399q-126 269 -329 399z" /> +<glyph unicode="…" horiz-adv-x="1758" d="M173 103l148 141q66 -49 115 -141l-146 -142q-45 95 -117 142zM759 103l148 141q66 -50 116 -141l-147 -142l-15 29q-35 70 -102 113zM1345 103l148 141q66 -49 116 -141l-147 -142q-7 10 -15 29q-9 23 -35 50l-43 47q-4 3 -24 16z" /> +<glyph unicode=" " horiz-adv-x="372" /> +<glyph unicode="‹" horiz-adv-x="720" d="M78 406l92 93l544 387l-64 -147l-430 -260q207 -108 364 -337l-92 -94q-145 242 -414 358z" /> +<glyph unicode="›" horiz-adv-x="720" d="M97 48l64 147l430 260q-206 106 -363 337l91 94q145 -241 414 -358l-92 -93z" /> +<glyph unicode=" " horiz-adv-x="465" /> +<glyph unicode="™" horiz-adv-x="1653" d="M204 1251q0 96 143 96l54 -2h42h211l68 -1q66 0 94 40q14 -6 14 -18q0 -97 -139 -97h-29l-50 2h-55l-46 -420q-6 -51 -14.5 -61.5t-55.5 -24.5h148l-66 -58h-266l68 58h60q17 34 22 76l3 35l44 395h-74h-46q-87 0 -118 -37q-12 3 -12 17zM742 707l38 58h51q22 30 36 108 l72 416h-78l49 56h164l135 -445l207 408l124 55q-15 -104 -26 -277l-8 -142q-4 -58 -4 -86q0 -111 47 -111q15 0 41 10q4 -9 4 -12q0 -17 -53 -37t-97 -20q-39 0 -39 77q0 88 14 315l7 125l-223 -435l-54 -39l-147 494l-64 -372q-13 -79 -57 -86l108 -1l-36 -59h-211z" /> +<glyph unicode="◼" horiz-adv-x="955" d="M0 0v955h955v-955h-955z" /> +<glyph unicode="fi" horiz-adv-x="1560" d="M121 773q0 275 229 445q171 127 471 127h597q371 0 371 229q0 80 -55 148l126 120q44 -60 44 -154q0 -197 -177.5 -330.5t-438.5 -133.5h-278l-75 -676l-12 -111q-17 -142 -61.5 -205t-171.5 -123l291 -15l-120 -116l-488 22l129 124l109 -12q121 77 150 315l10 97 l78 700h-170q-419 0 -419 -277q0 -84 47 -171l-163 -156q-23 78 -23 153zM598 -602q118 84 118 190q0 83 -84 145l113 112q98 -72 98 -173q0 -142 -216 -307z" /> +<glyph unicode="fl" horiz-adv-x="725" d="M66 815l117 116h107l21 182l147 49l-25 -231h424l-117 -116h-320l-50 -442q-13 -119 -13 -176q0 -113 77 -113q83 0 172 136q15 -19 15 -34q0 -56 -98.5 -134t-169.5 -78q-142 0 -142 182q0 67 17 217l49 442h-211zM211 -602q118 84 118 190q0 83 -84 145l113 112 q98 -72 98 -173q0 -142 -216 -307z" /> +</font> +</defs></svg>
\ No newline at end of file diff --git a/src/fonts/chancery/apple-chancery-webfont.ttf b/src/fonts/chancery/apple-chancery-webfont.ttf Binary files differnew file mode 100644 index 0000000..8238aa4 --- /dev/null +++ b/src/fonts/chancery/apple-chancery-webfont.ttf diff --git a/src/fonts/chancery/apple-chancery-webfont.woff b/src/fonts/chancery/apple-chancery-webfont.woff Binary files differnew file mode 100644 index 0000000..e476776 --- /dev/null +++ b/src/fonts/chancery/apple-chancery-webfont.woff diff --git a/src/fonts/chancery/apple-chancery-webfont.woff2 b/src/fonts/chancery/apple-chancery-webfont.woff2 Binary files differnew file mode 100644 index 0000000..922dfb3 --- /dev/null +++ b/src/fonts/chancery/apple-chancery-webfont.woff2 diff --git a/src/js/even.js b/src/js/even.js new file mode 100644 index 0000000..5538661 --- /dev/null +++ b/src/js/even.js @@ -0,0 +1,167 @@ +'use strict' + +var Even = {} + +Even.backToTop = function () { + var $backToTop = $('#back-to-top') + + $(window).scroll(function () { + if ($(window).scrollTop() > 100) { + $backToTop.fadeIn(1000) + } else { + $backToTop.fadeOut(1000) + } + }) + + $backToTop.click(function () { + $('body,html').animate({ scrollTop: 0 }) + }) +} + +Even.mobileNavbar = function () { + var $mobileNav = $('#mobile-navbar') + var $mobileNavIcon = $('.mobile-navbar-icon') + var slideout = new Slideout({ + 'panel': document.getElementById('mobile-panel'), + 'menu': document.getElementById('mobile-menu'), + 'padding': 180, + 'tolerance': 70 + }) + slideout.disableTouch() + + $mobileNavIcon.click(function () { + slideout.toggle() + }) + + slideout.on('beforeopen', function () { + $mobileNav.addClass('fixed-open') + $mobileNavIcon.addClass('icon-click').removeClass('icon-out') + }) + + slideout.on('beforeclose', function () { + $mobileNav.removeClass('fixed-open') + $mobileNavIcon.addClass('icon-out').removeClass('icon-click') + }) + + $('#mobile-panel').on('touchend', function () { + slideout.isOpen() && $mobileNavIcon.click() + }) +} + +Even.toc = function () { + var SPACING = 20 + var $toc = $('.post-toc') + var $footer = $('.post-footer') + + if ($toc.length) { + var minScrollTop = $toc.offset().top - SPACING + var maxScrollTop = $footer.offset().top - $toc.height() - SPACING + + var tocState = { + start: { + 'position': 'absolute', + 'top': minScrollTop + }, + process: { + 'position': 'fixed', + 'top': SPACING + }, + end: { + 'position': 'absolute', + 'top': maxScrollTop + } + } + + $(window).scroll(function () { + var scrollTop = $(window).scrollTop() + + if (scrollTop < minScrollTop) { + $toc.css(tocState.start) + } else if (scrollTop > maxScrollTop) { + $toc.css(tocState.end) + } else { + $toc.css(tocState.process) + } + }) + } + + var HEADERFIX = 30 + var $toclink = $('.toc-link') + var $headerlink = $('.headerlink') + + var headerlinkTop = $.map($headerlink, function (link) { + return $(link).offset().top + }) + + $(window).scroll(function () { + var scrollTop = $(window).scrollTop() + + for (var i = 0; i < $toclink.length; i++) { + var isLastOne = i + 1 === $toclink.length + var currentTop = headerlinkTop[i] - HEADERFIX + var nextTop = isLastOne ? Infinity : headerlinkTop[i + 1] - HEADERFIX + + if (currentTop < scrollTop && scrollTop <= nextTop) { + $($toclink[i]).addClass('active') + } else { + $($toclink[i]).removeClass('active') + } + } + }) +} + +Even.fancybox = function () { + if ($.fancybox) { + $('.post').each(function () { + $(this).find('img').each(function () { + $(this).wrap('<a class="fancybox" href="' + this.src + '" title="' + this.alt + '"></a>') + }) + }) + + $('.fancybox').fancybox({ + openEffect: 'elastic', + closeEffect: 'elastic' + }) + } +} + +Even.highlight = function () { + const blocks = document.querySelectorAll('pre code') + for (const block of blocks) { + const classList = block.classList + const rootElement = block.parentElement + const lineCodes = block.innerHTML.split(/\n/).slice(0, -1) + const lineLength = lineCodes.length + + let codeLineHtml = '' + for (let i = 0; i < lineLength; i++) { + codeLineHtml += `<div class="line">${i + 1}</div>` + } + + let codeHtml = '' + for (const lineCode of lineCodes) { + codeHtml += `<div class="line">${lineCode}</div>` + } + + classList.add('highlight') + const figure = document.createElement('figure') + figure.classList = classList + figure.innerHTML = `<table><tbody><tr><td class="gutter"><pre>${codeLineHtml}</pre></td><td class="code"><pre>${codeHtml}</pre></td></tr></tbody></table>` + + rootElement.parentElement.replaceChild(figure, rootElement) + } +} + +Even.beforeToc = function () { + const links = document.querySelectorAll('#TableOfContents a') + for (const link of links) link.classList.add('toc-link') + + for (const num of [1, 2, 3, 4, 5, 6]) { + const headers = document.querySelectorAll('.post-content>h' + num) + for (const header of headers) { + header.innerHTML = `<a href="#${header.id}" class="headerlink" title="${header.innerHTML}"></a>${header.innerHTML}` + } + } +} + +export {Even} diff --git a/src/js/main.js b/src/js/main.js new file mode 100644 index 0000000..f3531b7 --- /dev/null +++ b/src/js/main.js @@ -0,0 +1,14 @@ +import {Even} from './even.js' + +import '../css/style.scss' + +hljs.initHighlighting() +Even.highlight() + +$(document).ready(function () { + Even.backToTop() + Even.mobileNavbar() + Even.beforeToc() + Even.toc() + Even.fancybox() +}) diff --git a/src/package.json b/src/package.json new file mode 100644 index 0000000..5fd8f87 --- /dev/null +++ b/src/package.json @@ -0,0 +1,28 @@ +{ + "name": "even-src", + "version": "1.0.0", + "description": "even source file", + "main": "index.js", + "scripts": { + "start": "webpack" + }, + "author": "ahonn, olOwOlo", + "license": "MIT", + "devDependencies": { + "babel-core": "^6.26.0", + "babel-loader": "^7.1.2", + "babel-plugin-transform-runtime": "^6.23.0", + "babel-preset-es2015": "^6.24.1", + "babel-preset-stage-2": "^6.24.1", + "css-loader": "^0.28.5", + "expose-loader": "^0.7.3", + "extract-text-webpack-plugin": "^3.0.0", + "file-loader": "^0.11.2", + "node-sass": "^4.5.3", + "sass-loader": "^6.0.6", + "style-loader": "^0.18.2", + "uglifyjs-webpack-plugin": "^0.4.6", + "url-loader": "^0.5.9", + "webpack": "^3.5.5" + } +} diff --git a/src/webpack.config.js b/src/webpack.config.js new file mode 100644 index 0000000..5132b33 --- /dev/null +++ b/src/webpack.config.js @@ -0,0 +1,56 @@ +const path = require('path'); +const ExtractTextPlugin = require("extract-text-webpack-plugin"); +const UglifyJSPlugin = require('uglifyjs-webpack-plugin') + +// theme version +const version = 'v2.5.0' + +const extractSass = new ExtractTextPlugin({ + filename: `even.${version}.css` +}); + +module.exports = { + devtool: 'source-map', + entry: { + even: './js/main.js' + }, + output: { + path: path.join(__dirname, '../static/dist'), + filename: `[name].${version}.js` + }, + module: { + rules: [ + { + test: /\.js$/, + exclude: /node_modules/, + loader: 'babel-loader' + }, + { + test: /\.scss$/, + use: extractSass.extract({ + use: [{ + loader: 'css-loader', + options: { + minimize: true + } + }, { + loader: 'sass-loader' + }], + fallback: 'style-loader' + }) + }, + { + test: /\.(woff|woff2|eot|ttf|otf|svg)$/, + use: [ + 'file-loader?name=[path][name].[ext]' + ] + } + ] + }, + plugins: [ + extractSass, + new UglifyJSPlugin({ + sourceMap: true + }) + ] +} |