diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 173e12e..0000000 --- a/.editorconfig +++ /dev/null @@ -1,17 +0,0 @@ -# http://editorconfig.org - -root = true - -[*] -charset = utf-8 -indent_style = space -indent_size = 4 -end_of_line = lf -insert_final_newline = true -trim_trailing_whitespace = true - -[*.hbs] -insert_final_newline = false - -[*.md] -trim_trailing_whitespace = false diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f885d40..0000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,19 +0,0 @@ -Do you need help or have a question? Please come chat in our forum: https://forum.ghost.org 👫. - -If you're filing a bug 🐛, please include the following information: - -### Screenshot - -![]() - -### Steps to Reproduce - - 1. This is the first step - 2. This may be the post content used to cause an issue... - -### Technical details - -* Casper Version: -* Ghost Version: -* Browser Version: -* OS Version: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index 6341f4f..0000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: Test -on: - pull_request: - push: - branches: - - master - - 'renovate/*' -jobs: - test: - runs-on: ubuntu-latest - if: github.event_name == 'push' || (github.event_name == 'pull_request' && !startsWith(github.head_ref, 'renovate/')) - steps: - - uses: actions/checkout@v1 - - run: yarn - - run: yarn test:ci diff --git a/.yarnrc b/.yarnrc deleted file mode 100644 index e46d1b8..0000000 --- a/.yarnrc +++ /dev/null @@ -1,2 +0,0 @@ -version-tag-prefix "" -version-git-message "%s" diff --git a/LICENSE b/LICENSE index 2dfed06..551d195 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2013-2020 Ghost Foundation +Copyright (c) 2013-2021 Ghost Foundation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation diff --git a/README.md b/README.md index 164cbc1..f5b0289 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ The default theme for [Ghost](http://github.com/tryghost/ghost/). This is the la Ghost uses a simple templating language called [Handlebars](http://handlebarsjs.com/) for its themes. -This theme has lots of code comments to help explain what's going on just by reading the code. Once you feel comfortable with how everything works, we also have full [theme API documentation](https://ghost.org/docs/api/handlebars-themes/) which explains every possible Handlebars helper and template. +This theme has lots of code comments to help explain what's going on just by reading the code. Once you feel comfortable with how everything works, we also have full [theme API documentation](https://ghost.org/docs/themes/) which explains every possible Handlebars helper and template. **The main files are:** @@ -66,4 +66,4 @@ You can add your own SVG icons in the same manner. # Copyright & License -Copyright (c) 2013-2020 Ghost Foundation - Released under the [MIT license](LICENSE). +Copyright (c) 2013-2021 Ghost Foundation - Released under the [MIT license](LICENSE). diff --git a/SECURITY.md b/SECURITY.md deleted file mode 100644 index 9fa77b7..0000000 --- a/SECURITY.md +++ /dev/null @@ -1,9 +0,0 @@ -# Reporting Security Vulnerabilities - -Potential security vulnerabilities can be reported directly us at `security@ghost.org`. The Ghost Security Team communicates privately and works in a secured, isolated repository for tracking, testing, and resolving security-related issues. - -The full, up-to-date details of our security policy and procedure can always be found in our documentation: - -https://ghost.org/docs/concepts/security/ - -Please refer to this before emailing us. Thanks for helping make Ghost safe for everyone 🙏. \ No newline at end of file diff --git a/assets/built/casper.js b/assets/built/casper.js index f70f381..ad48a1c 100644 --- a/assets/built/casper.js +++ b/assets/built/casper.js @@ -1,2 +1,2 @@ -!function(r){"use strict";r.fn.fitVids=function(e){var t,n,a={customSelector:null,ignore:null};return document.getElementById("fit-vids-style")||(t=document.head||document.getElementsByTagName("head")[0],(n=document.createElement("div")).innerHTML='

x

',t.appendChild(n.childNodes[1])),e&&r.extend(a,e),this.each(function(){var e=['iframe[src*="player.vimeo.com"]','iframe[src*="youtube.com"]','iframe[src*="youtube-nocookie.com"]','iframe[src*="kickstarter.com"][src*="video.html"]',"object","embed"];a.customSelector&&e.push(a.customSelector);var i=".fitvidsignore";a.ignore&&(i=i+", "+a.ignore);var t=r(this).find(e.join(","));(t=(t=t.not("object object")).not(i)).each(function(){var e,t,n=r(this);0
').parent(".fluid-width-video-wrapper").css("padding-top",100*e+"%"),n.removeAttr("height").removeAttr("width"))})})},r.fn.fitVids._count=0}(window.jQuery||window.Zepto),function(e){e.addEventListener("DOMContentLoaded",function(){e.querySelectorAll(".kg-gallery-image img").forEach(function(e){var t=e.closest(".kg-gallery-image"),n=e.attributes.width.value/e.attributes.height.value;t.style.flex=n+" 1 0%"})})}((window,document)),function(t,n){var i,a,r,o,s,l,d,c=n.querySelector("link[rel=next]");function p(){if(404===this.status)return t.removeEventListener("scroll",m),void t.removeEventListener("resize",f);this.response.querySelectorAll(".post-card").forEach(function(e){i.appendChild(n.importNode(e,!0))});var e=this.response.querySelector("link[rel=next]");e?c.href=e.href:(t.removeEventListener("scroll",m),t.removeEventListener("resize",f)),d=n.documentElement.scrollHeight,o=r=!1}function e(){var e;o||(s+l<=d-a?r=!1:(o=!0,(e=new t.XMLHttpRequest).responseType="document",e.addEventListener("load",p),e.open("GET",c.href),e.send(null)))}function u(){r||t.requestAnimationFrame(e),r=!0}function m(){s=t.scrollY,u()}function f(){l=t.innerHeight,d=n.documentElement.scrollHeight,u()}!c||(i=n.querySelector(".post-feed"))&&(o=r=!(a=300),s=t.scrollY,l=t.innerHeight,d=n.documentElement.scrollHeight,t.addEventListener("scroll",m,{passive:!0}),t.addEventListener("resize",f),u())}(window,document);var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(){var l=/\blang(?:uage)?-(\w+)\b/i,t=0,$=_self.Prism={manual:_self.Prism&&_self.Prism.manual,disableWorkerMessageHandler:_self.Prism&&_self.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof o?new o(e.type,$.util.encode(e.content),e.alias):"Array"===$.util.type(e)?e.map($.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(!(k instanceof s)){u.lastIndex=0;var y=1;if(!(N=u.exec(k))&&g&&v!=t.length-1){if(u.lastIndex=w,!(N=u.exec(e)))break;for(var _=N.index+(f?N[1].length:0),x=N.index+N[0].length,P=v,S=w,j=t.length;P"+a.content+""},!_self.document)return _self.addEventListener&&($.disableWorkerMessageHandler||_self.addEventListener("message",function(e){var t=JSON.parse(e.data),n=t.language,i=t.code,a=t.immediateClose;_self.postMessage($.highlight(i,$.languages[n],n)),a&&_self.close()},!1)),_self.Prism;var e=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return e&&($.filename=e.src,$.manual||e.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame($.highlightAll):window.setTimeout($.highlightAll,16):document.addEventListener("DOMContentLoaded",$.highlightAll))),_self.Prism}();"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism),Prism.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/(^|[^\\])["']/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add("wrap",function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))}),Prism.languages.xml=Prism.languages.markup,Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/[a-z0-9_]+(?=\()/i,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/},Prism.languages.javascript=Prism.languages.extend("clike",{keyword:/\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,number:/\b(?:0[xX][\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|NaN|Infinity)\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,function:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*\()/i,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:/(^|[^\/])\/(?!\/)(\[[^\]\r\n]+]|\\.|[^\/\\\[\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)|[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/i,alias:"function"}}),Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,greedy:!0,inside:{interpolation:{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}}}),Prism.languages.markup&&Prism.languages.insertBefore("markup","tag",{script:{pattern:/()[\s\S]*?(?=<\/script>)/i,lookbehind:!0,inside:Prism.languages.javascript,alias:"language-javascript",greedy:!0}}),Prism.languages.js=Prism.languages.javascript,Prism.languages.c=Prism.languages.extend("clike",{keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/-[>-]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/]/,number:/(?:\b0x[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),Prism.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete Prism.languages.c["class-name"],delete Prism.languages.c.boolean,function(e){var t={variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--?|-=|\+\+?|\+=|!=?|~|\*\*?|\*=|\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\^=?|\|\|?|\|=|\?|:/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\([^)]+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},/\$(?:[\w#?*!@]+|\{[^}]+\})/i]};e.languages.bash={shebang:{pattern:/^#!\s*\/bin\/bash|^#!\s*\/bin\/sh/,alias:"important"},comment:{pattern:/(^|[^"{\\])#.*/,lookbehind:!0},string:[{pattern:/((?:^|[^<])<<\s*)["']?(\w+?)["']?\s*\r?\n(?:[\s\S])*?\r?\n\2/,lookbehind:!0,greedy:!0,inside:t},{pattern:/(["'])(?:\\[\s\S]|\$\([^)]+\)|`[^`]+`|(?!\1)[^\\])*\1/,greedy:!0,inside:t}],variable:t.variable,function:{pattern:/(^|[\s;|&])(?:alias|apropos|apt-get|aptitude|aspell|awk|basename|bash|bc|bg|builtin|bzip2|cal|cat|cd|cfdisk|chgrp|chmod|chown|chroot|chkconfig|cksum|clear|cmp|comm|command|cp|cron|crontab|csplit|cut|date|dc|dd|ddrescue|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|du|egrep|eject|enable|env|ethtool|eval|exec|expand|expect|export|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|getopts|git|grep|groupadd|groupdel|groupmod|groups|gzip|hash|head|help|hg|history|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|jobs|join|kill|killall|less|link|ln|locate|logname|logout|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|make|man|mkdir|mkfifo|mkisofs|mknod|more|most|mount|mtools|mtr|mv|mmv|nano|netstat|nice|nl|nohup|notify-send|npm|nslookup|open|op|passwd|paste|pathchk|ping|pkill|popd|pr|printcap|printenv|printf|ps|pushd|pv|pwd|quota|quotacheck|quotactl|ram|rar|rcp|read|readarray|readonly|reboot|rename|renice|remsync|rev|rm|rmdir|rsync|screen|scp|sdiff|sed|seq|service|sftp|shift|shopt|shutdown|sleep|slocate|sort|source|split|ssh|stat|strace|su|sudo|sum|suspend|sync|tail|tar|tee|test|time|timeout|times|touch|top|traceroute|trap|tr|tsort|tty|type|ulimit|umask|umount|unalias|uname|unexpand|uniq|units|unrar|unshar|uptime|useradd|userdel|usermod|users|uuencode|uudecode|v|vdir|vi|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yes|zip)(?=$|[\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&])(?:let|:|\.|if|then|else|elif|fi|for|break|continue|while|in|case|function|select|do|done|until|echo|exit|return|set|declare)(?=$|[\s;|&])/,lookbehind:!0},boolean:{pattern:/(^|[\s;|&])(?:true|false)(?=$|[\s;|&])/,lookbehind:!0},operator:/&&?|\|\|?|==?|!=?|<<>|<=?|>=?|=~/,punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];]/};var n=t.variable[1].inside;n.string=e.languages.bash.string,n.function=e.languages.bash.function,n.keyword=e.languages.bash.keyword,n.boolean=e.languages.bash.boolean,n.operator=e.languages.bash.operator,n.punctuation=e.languages.bash.punctuation,e.languages.shell=e.languages.bash}(Prism),Prism.languages.cpp=Prism.languages.extend("c",{keyword:/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,boolean:/\b(?:true|false)\b/,operator:/--?|\+\+?|!=?|<{1,2}=?|>{1,2}=?|->|:{1,2}|={1,2}|\^|~|%|&{1,2}|\|\|?|\?|\*|\/|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/}),Prism.languages.insertBefore("cpp","keyword",{"class-name":{pattern:/(class\s+)\w+/i,lookbehind:!0}}),Prism.languages.insertBefore("cpp","string",{"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),Prism.languages.csharp=Prism.languages.extend("clike",{keyword:/\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\b/,string:[{pattern:/@("|')(?:\1\1|\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*?\1/,greedy:!0}],number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)f?/i}),Prism.languages.insertBefore("csharp","keyword",{"generic-method":{pattern:/[a-z0-9_]+\s*<[^>\r\n]+?>\s*(?=\()/i,alias:"function",inside:{keyword:Prism.languages.csharp.keyword,punctuation:/[<>(),.:]/}},preprocessor:{pattern:/(^\s*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(\s*#)\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}}),Prism.languages.dotnet=Prism.languages.csharp,function(e){e.languages.ruby=e.languages.extend("clike",{comment:[/#(?!\{[^\r\n]*?\}).*/,/^=begin(?:\r?\n|\r)(?:.*(?:\r?\n|\r))*?=end/m],keyword:/\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/});var t={pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"tag"},rest:e.languages.ruby}};e.languages.insertBefore("ruby","keyword",{regex:[{pattern:/%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/(^|[^\/])\/(?!\/)(\[.+?]|\\.|[^\/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,lookbehind:!0}}),e.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,constant:/\b[A-Z]\w*(?:[?!]|\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0,inside:{interpolation:t}},{pattern:/("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:t}}]}(Prism),Prism.languages.docker={keyword:{pattern:/(^\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)/im,lookbehind:!0},string:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,comment:/#.*/,punctuation:/---|\.\.\.|[:[\]{}\-,|>?]/},Prism.languages.dockerfile=Prism.languages.docker,Prism.languages.go=Prism.languages.extend("clike",{keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,builtin:/\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\b/,boolean:/\b(?:_|iota|nil|true|false)\b/,operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,number:/(?:\b0x[a-f\d]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[-+]?\d+)?)i?/i,string:{pattern:/(["'`])(\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0}}),delete Prism.languages.go["class-name"],Prism.languages.json={property:/"(?:\\.|[^\\"\r\n])*"(?=\s*:)/i,string:{pattern:/"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,greedy:!0},number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,punctuation:/[{}[\]);,]/,operator:/:/g,boolean:/\b(?:true|false)\b/i,null:/\bnull\b/i},Prism.languages.jsonp=Prism.languages.json,Prism.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},builtin:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,symbol:{pattern:/^[^:=\r\n]+(?=\s*:(?!=))/m,inside:{variable:/\$+(?:[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:[/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,{pattern:/(\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \t])/,lookbehind:!0}],operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},Prism.languages.markdown=Prism.languages.extend("markup",{}),Prism.languages.insertBefore("markdown","prolog",{blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},code:[{pattern:/^(?: {4}|\t).+/m,alias:"keyword"},{pattern:/``.+?``|`[^`\n]+`/,alias:"keyword"}],title:[{pattern:/\w+.*(?:\r?\n|\r)(?:==+|--+)/,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#+.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:/(^|[^\\])(\*\*|__)(?:(?:\r?\n|\r)(?!\r?\n|\r)|.)+?\2/,lookbehind:!0,inside:{punctuation:/^\*\*|^__|\*\*$|__$/}},italic:{pattern:/(^|[^\\])([*_])(?:(?:\r?\n|\r)(?!\r?\n|\r)|.)+?\2/,lookbehind:!0,inside:{punctuation:/^[*_]|[*_]$/}},url:{pattern:/!?\[[^\]]+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)| ?\[[^\]\n]*\])/,inside:{variable:{pattern:/(!?\[)[^\]]+(?=\]$)/,lookbehind:!0},string:{pattern:/"(?:\\.|[^"\\])*"(?=\)$)/}}}}),Prism.languages.markdown.bold.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.italic.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.bold.inside.italic=Prism.languages.markdown.italic,Prism.languages.markdown.italic.inside.bold=Prism.languages.markdown.bold,Prism.languages.properties={comment:/^[ \t]*[#!].*$/m,"attr-value":{pattern:/(^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?: *[=:] *| ))(?:\\(?:\r\n|[\s\S])|[^\\\r\n])+/m,lookbehind:!0},"attr-name":/^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?= *[=:] *| )/m,punctuation:/[=:]/},Prism.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},"triple-quoted-string":{pattern:/("""|''')[\s\S]+?\1/,greedy:!0,alias:"string"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},keyword:/\b(?:as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:True|False|None)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not)\b/,punctuation:/[{}[\];(),.:]/},Prism.languages.vim={string:/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\r\n]|'')*'/,comment:/".*/,function:/\w+(?=\()/,keyword:/\b(?:ab|abbreviate|abc|abclear|abo|aboveleft|al|all|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|ar|args|argu|argument|as|ascii|bad|badd|ba|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|br|brewind|bro|browse|bufdo|b|buffer|buffers|bun|bunload|bw|bwipeout|ca|cabbrev|cabc|cabclear|caddb|caddbuffer|cad|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cgetb|cgetbuffer|cgete|cgetexpr|cg|cgetfile|c|change|changes|chd|chdir|che|checkpath|checkt|checktime|cla|clast|cl|clist|clo|close|cmapc|cmapclear|cnew|cnewer|cn|cnext|cN|cNext|cnf|cnfile|cNfcNfile|cnorea|cnoreabbrev|col|colder|colo|colorscheme|comc|comclear|comp|compiler|conf|confirm|con|continue|cope|copen|co|copy|cpf|cpfile|cp|cprevious|cq|cquit|cr|crewind|cuna|cunabbrev|cu|cunmap|cw|cwindow|debugg|debuggreedy|delc|delcommand|d|delete|delf|delfunction|delm|delmarks|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|di|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|earlier|echoe|echoerr|echom|echomsg|echon|e|edit|el|else|elsei|elseif|em|emenu|endfo|endfor|endf|endfunction|endfun|en|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fina|finally|fin|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|folddoc|folddoclosed|foldd|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|ha|hardcopy|h|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iuna|iunabbrev|iu|iunmap|j|join|ju|jumps|k|keepalt|keepj|keepjumps|kee|keepmarks|laddb|laddbuffer|lad|laddexpr|laddf|laddfile|lan|language|la|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|let|left|lefta|leftabove|lex|lexpr|lf|lfile|lfir|lfirst|lgetb|lgetbuffer|lgete|lgetexpr|lg|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|l|list|ll|lla|llast|lli|llist|lmak|lmake|lm|lmap|lmapc|lmapclear|lnew|lnewer|lne|lnext|lN|lNext|lnf|lnfile|lNf|lNfile|ln|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lpf|lpfile|lp|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|mak|make|ma|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkvie|mkview|mkv|mkvimrc|mod|mode|m|move|mzf|mzfile|mz|mzscheme|nbkey|new|n|next|N|Next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|omapc|omapclear|on|only|o|open|opt|options|ou|ounmap|pc|pclose|ped|pedit|pe|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|p|print|P|Print|profd|profdel|prof|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|pyf|pyfile|py|python|qa|qall|q|quit|quita|quitall|r|read|rec|recover|redi|redir|red|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|rub|ruby|rubyd|rubydo|rubyf|rubyfile|ru|runtime|rv|rviminfo|sal|sall|san|sandbox|sa|sargument|sav|saveas|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sb|sbuffer|scripte|scriptencoding|scrip|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sla|slast|sl|sleep|sm|smagic|sm|smap|smapc|smapclear|sme|smenu|sn|snext|sN|sNext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|sor|sort|so|source|spelld|spelldump|spe|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|sp|split|spr|sprevious|sre|srewind|sta|stag|startg|startgreplace|star|startinsert|startr|startreplace|stj|stjump|st|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tab|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabnew|tabn|tabnext|tabN|tabNext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|ta|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tm|tmenu|tn|tnext|tN|tNext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tu|tunmenu|una|unabbreviate|u|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|verb|verbose|ve|version|vert|vertical|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|vi|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|wa|wall|wh|while|winc|wincmd|windo|winp|winpos|win|winsize|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|w|write|ws|wsverb|wv|wviminfo|X|xa|xall|x|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|XMLent|XMLns|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\b/,builtin:/\b(?:autocmd|acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|t_AB|t_AF|t_al|t_AL|t_bc|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_RI|t_RV|t_Sb|t_se|t_Sf|t_SI|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_WP|t_WS|t_xs|t_ZH|t_ZR)\b/,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?)\b/i,operator:/\|\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\/%?]|\b(?:is(?:not)?)\b/,punctuation:/[{}[\](),;:]/},Prism.languages.yaml={scalar:{pattern:/([\-:]\s*(?:![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\2[^\r\n]+)*)/,lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:/(\s*(?:^|[:\-,[{\r\n?])[ \t]*(?:![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/,lookbehind:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?)?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?)(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,alias:"number"},boolean:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:true|false)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},null:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:null|~)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},string:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)("|')(?:(?!\2)[^\\\r\n]|\\.)*\2(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,greedy:!0},number:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+\.?\d*|\.?\d+)(?:e[+-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im,lookbehind:!0},tag:/![^\s]+/,important:/[&*][\w]+/,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},function(o,s){o.Casper||(o.Casper={}),o.Casper.stickyNavTitle=function(e){var t=s.querySelector(e.navSelector),n=s.querySelector(e.titleSelector),i=o.scrollY,a=!1;function r(){n.getBoundingClientRect().top+o.scrollY+(n.offsetHeight+35)<=i?t.classList.add(e.activeClass):t.classList.remove(e.activeClass),a=!1}o.addEventListener("scroll",function(){i=o.scrollY,function(){a||requestAnimationFrame(r);a=!0}()},{passive:!0}),r()}}(window,document); +!function(r){"use strict";r.fn.fitVids=function(e){var t,n,a={customSelector:null,ignore:null};return document.getElementById("fit-vids-style")||(t=document.head||document.getElementsByTagName("head")[0],(n=document.createElement("div")).innerHTML='

x

',t.appendChild(n.childNodes[1])),e&&r.extend(a,e),this.each(function(){var e=['iframe[src*="player.vimeo.com"]','iframe[src*="youtube.com"]','iframe[src*="youtube-nocookie.com"]','iframe[src*="kickstarter.com"][src*="video.html"]',"object","embed"];a.customSelector&&e.push(a.customSelector);var i=".fitvidsignore";a.ignore&&(i=i+", "+a.ignore);var t=r(this).find(e.join(","));(t=(t=t.not("object object")).not(i)).each(function(){var e,t,n=r(this);0
').parent(".fluid-width-video-wrapper").css("padding-top",100*e+"%"),n.removeAttr("height").removeAttr("width"))})})},r.fn.fitVids._count=0}(window.jQuery||window.Zepto),function(e){e.addEventListener("DOMContentLoaded",function(){e.querySelectorAll(".kg-gallery-image img").forEach(function(e){var t=e.closest(".kg-gallery-image"),n=e.attributes.width.value/e.attributes.height.value;t.style.flex=n+" 1 0%"})})}((window,document)),function(t,n){var i,a,r,o,s,l,d,c=n.querySelector("link[rel=next]");function p(){if(404===this.status)return t.removeEventListener("scroll",m),void t.removeEventListener("resize",f);this.response.querySelectorAll("article.post-card").forEach(function(e){i.appendChild(n.importNode(e,!0))});var e=this.response.querySelector("link[rel=next]");e?c.href=e.href:(t.removeEventListener("scroll",m),t.removeEventListener("resize",f)),d=n.documentElement.scrollHeight,o=r=!1}function e(){var e;o||(s+l<=d-a?r=!1:(o=!0,(e=new t.XMLHttpRequest).responseType="document",e.addEventListener("load",p),e.open("GET",c.href),e.send(null)))}function u(){r||t.requestAnimationFrame(e),r=!0}function m(){s=t.scrollY,u()}function f(){l=t.innerHeight,d=n.documentElement.scrollHeight,u()}!c||(i=n.querySelector(".post-feed"))&&(o=r=!(a=300),s=t.scrollY,l=t.innerHeight,d=n.documentElement.scrollHeight,t.addEventListener("scroll",m,{passive:!0}),t.addEventListener("resize",f),u())}(window,document);var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(){var l=/\blang(?:uage)?-(\w+)\b/i,t=0,$=_self.Prism={manual:_self.Prism&&_self.Prism.manual,disableWorkerMessageHandler:_self.Prism&&_self.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof o?new o(e.type,$.util.encode(e.content),e.alias):"Array"===$.util.type(e)?e.map($.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(!(k instanceof s)){u.lastIndex=0;var y=1;if(!(N=u.exec(k))&&g&&v!=t.length-1){if(u.lastIndex=w,!(N=u.exec(e)))break;for(var _=N.index+(f?N[1].length:0),x=N.index+N[0].length,P=v,S=w,j=t.length;P"+a.content+""},!_self.document)return _self.addEventListener&&($.disableWorkerMessageHandler||_self.addEventListener("message",function(e){var t=JSON.parse(e.data),n=t.language,i=t.code,a=t.immediateClose;_self.postMessage($.highlight(i,$.languages[n],n)),a&&_self.close()},!1)),_self.Prism;var e=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return e&&($.filename=e.src,$.manual||e.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame($.highlightAll):window.setTimeout($.highlightAll,16):document.addEventListener("DOMContentLoaded",$.highlightAll))),_self.Prism}();"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism),Prism.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/(^|[^\\])["']/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add("wrap",function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))}),Prism.languages.xml=Prism.languages.markup,Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/[a-z0-9_]+(?=\()/i,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/},Prism.languages.javascript=Prism.languages.extend("clike",{keyword:/\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,number:/\b(?:0[xX][\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|NaN|Infinity)\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,function:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*\()/i,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:/(^|[^\/])\/(?!\/)(\[[^\]\r\n]+]|\\.|[^\/\\\[\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)|[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/i,alias:"function"}}),Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,greedy:!0,inside:{interpolation:{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}}}),Prism.languages.markup&&Prism.languages.insertBefore("markup","tag",{script:{pattern:/()[\s\S]*?(?=<\/script>)/i,lookbehind:!0,inside:Prism.languages.javascript,alias:"language-javascript",greedy:!0}}),Prism.languages.js=Prism.languages.javascript,Prism.languages.c=Prism.languages.extend("clike",{keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/-[>-]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/]/,number:/(?:\b0x[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),Prism.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete Prism.languages.c["class-name"],delete Prism.languages.c.boolean,function(e){var t={variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--?|-=|\+\+?|\+=|!=?|~|\*\*?|\*=|\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\^=?|\|\|?|\|=|\?|:/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\([^)]+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},/\$(?:[\w#?*!@]+|\{[^}]+\})/i]};e.languages.bash={shebang:{pattern:/^#!\s*\/bin\/bash|^#!\s*\/bin\/sh/,alias:"important"},comment:{pattern:/(^|[^"{\\])#.*/,lookbehind:!0},string:[{pattern:/((?:^|[^<])<<\s*)["']?(\w+?)["']?\s*\r?\n(?:[\s\S])*?\r?\n\2/,lookbehind:!0,greedy:!0,inside:t},{pattern:/(["'])(?:\\[\s\S]|\$\([^)]+\)|`[^`]+`|(?!\1)[^\\])*\1/,greedy:!0,inside:t}],variable:t.variable,function:{pattern:/(^|[\s;|&])(?:alias|apropos|apt-get|aptitude|aspell|awk|basename|bash|bc|bg|builtin|bzip2|cal|cat|cd|cfdisk|chgrp|chmod|chown|chroot|chkconfig|cksum|clear|cmp|comm|command|cp|cron|crontab|csplit|cut|date|dc|dd|ddrescue|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|du|egrep|eject|enable|env|ethtool|eval|exec|expand|expect|export|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|getopts|git|grep|groupadd|groupdel|groupmod|groups|gzip|hash|head|help|hg|history|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|jobs|join|kill|killall|less|link|ln|locate|logname|logout|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|make|man|mkdir|mkfifo|mkisofs|mknod|more|most|mount|mtools|mtr|mv|mmv|nano|netstat|nice|nl|nohup|notify-send|npm|nslookup|open|op|passwd|paste|pathchk|ping|pkill|popd|pr|printcap|printenv|printf|ps|pushd|pv|pwd|quota|quotacheck|quotactl|ram|rar|rcp|read|readarray|readonly|reboot|rename|renice|remsync|rev|rm|rmdir|rsync|screen|scp|sdiff|sed|seq|service|sftp|shift|shopt|shutdown|sleep|slocate|sort|source|split|ssh|stat|strace|su|sudo|sum|suspend|sync|tail|tar|tee|test|time|timeout|times|touch|top|traceroute|trap|tr|tsort|tty|type|ulimit|umask|umount|unalias|uname|unexpand|uniq|units|unrar|unshar|uptime|useradd|userdel|usermod|users|uuencode|uudecode|v|vdir|vi|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yes|zip)(?=$|[\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&])(?:let|:|\.|if|then|else|elif|fi|for|break|continue|while|in|case|function|select|do|done|until|echo|exit|return|set|declare)(?=$|[\s;|&])/,lookbehind:!0},boolean:{pattern:/(^|[\s;|&])(?:true|false)(?=$|[\s;|&])/,lookbehind:!0},operator:/&&?|\|\|?|==?|!=?|<<>|<=?|>=?|=~/,punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];]/};var n=t.variable[1].inside;n.string=e.languages.bash.string,n.function=e.languages.bash.function,n.keyword=e.languages.bash.keyword,n.boolean=e.languages.bash.boolean,n.operator=e.languages.bash.operator,n.punctuation=e.languages.bash.punctuation,e.languages.shell=e.languages.bash}(Prism),Prism.languages.cpp=Prism.languages.extend("c",{keyword:/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,boolean:/\b(?:true|false)\b/,operator:/--?|\+\+?|!=?|<{1,2}=?|>{1,2}=?|->|:{1,2}|={1,2}|\^|~|%|&{1,2}|\|\|?|\?|\*|\/|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/}),Prism.languages.insertBefore("cpp","keyword",{"class-name":{pattern:/(class\s+)\w+/i,lookbehind:!0}}),Prism.languages.insertBefore("cpp","string",{"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),Prism.languages.csharp=Prism.languages.extend("clike",{keyword:/\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\b/,string:[{pattern:/@("|')(?:\1\1|\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*?\1/,greedy:!0}],number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)f?/i}),Prism.languages.insertBefore("csharp","keyword",{"generic-method":{pattern:/[a-z0-9_]+\s*<[^>\r\n]+?>\s*(?=\()/i,alias:"function",inside:{keyword:Prism.languages.csharp.keyword,punctuation:/[<>(),.:]/}},preprocessor:{pattern:/(^\s*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(\s*#)\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}}),Prism.languages.dotnet=Prism.languages.csharp,function(e){e.languages.ruby=e.languages.extend("clike",{comment:[/#(?!\{[^\r\n]*?\}).*/,/^=begin(?:\r?\n|\r)(?:.*(?:\r?\n|\r))*?=end/m],keyword:/\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/});var t={pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"tag"},rest:e.languages.ruby}};e.languages.insertBefore("ruby","keyword",{regex:[{pattern:/%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:t}},{pattern:/(^|[^\/])\/(?!\/)(\[.+?]|\\.|[^\/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,lookbehind:!0}}),e.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,constant:/\b[A-Z]\w*(?:[?!]|\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,greedy:!0,inside:{interpolation:t}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0,inside:{interpolation:t}},{pattern:/("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:t}}]}(Prism),Prism.languages.docker={keyword:{pattern:/(^\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)/im,lookbehind:!0},string:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,comment:/#.*/,punctuation:/---|\.\.\.|[:[\]{}\-,|>?]/},Prism.languages.dockerfile=Prism.languages.docker,Prism.languages.go=Prism.languages.extend("clike",{keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,builtin:/\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\b/,boolean:/\b(?:_|iota|nil|true|false)\b/,operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,number:/(?:\b0x[a-f\d]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[-+]?\d+)?)i?/i,string:{pattern:/(["'`])(\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0}}),delete Prism.languages.go["class-name"],Prism.languages.json={property:/"(?:\\.|[^\\"\r\n])*"(?=\s*:)/i,string:{pattern:/"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,greedy:!0},number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,punctuation:/[{}[\]);,]/,operator:/:/g,boolean:/\b(?:true|false)\b/i,null:/\bnull\b/i},Prism.languages.jsonp=Prism.languages.json,Prism.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},builtin:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,symbol:{pattern:/^[^:=\r\n]+(?=\s*:(?!=))/m,inside:{variable:/\$+(?:[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:[/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,{pattern:/(\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \t])/,lookbehind:!0}],operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},Prism.languages.markdown=Prism.languages.extend("markup",{}),Prism.languages.insertBefore("markdown","prolog",{blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},code:[{pattern:/^(?: {4}|\t).+/m,alias:"keyword"},{pattern:/``.+?``|`[^`\n]+`/,alias:"keyword"}],title:[{pattern:/\w+.*(?:\r?\n|\r)(?:==+|--+)/,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#+.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:/(^|[^\\])(\*\*|__)(?:(?:\r?\n|\r)(?!\r?\n|\r)|.)+?\2/,lookbehind:!0,inside:{punctuation:/^\*\*|^__|\*\*$|__$/}},italic:{pattern:/(^|[^\\])([*_])(?:(?:\r?\n|\r)(?!\r?\n|\r)|.)+?\2/,lookbehind:!0,inside:{punctuation:/^[*_]|[*_]$/}},url:{pattern:/!?\[[^\]]+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)| ?\[[^\]\n]*\])/,inside:{variable:{pattern:/(!?\[)[^\]]+(?=\]$)/,lookbehind:!0},string:{pattern:/"(?:\\.|[^"\\])*"(?=\)$)/}}}}),Prism.languages.markdown.bold.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.italic.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.bold.inside.italic=Prism.languages.markdown.italic,Prism.languages.markdown.italic.inside.bold=Prism.languages.markdown.bold,Prism.languages.properties={comment:/^[ \t]*[#!].*$/m,"attr-value":{pattern:/(^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?: *[=:] *| ))(?:\\(?:\r\n|[\s\S])|[^\\\r\n])+/m,lookbehind:!0},"attr-name":/^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?= *[=:] *| )/m,punctuation:/[=:]/},Prism.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},"triple-quoted-string":{pattern:/("""|''')[\s\S]+?\1/,greedy:!0,alias:"string"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},keyword:/\b(?:as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:True|False|None)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not)\b/,punctuation:/[{}[\];(),.:]/},Prism.languages.vim={string:/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\r\n]|'')*'/,comment:/".*/,function:/\w+(?=\()/,keyword:/\b(?:ab|abbreviate|abc|abclear|abo|aboveleft|al|all|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|ar|args|argu|argument|as|ascii|bad|badd|ba|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|br|brewind|bro|browse|bufdo|b|buffer|buffers|bun|bunload|bw|bwipeout|ca|cabbrev|cabc|cabclear|caddb|caddbuffer|cad|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cgetb|cgetbuffer|cgete|cgetexpr|cg|cgetfile|c|change|changes|chd|chdir|che|checkpath|checkt|checktime|cla|clast|cl|clist|clo|close|cmapc|cmapclear|cnew|cnewer|cn|cnext|cN|cNext|cnf|cnfile|cNfcNfile|cnorea|cnoreabbrev|col|colder|colo|colorscheme|comc|comclear|comp|compiler|conf|confirm|con|continue|cope|copen|co|copy|cpf|cpfile|cp|cprevious|cq|cquit|cr|crewind|cuna|cunabbrev|cu|cunmap|cw|cwindow|debugg|debuggreedy|delc|delcommand|d|delete|delf|delfunction|delm|delmarks|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|di|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|earlier|echoe|echoerr|echom|echomsg|echon|e|edit|el|else|elsei|elseif|em|emenu|endfo|endfor|endf|endfunction|endfun|en|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fina|finally|fin|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|folddoc|folddoclosed|foldd|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|ha|hardcopy|h|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iuna|iunabbrev|iu|iunmap|j|join|ju|jumps|k|keepalt|keepj|keepjumps|kee|keepmarks|laddb|laddbuffer|lad|laddexpr|laddf|laddfile|lan|language|la|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|let|left|lefta|leftabove|lex|lexpr|lf|lfile|lfir|lfirst|lgetb|lgetbuffer|lgete|lgetexpr|lg|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|l|list|ll|lla|llast|lli|llist|lmak|lmake|lm|lmap|lmapc|lmapclear|lnew|lnewer|lne|lnext|lN|lNext|lnf|lnfile|lNf|lNfile|ln|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lpf|lpfile|lp|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|mak|make|ma|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkvie|mkview|mkv|mkvimrc|mod|mode|m|move|mzf|mzfile|mz|mzscheme|nbkey|new|n|next|N|Next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|omapc|omapclear|on|only|o|open|opt|options|ou|ounmap|pc|pclose|ped|pedit|pe|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|p|print|P|Print|profd|profdel|prof|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|pyf|pyfile|py|python|qa|qall|q|quit|quita|quitall|r|read|rec|recover|redi|redir|red|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|rub|ruby|rubyd|rubydo|rubyf|rubyfile|ru|runtime|rv|rviminfo|sal|sall|san|sandbox|sa|sargument|sav|saveas|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sb|sbuffer|scripte|scriptencoding|scrip|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sla|slast|sl|sleep|sm|smagic|sm|smap|smapc|smapclear|sme|smenu|sn|snext|sN|sNext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|sor|sort|so|source|spelld|spelldump|spe|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|sp|split|spr|sprevious|sre|srewind|sta|stag|startg|startgreplace|star|startinsert|startr|startreplace|stj|stjump|st|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tab|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabnew|tabn|tabnext|tabN|tabNext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|ta|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tm|tmenu|tn|tnext|tN|tNext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tu|tunmenu|una|unabbreviate|u|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|verb|verbose|ve|version|vert|vertical|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|vi|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|wa|wall|wh|while|winc|wincmd|windo|winp|winpos|win|winsize|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|w|write|ws|wsverb|wv|wviminfo|X|xa|xall|x|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|XMLent|XMLns|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\b/,builtin:/\b(?:autocmd|acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|t_AB|t_AF|t_al|t_AL|t_bc|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_RI|t_RV|t_Sb|t_se|t_Sf|t_SI|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_WP|t_WS|t_xs|t_ZH|t_ZR)\b/,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?)\b/i,operator:/\|\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\/%?]|\b(?:is(?:not)?)\b/,punctuation:/[{}[\](),;:]/},Prism.languages.yaml={scalar:{pattern:/([\-:]\s*(?:![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\2[^\r\n]+)*)/,lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:/(\s*(?:^|[:\-,[{\r\n?])[ \t]*(?:![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/,lookbehind:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?)?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?)(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,alias:"number"},boolean:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:true|false)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},null:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:null|~)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},string:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)("|')(?:(?!\2)[^\\\r\n]|\\.)*\2(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,greedy:!0},number:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+\.?\d*|\.?\d+)(?:e[+-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im,lookbehind:!0},tag:/![^\s]+/,important:/[&*][\w]+/,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./}; //# sourceMappingURL=casper.js.map \ No newline at end of file diff --git a/assets/built/casper.js.map b/assets/built/casper.js.map index dfd2baa..7a96923 100644 --- a/assets/built/casper.js.map +++ b/assets/built/casper.js.map @@ -1 +1 @@ -{"version":3,"sources":["jquery.fitvids.js","gallery-card.js","infinite-scroll.js","prism.js","sticky-nav-title.js"],"names":["$","fn","fitVids","options","head","div","settings","customSelector","ignore","document","getElementById","getElementsByTagName","createElement","innerHTML","appendChild","childNodes","extend","this","each","selectors","push","ignoreList","$allVideos","find","join","not","aspectRatio","videoName","$this","parents","length","tagName","toLowerCase","parent","css","isNaN","attr","parseInt","height","width","_count","wrap","removeAttr","window","jQuery","Zepto","addEventListener","querySelectorAll","forEach","image","container","closest","ratio","attributes","value","style","flex","feedElement","buffer","ticking","loading","lastScrollY","lastWindowHeight","lastDocumentHeight","nextElement","querySelector","onPageLoad","status","removeEventListener","onScroll","onResize","response","item","importNode","resNextElement","href","documentElement","scrollHeight","onUpdate","xhr","XMLHttpRequest","responseType","open","send","requestTick","requestAnimationFrame","scrollY","innerHeight","passive","_self","WorkerGlobalScope","self","Prism","e","t","n","manual","disableWorkerMessageHandler","util","encode","r","type","content","alias","map","replace","Object","prototype","toString","call","match","objId","__id","defineProperty","clone","a","i","hasOwnProperty","languages","insertBefore","arguments","l","o","s","DFS","plugins","highlightAll","highlightAllUnder","callback","selector","hooks","run","elements","highlightElement","test","className","parentNode","nodeName","g","u","element","language","grammar","code","textContent","Worker","filename","onmessage","highlightedCode","data","postMessage","JSON","stringify","immediateClose","highlight","tokenize","matchGrammar","Token","c","v","h","f","inside","d","lookbehind","m","greedy","p","y","pattern","global","RegExp","source","b","k","w","lastIndex","j","_","exec","P","index","A","x","O","I","slice","N","S","C","E","Array","splice","apply","rest","all","add","tag","classes","keys","parse","close","currentScript","pop","src","hasAttribute","readyState","setTimeout","module","exports","markup","comment","prolog","doctype","cdata","punctuation","namespace","attr-value","attr-name","entity","title","xml","html","mathml","svg","clike","string","class-name","keyword","boolean","function","number","operator","javascript","regex","function-variable","template-string","interpolation","interpolation-punctuation","script","js","macro","directive","constant","variable","bash","shebang","shell","cpp","raw-string","csharp","generic-method","preprocessor","dotnet","ruby","delimiter","symbol","builtin","docker","dockerfile","go","json","property","null","jsonp","makefile","markdown","blockquote","hr","list","url-reference","bold","italic","url","properties","python","triple-quoted-string","vim","yaml","scalar","key","datetime","important","Casper","stickyNavTitle","nav","navSelector","titleSelector","update","getBoundingClientRect","top","offsetHeight","classList","activeClass","remove"],"mappings":"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","file":"casper.js","sourcesContent":["/*jshint browser:true */\n/*!\n* FitVids 1.3\n*\n*\n* Copyright 2017, Chris Coyier + Dave Rupert + Ghost Foundation\n* This is an unofficial release, ported by John O'Nolan\n* Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/\n* Released under the MIT license\n*\n*/\n\n;(function( $ ){\n\n 'use strict';\n\n $.fn.fitVids = function( options ) {\n var settings = {\n customSelector: null,\n ignore: null\n };\n\n if(!document.getElementById('fit-vids-style')) {\n // appendStyles: https://github.com/toddmotto/fluidvids/blob/master/dist/fluidvids.js\n var head = document.head || document.getElementsByTagName('head')[0];\n var css = '.fluid-width-video-container{flex-grow: 1;width:100%;}.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}';\n var div = document.createElement(\"div\");\n div.innerHTML = '

x

';\n head.appendChild(div.childNodes[1]);\n }\n\n if ( options ) {\n $.extend( settings, options );\n }\n\n return this.each(function(){\n var selectors = [\n 'iframe[src*=\"player.vimeo.com\"]',\n 'iframe[src*=\"youtube.com\"]',\n 'iframe[src*=\"youtube-nocookie.com\"]',\n 'iframe[src*=\"kickstarter.com\"][src*=\"video.html\"]',\n 'object',\n 'embed'\n ];\n\n if (settings.customSelector) {\n selectors.push(settings.customSelector);\n }\n\n var ignoreList = '.fitvidsignore';\n\n if(settings.ignore) {\n ignoreList = ignoreList + ', ' + settings.ignore;\n }\n\n var $allVideos = $(this).find(selectors.join(','));\n $allVideos = $allVideos.not('object object'); // SwfObj conflict patch\n $allVideos = $allVideos.not(ignoreList); // Disable FitVids on this video.\n\n $allVideos.each(function(){\n var $this = $(this);\n if($this.parents(ignoreList).length > 0) {\n return; // Disable FitVids on this video.\n }\n if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; }\n if ((!$this.css('height') && !$this.css('width')) && (isNaN($this.attr('height')) || isNaN($this.attr('width'))))\n {\n $this.attr('height', 9);\n $this.attr('width', 16);\n }\n var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(),\n width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(),\n aspectRatio = height / width;\n if(!$this.attr('name')){\n var videoName = 'fitvid' + $.fn.fitVids._count;\n $this.attr('name', videoName);\n $.fn.fitVids._count++;\n }\n $this.wrap('
').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+'%');\n $this.removeAttr('height').removeAttr('width');\n });\n });\n };\n\n // Internal counter for unique video names.\n $.fn.fitVids._count = 0;\n\n// Works with either jQuery or Zepto\n})( window.jQuery || window.Zepto );\n","/* eslint-env browser */\n\n/**\n * Gallery card support\n * Used on any individual post/page\n *\n * Detects when a gallery card has been used and applies sizing to make sure\n * the display matches what is seen in the editor.\n */\n\n(function (window, document) {\n var resizeImagesInGalleries = function resizeImagesInGalleries() {\n var images = document.querySelectorAll('.kg-gallery-image img');\n images.forEach(function (image) {\n var container = image.closest('.kg-gallery-image');\n var width = image.attributes.width.value;\n var height = image.attributes.height.value;\n var ratio = width / height;\n container.style.flex = ratio + ' 1 0%';\n });\n };\n\n document.addEventListener('DOMContentLoaded', resizeImagesInGalleries);\n})(window, document);\n","/* eslint-env browser */\n\n/**\n * Infinite Scroll\n * Used on all pages where there is a list of posts (homepage, tag index, etc).\n *\n * When the page is scrolled to 300px from the bottom, the next page of posts\n * is fetched by following the the that is output\n * by {{ghost_head}}.\n *\n * The individual post items are extracted from the fetched pages by looking for\n * a wrapper element with the class \"post-card\". Any found elements are appended\n * to the element with the class \"post-feed\" in the currently viewed page.\n */\n\n(function (window, document) {\n // next link element\n var nextElement = document.querySelector('link[rel=next]');\n if (!nextElement) {\n return;\n }\n\n // post feed element\n var feedElement = document.querySelector('.post-feed');\n if (!feedElement) {\n return;\n }\n\n var buffer = 300;\n\n var ticking = false;\n var loading = false;\n\n var lastScrollY = window.scrollY;\n var lastWindowHeight = window.innerHeight;\n var lastDocumentHeight = document.documentElement.scrollHeight;\n\n function onPageLoad() {\n if (this.status === 404) {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n return;\n }\n\n // append contents\n var postElements = this.response.querySelectorAll('.post-card');\n postElements.forEach(function (item) {\n // document.importNode is important, without it the item's owner\n // document will be different which can break resizing of\n // `object-fit: cover` images in Safari\n feedElement.appendChild(document.importNode(item, true));\n });\n\n // set next link\n var resNextElement = this.response.querySelector('link[rel=next]');\n if (resNextElement) {\n nextElement.href = resNextElement.href;\n } else {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n }\n\n // sync status\n lastDocumentHeight = document.documentElement.scrollHeight;\n ticking = false;\n loading = false;\n }\n\n function onUpdate() {\n // return if already loading\n if (loading) {\n return;\n }\n\n // return if not scroll to the bottom\n if (lastScrollY + lastWindowHeight <= lastDocumentHeight - buffer) {\n ticking = false;\n return;\n }\n\n loading = true;\n\n var xhr = new window.XMLHttpRequest();\n xhr.responseType = 'document';\n\n xhr.addEventListener('load', onPageLoad);\n\n xhr.open('GET', nextElement.href);\n xhr.send(null);\n }\n\n function requestTick() {\n ticking || window.requestAnimationFrame(onUpdate);\n ticking = true;\n }\n\n function onScroll() {\n lastScrollY = window.scrollY;\n requestTick();\n }\n\n function onResize() {\n lastWindowHeight = window.innerHeight;\n lastDocumentHeight = document.documentElement.scrollHeight;\n requestTick();\n }\n\n window.addEventListener('scroll', onScroll, {passive: true});\n window.addEventListener('resize', onResize);\n\n requestTick();\n})(window, document);\n","/* PrismJS 1.12.2\nhttp://prismjs.com/download.html#themes=prism-okaidia&languages=markup+clike+javascript+c+bash+cpp+csharp+ruby+docker+go+json+makefile+markdown+properties+python+vim+yaml */\nvar _self=\"undefined\"!=typeof window?window:\"undefined\"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(){var e=/\\blang(?:uage)?-(\\w+)\\b/i,t=0,n=_self.Prism={manual:_self.Prism&&_self.Prism.manual,disableWorkerMessageHandler:_self.Prism&&_self.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof r?new r(e.type,n.util.encode(e.content),e.alias):\"Array\"===n.util.type(e)?e.map(n.util.encode):e.replace(/&/g,\"&\").replace(/e.length)return;if(!(w instanceof s)){h.lastIndex=0;var _=h.exec(w),j=1;if(!_&&m&&b!=t.length-1){if(h.lastIndex=k,_=h.exec(e),!_)break;for(var P=_.index+(d?_[1].length:0),A=_.index+_[0].length,x=b,O=k,I=t.length;I>x&&(A>O||!t[x].type&&!t[x-1].greedy);++x)O+=t[x].length,P>=O&&(++b,k=O);if(t[b]instanceof s||t[x-1].greedy)continue;j=x-b,w=e.slice(k,O),_.index-=k}if(_){d&&(p=_[1]?_[1].length:0);var P=_.index+p,_=_[0].slice(p),A=P+_.length,N=w.slice(0,P),S=w.slice(A),C=[b,j];N&&(++b,k+=N.length,C.push(N));var E=new s(u,f?n.tokenize(_,f):_,y,_,m);if(C.push(E),S&&C.push(S),Array.prototype.splice.apply(t,C),1!=j&&n.matchGrammar(e,t,r,b,k,!0,u),l)break}else if(l)break}}}}},tokenize:function(e,t){var r=[e],a=t.rest;if(a){for(var i in a)t[i]=a[i];delete t.rest}return n.matchGrammar(e,r,t,0,0,!1),r},hooks:{all:{},add:function(e,t){var r=n.hooks.all;r[e]=r[e]||[],r[e].push(t)},run:function(e,t){var r=n.hooks.all[e];if(r&&r.length)for(var a,i=0;a=r[i++];)a(t)}}},r=n.Token=function(e,t,n,r,a){this.type=e,this.content=t,this.alias=n,this.length=0|(r||\"\").length,this.greedy=!!a};if(r.stringify=function(e,t,a){if(\"string\"==typeof e)return e;if(\"Array\"===n.util.type(e))return e.map(function(n){return r.stringify(n,t,e)}).join(\"\");var i={type:e.type,content:r.stringify(e.content,t,a),tag:\"span\",classes:[\"token\",e.type],attributes:{},language:t,parent:a};if(e.alias){var l=\"Array\"===n.util.type(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(i.classes,l)}n.hooks.run(\"wrap\",i);var o=Object.keys(i.attributes).map(function(e){return e+'=\"'+(i.attributes[e]||\"\").replace(/\"/g,\""\")+'\"'}).join(\" \");return\"<\"+i.tag+' class=\"'+i.classes.join(\" \")+'\"'+(o?\" \"+o:\"\")+\">\"+i.content+\"\"},!_self.document)return _self.addEventListener?(n.disableWorkerMessageHandler||_self.addEventListener(\"message\",function(e){var t=JSON.parse(e.data),r=t.language,a=t.code,i=t.immediateClose;_self.postMessage(n.highlight(a,n.languages[r],r)),i&&_self.close()},!1),_self.Prism):_self.Prism;var a=document.currentScript||[].slice.call(document.getElementsByTagName(\"script\")).pop();return a&&(n.filename=a.src,n.manual||a.hasAttribute(\"data-manual\")||(\"loading\"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(n.highlightAll):window.setTimeout(n.highlightAll,16):document.addEventListener(\"DOMContentLoaded\",n.highlightAll))),_self.Prism}();\"undefined\"!=typeof module&&module.exports&&(module.exports=Prism),\"undefined\"!=typeof global&&(global.Prism=Prism);\nPrism.languages.markup={comment://,prolog:/<\\?[\\s\\S]+?\\?>/,doctype://i,cdata://i,tag:{pattern:/<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s+[^\\s>\\/=]+(?:=(?:(\"|')(?:\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1|[^\\s'\">=]+))?)*\\s*\\/?>/i,inside:{tag:{pattern:/^<\\/?[^\\s>\\/]+/i,inside:{punctuation:/^<\\/?/,namespace:/^[^\\s>\\/:]+:/}},\"attr-value\":{pattern:/=(?:(\"|')(?:\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1|[^\\s'\">=]+)/i,inside:{punctuation:[/^=/,{pattern:/(^|[^\\\\])[\"']/,lookbehind:!0}]}},punctuation:/\\/?>/,\"attr-name\":{pattern:/[^\\s>\\/]+/,inside:{namespace:/^[^\\s>\\/:]+:/}}}},entity:/&#?[\\da-z]{1,8};/i},Prism.languages.markup.tag.inside[\"attr-value\"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add(\"wrap\",function(a){\"entity\"===a.type&&(a.attributes.title=a.content.replace(/&/,\"&\"))}),Prism.languages.xml=Prism.languages.markup,Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup;\nPrism.languages.clike={comment:[{pattern:/(^|[^\\\\])\\/\\*[\\s\\S]*?(?:\\*\\/|$)/,lookbehind:!0},{pattern:/(^|[^\\\\:])\\/\\/.*/,lookbehind:!0}],string:{pattern:/([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0},\"class-name\":{pattern:/((?:\\b(?:class|interface|extends|implements|trait|instanceof|new)\\s+)|(?:catch\\s+\\())[\\w.\\\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\\\]/}},keyword:/\\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\\b/,\"boolean\":/\\b(?:true|false)\\b/,\"function\":/[a-z0-9_]+(?=\\()/i,number:/\\b0x[\\da-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[+-]?\\d+)?/i,operator:/--?|\\+\\+?|!=?=?|<=?|>=?|==?=?|&&?|\\|\\|?|\\?|\\*|\\/|~|\\^|%/,punctuation:/[{}[\\];(),.:]/};\nPrism.languages.javascript=Prism.languages.extend(\"clike\",{keyword:/\\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\\b/,number:/\\b(?:0[xX][\\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|NaN|Infinity)\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:[Ee][+-]?\\d+)?/,\"function\":/[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*\\()/i,operator:/-[-=]?|\\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\\|[|=]?|\\*\\*?=?|\\/=?|~|\\^=?|%=?|\\?|\\.{3}/}),Prism.languages.insertBefore(\"javascript\",\"keyword\",{regex:{pattern:/(^|[^\\/])\\/(?!\\/)(\\[[^\\]\\r\\n]+]|\\\\.|[^\\/\\\\\\[\\r\\n])+\\/[gimyu]{0,5}(?=\\s*($|[\\r\\n,.;})]))/,lookbehind:!0,greedy:!0},\"function-variable\":{pattern:/[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*=\\s*(?:function\\b|(?:\\([^()]*\\)|[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*)\\s*=>))/i,alias:\"function\"}}),Prism.languages.insertBefore(\"javascript\",\"string\",{\"template-string\":{pattern:/`(?:\\\\[\\s\\S]|[^\\\\`])*`/,greedy:!0,inside:{interpolation:{pattern:/\\$\\{[^}]+\\}/,inside:{\"interpolation-punctuation\":{pattern:/^\\$\\{|\\}$/,alias:\"punctuation\"},rest:Prism.languages.javascript}},string:/[\\s\\S]+/}}}),Prism.languages.markup&&Prism.languages.insertBefore(\"markup\",\"tag\",{script:{pattern:/()[\\s\\S]*?(?=<\\/script>)/i,lookbehind:!0,inside:Prism.languages.javascript,alias:\"language-javascript\",greedy:!0}}),Prism.languages.js=Prism.languages.javascript;\nPrism.languages.c=Prism.languages.extend(\"clike\",{keyword:/\\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\\b/,operator:/-[>-]?|\\+\\+?|!=?|<>?=?|==?|&&?|\\|\\|?|[~^%?*\\/]/,number:/(?:\\b0x[\\da-f]+|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[+-]?\\d+)?)[ful]*/i}),Prism.languages.insertBefore(\"c\",\"string\",{macro:{pattern:/(^\\s*)#\\s*[a-z]+(?:[^\\r\\n\\\\]|\\\\(?:\\r\\n|[\\s\\S]))*/im,lookbehind:!0,alias:\"property\",inside:{string:{pattern:/(#\\s*include\\s*)(?:<.+?>|(\"|')(?:\\\\?.)+?\\2)/,lookbehind:!0},directive:{pattern:/(#\\s*)\\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\\b/,lookbehind:!0,alias:\"keyword\"}}},constant:/\\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\\b/}),delete Prism.languages.c[\"class-name\"],delete Prism.languages.c[\"boolean\"];\n!function(e){var t={variable:[{pattern:/\\$?\\(\\([\\s\\S]+?\\)\\)/,inside:{variable:[{pattern:/(^\\$\\(\\([\\s\\S]+)\\)\\)/,lookbehind:!0},/^\\$\\(\\(/],number:/\\b0x[\\dA-Fa-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:[Ee]-?\\d+)?/,operator:/--?|-=|\\+\\+?|\\+=|!=?|~|\\*\\*?|\\*=|\\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\\^=?|\\|\\|?|\\|=|\\?|:/,punctuation:/\\(\\(?|\\)\\)?|,|;/}},{pattern:/\\$\\([^)]+\\)|`[^`]+`/,greedy:!0,inside:{variable:/^\\$\\(|^`|\\)$|`$/}},/\\$(?:[\\w#?*!@]+|\\{[^}]+\\})/i]};e.languages.bash={shebang:{pattern:/^#!\\s*\\/bin\\/bash|^#!\\s*\\/bin\\/sh/,alias:\"important\"},comment:{pattern:/(^|[^\"{\\\\])#.*/,lookbehind:!0},string:[{pattern:/((?:^|[^<])<<\\s*)[\"']?(\\w+?)[\"']?\\s*\\r?\\n(?:[\\s\\S])*?\\r?\\n\\2/,lookbehind:!0,greedy:!0,inside:t},{pattern:/([\"'])(?:\\\\[\\s\\S]|\\$\\([^)]+\\)|`[^`]+`|(?!\\1)[^\\\\])*\\1/,greedy:!0,inside:t}],variable:t.variable,\"function\":{pattern:/(^|[\\s;|&])(?:alias|apropos|apt-get|aptitude|aspell|awk|basename|bash|bc|bg|builtin|bzip2|cal|cat|cd|cfdisk|chgrp|chmod|chown|chroot|chkconfig|cksum|clear|cmp|comm|command|cp|cron|crontab|csplit|cut|date|dc|dd|ddrescue|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|du|egrep|eject|enable|env|ethtool|eval|exec|expand|expect|export|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|getopts|git|grep|groupadd|groupdel|groupmod|groups|gzip|hash|head|help|hg|history|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|jobs|join|kill|killall|less|link|ln|locate|logname|logout|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|make|man|mkdir|mkfifo|mkisofs|mknod|more|most|mount|mtools|mtr|mv|mmv|nano|netstat|nice|nl|nohup|notify-send|npm|nslookup|open|op|passwd|paste|pathchk|ping|pkill|popd|pr|printcap|printenv|printf|ps|pushd|pv|pwd|quota|quotacheck|quotactl|ram|rar|rcp|read|readarray|readonly|reboot|rename|renice|remsync|rev|rm|rmdir|rsync|screen|scp|sdiff|sed|seq|service|sftp|shift|shopt|shutdown|sleep|slocate|sort|source|split|ssh|stat|strace|su|sudo|sum|suspend|sync|tail|tar|tee|test|time|timeout|times|touch|top|traceroute|trap|tr|tsort|tty|type|ulimit|umask|umount|unalias|uname|unexpand|uniq|units|unrar|unshar|uptime|useradd|userdel|usermod|users|uuencode|uudecode|v|vdir|vi|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yes|zip)(?=$|[\\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\\s;|&])(?:let|:|\\.|if|then|else|elif|fi|for|break|continue|while|in|case|function|select|do|done|until|echo|exit|return|set|declare)(?=$|[\\s;|&])/,lookbehind:!0},\"boolean\":{pattern:/(^|[\\s;|&])(?:true|false)(?=$|[\\s;|&])/,lookbehind:!0},operator:/&&?|\\|\\|?|==?|!=?|<<>|<=?|>=?|=~/,punctuation:/\\$?\\(\\(?|\\)\\)?|\\.\\.|[{}[\\];]/};var a=t.variable[1].inside;a.string=e.languages.bash.string,a[\"function\"]=e.languages.bash[\"function\"],a.keyword=e.languages.bash.keyword,a.boolean=e.languages.bash.boolean,a.operator=e.languages.bash.operator,a.punctuation=e.languages.bash.punctuation,e.languages.shell=e.languages.bash}(Prism);\nPrism.languages.cpp=Prism.languages.extend(\"c\",{keyword:/\\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\\b/,\"boolean\":/\\b(?:true|false)\\b/,operator:/--?|\\+\\+?|!=?|<{1,2}=?|>{1,2}=?|->|:{1,2}|={1,2}|\\^|~|%|&{1,2}|\\|\\|?|\\?|\\*|\\/|\\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\\b/}),Prism.languages.insertBefore(\"cpp\",\"keyword\",{\"class-name\":{pattern:/(class\\s+)\\w+/i,lookbehind:!0}}),Prism.languages.insertBefore(\"cpp\",\"string\",{\"raw-string\":{pattern:/R\"([^()\\\\ ]{0,16})\\([\\s\\S]*?\\)\\1\"/,alias:\"string\",greedy:!0}});\nPrism.languages.csharp=Prism.languages.extend(\"clike\",{keyword:/\\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\\b/,string:[{pattern:/@(\"|')(?:\\1\\1|\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1/,greedy:!0},{pattern:/(\"|')(?:\\\\.|(?!\\1)[^\\\\\\r\\n])*?\\1/,greedy:!0}],number:/\\b0x[\\da-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)f?/i}),Prism.languages.insertBefore(\"csharp\",\"keyword\",{\"generic-method\":{pattern:/[a-z0-9_]+\\s*<[^>\\r\\n]+?>\\s*(?=\\()/i,alias:\"function\",inside:{keyword:Prism.languages.csharp.keyword,punctuation:/[<>(),.:]/}},preprocessor:{pattern:/(^\\s*)#.*/m,lookbehind:!0,alias:\"property\",inside:{directive:{pattern:/(\\s*#)\\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\\b/,lookbehind:!0,alias:\"keyword\"}}}}),Prism.languages.dotnet=Prism.languages.csharp;\n!function(e){e.languages.ruby=e.languages.extend(\"clike\",{comment:[/#(?!\\{[^\\r\\n]*?\\}).*/,/^=begin(?:\\r?\\n|\\r)(?:.*(?:\\r?\\n|\\r))*?=end/m],keyword:/\\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\\b/});var n={pattern:/#\\{[^}]+\\}/,inside:{delimiter:{pattern:/^#\\{|\\}$/,alias:\"tag\"},rest:e.languages.ruby}};e.languages.insertBefore(\"ruby\",\"keyword\",{regex:[{pattern:/%r([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\\((?:[^()\\\\]|\\\\[\\s\\S])*\\)[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\\{(?:[^#{}\\\\]|#(?:\\{[^}]+\\})?|\\\\[\\s\\S])*\\}[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S])*\\][gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r<(?:[^<>\\\\]|\\\\[\\s\\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/(^|[^\\/])\\/(?!\\/)(\\[.+?]|\\\\.|[^\\/\\\\\\r\\n])+\\/[gim]{0,3}(?=\\s*($|[\\r\\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\\w*(?:[?!]|\\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\\w*(?:[?!]|\\b)/,lookbehind:!0}}),e.languages.insertBefore(\"ruby\",\"number\",{builtin:/\\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\\b/,constant:/\\b[A-Z]\\w*(?:[?!]|\\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\\((?:[^()\\\\]|\\\\[\\s\\S])*\\)/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\\{(?:[^#{}\\\\]|#(?:\\{[^}]+\\})?|\\\\[\\s\\S])*\\}/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S])*\\]/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\\\]|\\\\[\\s\\S])*>/,greedy:!0,inside:{interpolation:n}},{pattern:/(\"|')(?:#\\{[^}]+\\}|\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0,inside:{interpolation:n}}]}(Prism);\nPrism.languages.docker={keyword:{pattern:/(^\\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\\s)/im,lookbehind:!0},string:/(\"|')(?:(?!\\1)[^\\\\\\r\\n]|\\\\(?:\\r\\n|[\\s\\S]))*\\1/,comment:/#.*/,punctuation:/---|\\.\\.\\.|[:[\\]{}\\-,|>?]/},Prism.languages.dockerfile=Prism.languages.docker;\nPrism.languages.go=Prism.languages.extend(\"clike\",{keyword:/\\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\\b/,builtin:/\\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\\b/,\"boolean\":/\\b(?:_|iota|nil|true|false)\\b/,operator:/[*\\/%^!=]=?|\\+[=+]?|-[=-]?|\\|[=|]?|&(?:=|&|\\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\\.\\.\\./,number:/(?:\\b0x[a-f\\d]+|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[-+]?\\d+)?)i?/i,string:{pattern:/([\"'`])(\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1/,greedy:!0}}),delete Prism.languages.go[\"class-name\"];\nPrism.languages.json={property:/\"(?:\\\\.|[^\\\\\"\\r\\n])*\"(?=\\s*:)/i,string:{pattern:/\"(?:\\\\.|[^\\\\\"\\r\\n])*\"(?!\\s*:)/,greedy:!0},number:/\\b0x[\\dA-Fa-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:[Ee][+-]?\\d+)?/,punctuation:/[{}[\\]);,]/,operator:/:/g,\"boolean\":/\\b(?:true|false)\\b/i,\"null\":/\\bnull\\b/i},Prism.languages.jsonp=Prism.languages.json;\nPrism.languages.makefile={comment:{pattern:/(^|[^\\\\])#(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\r\\n])*/,lookbehind:!0},string:{pattern:/([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0},builtin:/\\.[A-Z][^:#=\\s]+(?=\\s*:(?!=))/,symbol:{pattern:/^[^:=\\r\\n]+(?=\\s*:(?!=))/m,inside:{variable:/\\$+(?:[^(){}:#=\\s]+|(?=[({]))/}},variable:/\\$+(?:[^(){}:#=\\s]+|\\([@*%<^+?][DF]\\)|(?=[({]))/,keyword:[/-include\\b|\\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\\b/,{pattern:/(\\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \\t])/,lookbehind:!0}],operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/};\nPrism.languages.markdown=Prism.languages.extend(\"markup\",{}),Prism.languages.insertBefore(\"markdown\",\"prolog\",{blockquote:{pattern:/^>(?:[\\t ]*>)*/m,alias:\"punctuation\"},code:[{pattern:/^(?: {4}|\\t).+/m,alias:\"keyword\"},{pattern:/``.+?``|`[^`\\n]+`/,alias:\"keyword\"}],title:[{pattern:/\\w+.*(?:\\r?\\n|\\r)(?:==+|--+)/,alias:\"important\",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\\s*)#+.+/m,lookbehind:!0,alias:\"important\",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\\s*)([*-])(?:[\\t ]*\\2){2,}(?=\\s*$)/m,lookbehind:!0,alias:\"punctuation\"},list:{pattern:/(^\\s*)(?:[*+-]|\\d+\\.)(?=[\\t ].)/m,lookbehind:!0,alias:\"punctuation\"},\"url-reference\":{pattern:/!?\\[[^\\]]+\\]:[\\t ]+(?:\\S+|<(?:\\\\.|[^>\\\\])+>)(?:[\\t ]+(?:\"(?:\\\\.|[^\"\\\\])*\"|'(?:\\\\.|[^'\\\\])*'|\\((?:\\\\.|[^)\\\\])*\\)))?/,inside:{variable:{pattern:/^(!?\\[)[^\\]]+/,lookbehind:!0},string:/(?:\"(?:\\\\.|[^\"\\\\])*\"|'(?:\\\\.|[^'\\\\])*'|\\((?:\\\\.|[^)\\\\])*\\))$/,punctuation:/^[\\[\\]!:]|[<>]/},alias:\"url\"},bold:{pattern:/(^|[^\\\\])(\\*\\*|__)(?:(?:\\r?\\n|\\r)(?!\\r?\\n|\\r)|.)+?\\2/,lookbehind:!0,inside:{punctuation:/^\\*\\*|^__|\\*\\*$|__$/}},italic:{pattern:/(^|[^\\\\])([*_])(?:(?:\\r?\\n|\\r)(?!\\r?\\n|\\r)|.)+?\\2/,lookbehind:!0,inside:{punctuation:/^[*_]|[*_]$/}},url:{pattern:/!?\\[[^\\]]+\\](?:\\([^\\s)]+(?:[\\t ]+\"(?:\\\\.|[^\"\\\\])*\")?\\)| ?\\[[^\\]\\n]*\\])/,inside:{variable:{pattern:/(!?\\[)[^\\]]+(?=\\]$)/,lookbehind:!0},string:{pattern:/\"(?:\\\\.|[^\"\\\\])*\"(?=\\)$)/}}}}),Prism.languages.markdown.bold.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.italic.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.bold.inside.italic=Prism.languages.markdown.italic,Prism.languages.markdown.italic.inside.bold=Prism.languages.markdown.bold;\nPrism.languages.properties={comment:/^[ \\t]*[#!].*$/m,\"attr-value\":{pattern:/(^[ \\t]*(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\s:=])+?(?: *[=:] *| ))(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\r\\n])+/m,lookbehind:!0},\"attr-name\":/^[ \\t]*(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\s:=])+?(?= *[=:] *| )/m,punctuation:/[=:]/};\nPrism.languages.python={comment:{pattern:/(^|[^\\\\])#.*/,lookbehind:!0},\"triple-quoted-string\":{pattern:/(\"\"\"|''')[\\s\\S]+?\\1/,greedy:!0,alias:\"string\"},string:{pattern:/(\"|')(?:\\\\.|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0},\"function\":{pattern:/((?:^|\\s)def[ \\t]+)[a-zA-Z_]\\w*(?=\\s*\\()/g,lookbehind:!0},\"class-name\":{pattern:/(\\bclass\\s+)\\w+/i,lookbehind:!0},keyword:/\\b(?:as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|pass|print|raise|return|try|while|with|yield)\\b/,builtin:/\\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\\b/,\"boolean\":/\\b(?:True|False|None)\\b/,number:/(?:\\b(?=\\d)|\\B(?=\\.))(?:0[bo])?(?:(?:\\d|0x[\\da-f])[\\da-f]*\\.?\\d*|\\.\\d+)(?:e[+-]?\\d+)?j?\\b/i,operator:/[-+%=]=?|!=|\\*\\*?=?|\\/\\/?=?|<[<=>]?|>[=>]?|[&|^~]|\\b(?:or|and|not)\\b/,punctuation:/[{}[\\];(),.:]/};\nPrism.languages.vim={string:/\"(?:[^\"\\\\\\r\\n]|\\\\.)*\"|'(?:[^'\\r\\n]|'')*'/,comment:/\".*/,\"function\":/\\w+(?=\\()/,keyword:/\\b(?:ab|abbreviate|abc|abclear|abo|aboveleft|al|all|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|ar|args|argu|argument|as|ascii|bad|badd|ba|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|br|brewind|bro|browse|bufdo|b|buffer|buffers|bun|bunload|bw|bwipeout|ca|cabbrev|cabc|cabclear|caddb|caddbuffer|cad|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cgetb|cgetbuffer|cgete|cgetexpr|cg|cgetfile|c|change|changes|chd|chdir|che|checkpath|checkt|checktime|cla|clast|cl|clist|clo|close|cmapc|cmapclear|cnew|cnewer|cn|cnext|cN|cNext|cnf|cnfile|cNfcNfile|cnorea|cnoreabbrev|col|colder|colo|colorscheme|comc|comclear|comp|compiler|conf|confirm|con|continue|cope|copen|co|copy|cpf|cpfile|cp|cprevious|cq|cquit|cr|crewind|cuna|cunabbrev|cu|cunmap|cw|cwindow|debugg|debuggreedy|delc|delcommand|d|delete|delf|delfunction|delm|delmarks|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|di|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|earlier|echoe|echoerr|echom|echomsg|echon|e|edit|el|else|elsei|elseif|em|emenu|endfo|endfor|endf|endfunction|endfun|en|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fina|finally|fin|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|folddoc|folddoclosed|foldd|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|ha|hardcopy|h|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iuna|iunabbrev|iu|iunmap|j|join|ju|jumps|k|keepalt|keepj|keepjumps|kee|keepmarks|laddb|laddbuffer|lad|laddexpr|laddf|laddfile|lan|language|la|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|let|left|lefta|leftabove|lex|lexpr|lf|lfile|lfir|lfirst|lgetb|lgetbuffer|lgete|lgetexpr|lg|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|l|list|ll|lla|llast|lli|llist|lmak|lmake|lm|lmap|lmapc|lmapclear|lnew|lnewer|lne|lnext|lN|lNext|lnf|lnfile|lNf|lNfile|ln|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lpf|lpfile|lp|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|mak|make|ma|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkvie|mkview|mkv|mkvimrc|mod|mode|m|move|mzf|mzfile|mz|mzscheme|nbkey|new|n|next|N|Next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|omapc|omapclear|on|only|o|open|opt|options|ou|ounmap|pc|pclose|ped|pedit|pe|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|p|print|P|Print|profd|profdel|prof|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|pyf|pyfile|py|python|qa|qall|q|quit|quita|quitall|r|read|rec|recover|redi|redir|red|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|rub|ruby|rubyd|rubydo|rubyf|rubyfile|ru|runtime|rv|rviminfo|sal|sall|san|sandbox|sa|sargument|sav|saveas|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sb|sbuffer|scripte|scriptencoding|scrip|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sla|slast|sl|sleep|sm|smagic|sm|smap|smapc|smapclear|sme|smenu|sn|snext|sN|sNext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|sor|sort|so|source|spelld|spelldump|spe|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|sp|split|spr|sprevious|sre|srewind|sta|stag|startg|startgreplace|star|startinsert|startr|startreplace|stj|stjump|st|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tab|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabnew|tabn|tabnext|tabN|tabNext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|ta|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tm|tmenu|tn|tnext|tN|tNext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tu|tunmenu|una|unabbreviate|u|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|verb|verbose|ve|version|vert|vertical|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|vi|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|wa|wall|wh|while|winc|wincmd|windo|winp|winpos|win|winsize|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|w|write|ws|wsverb|wv|wviminfo|X|xa|xall|x|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|XMLent|XMLns|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\\b/,builtin:/\\b(?:autocmd|acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|t_AB|t_AF|t_al|t_AL|t_bc|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_RI|t_RV|t_Sb|t_se|t_Sf|t_SI|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_WP|t_WS|t_xs|t_ZH|t_ZR)\\b/,number:/\\b(?:0x[\\da-f]+|\\d+(?:\\.\\d+)?)\\b/i,operator:/\\|\\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\\/%?]|\\b(?:is(?:not)?)\\b/,punctuation:/[{}[\\](),;:]/};\nPrism.languages.yaml={scalar:{pattern:/([\\-:]\\s*(?:![^\\s]+)?[ \\t]*[|>])[ \\t]*(?:((?:\\r?\\n|\\r)[ \\t]+)[^\\r\\n]+(?:\\2[^\\r\\n]+)*)/,lookbehind:!0,alias:\"string\"},comment:/#.*/,key:{pattern:/(\\s*(?:^|[:\\-,[{\\r\\n?])[ \\t]*(?:![^\\s]+)?[ \\t]*)[^\\r\\n{[\\]},#\\s]+?(?=\\s*:\\s)/,lookbehind:!0,alias:\"atrule\"},directive:{pattern:/(^[ \\t]*)%.+/m,lookbehind:!0,alias:\"important\"},datetime:{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(?:\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \\t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?[ \\t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?)?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?)(?=[ \\t]*(?:$|,|]|}))/m,lookbehind:!0,alias:\"number\"},\"boolean\":{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(?:true|false)[ \\t]*(?=$|,|]|})/im,lookbehind:!0,alias:\"important\"},\"null\":{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(?:null|~)[ \\t]*(?=$|,|]|})/im,lookbehind:!0,alias:\"important\"},string:{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(\"|')(?:(?!\\2)[^\\\\\\r\\n]|\\\\.)*\\2(?=[ \\t]*(?:$|,|]|}))/m,lookbehind:!0,greedy:!0},number:{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+\\.?\\d*|\\.?\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)[ \\t]*(?=$|,|]|})/im,lookbehind:!0},tag:/![^\\s]+/,important:/[&*][\\w]+/,punctuation:/---|[:[\\]{}\\-,|>?]|\\.\\.\\./};\n","/* eslint-env browser */\n\n/**\n * Nav/Title replacement\n * Used on invividual post pages, displays the post title in place of the nav\n * bar when scrolling past the title\n *\n * Usage:\n * ```\n * Casper.stickyTitle({\n * navSelector: '.site-nav-main',\n * titleSelector: '.post-full-title',\n * activeClass: 'nav-post-title-active'\n * });\n * ```\n */\n\n(function (window, document) {\n // set up Casper as a global object\n if (!window.Casper) {\n window.Casper = {};\n }\n\n window.Casper.stickyNavTitle = function stickyNavTitle(options) {\n var nav = document.querySelector(options.navSelector);\n var title = document.querySelector(options.titleSelector);\n\n var lastScrollY = window.scrollY;\n var ticking = false;\n\n function onScroll() {\n lastScrollY = window.scrollY;\n requestTick();\n }\n\n function requestTick() {\n if (!ticking) {\n requestAnimationFrame(update);\n }\n ticking = true;\n }\n\n function update() {\n var trigger = title.getBoundingClientRect().top + window.scrollY;\n var triggerOffset = title.offsetHeight + 35;\n\n // show/hide post title\n if (lastScrollY >= trigger + triggerOffset) {\n nav.classList.add(options.activeClass);\n } else {\n nav.classList.remove(options.activeClass);\n }\n\n ticking = false;\n }\n\n window.addEventListener('scroll', onScroll, {passive: true});\n\n update();\n };\n})(window, document);\n"]} \ No newline at end of file +{"version":3,"sources":["jquery.fitvids.js","gallery-card.js","infinite-scroll.js","prism.js"],"names":["$","fn","fitVids","options","head","div","settings","customSelector","ignore","document","getElementById","getElementsByTagName","createElement","innerHTML","appendChild","childNodes","extend","this","each","selectors","push","ignoreList","$allVideos","find","join","not","aspectRatio","videoName","$this","parents","length","tagName","toLowerCase","parent","css","isNaN","attr","parseInt","height","width","_count","wrap","removeAttr","window","jQuery","Zepto","addEventListener","querySelectorAll","forEach","image","container","closest","ratio","attributes","value","style","flex","feedElement","buffer","ticking","loading","lastScrollY","lastWindowHeight","lastDocumentHeight","nextElement","querySelector","onPageLoad","status","removeEventListener","onScroll","onResize","response","item","importNode","resNextElement","href","documentElement","scrollHeight","onUpdate","xhr","XMLHttpRequest","responseType","open","send","requestTick","requestAnimationFrame","scrollY","innerHeight","passive","_self","WorkerGlobalScope","self","Prism","e","t","n","manual","disableWorkerMessageHandler","util","encode","r","type","content","alias","map","replace","Object","prototype","toString","call","match","objId","__id","defineProperty","clone","a","i","hasOwnProperty","languages","insertBefore","arguments","l","o","s","DFS","plugins","highlightAll","highlightAllUnder","callback","selector","hooks","run","elements","highlightElement","test","className","parentNode","nodeName","g","u","element","language","grammar","code","textContent","Worker","filename","onmessage","highlightedCode","data","postMessage","JSON","stringify","immediateClose","highlight","tokenize","matchGrammar","Token","c","v","h","f","inside","d","lookbehind","m","greedy","p","y","pattern","global","RegExp","source","b","k","w","lastIndex","j","_","exec","P","index","A","x","O","I","slice","N","S","C","E","Array","splice","apply","rest","all","add","tag","classes","keys","parse","close","currentScript","pop","src","hasAttribute","readyState","setTimeout","module","exports","markup","comment","prolog","doctype","cdata","punctuation","namespace","attr-value","attr-name","entity","title","xml","html","mathml","svg","clike","string","class-name","keyword","boolean","function","number","operator","javascript","regex","function-variable","template-string","interpolation","interpolation-punctuation","script","js","macro","directive","constant","variable","bash","shebang","shell","cpp","raw-string","csharp","generic-method","preprocessor","dotnet","ruby","delimiter","symbol","builtin","docker","dockerfile","go","json","property","null","jsonp","makefile","markdown","blockquote","hr","list","url-reference","bold","italic","url","properties","python","triple-quoted-string","vim","yaml","scalar","key","datetime","important"],"mappings":"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","file":"casper.js","sourcesContent":["/*jshint browser:true */\n/*!\n* FitVids 1.3\n*\n*\n* Copyright 2017, Chris Coyier + Dave Rupert + Ghost Foundation\n* This is an unofficial release, ported by John O'Nolan\n* Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/\n* Released under the MIT license\n*\n*/\n\n;(function( $ ){\n\n 'use strict';\n\n $.fn.fitVids = function( options ) {\n var settings = {\n customSelector: null,\n ignore: null\n };\n\n if(!document.getElementById('fit-vids-style')) {\n // appendStyles: https://github.com/toddmotto/fluidvids/blob/master/dist/fluidvids.js\n var head = document.head || document.getElementsByTagName('head')[0];\n var css = '.fluid-width-video-container{flex-grow: 1;width:100%;}.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}';\n var div = document.createElement(\"div\");\n div.innerHTML = '

x

';\n head.appendChild(div.childNodes[1]);\n }\n\n if ( options ) {\n $.extend( settings, options );\n }\n\n return this.each(function(){\n var selectors = [\n 'iframe[src*=\"player.vimeo.com\"]',\n 'iframe[src*=\"youtube.com\"]',\n 'iframe[src*=\"youtube-nocookie.com\"]',\n 'iframe[src*=\"kickstarter.com\"][src*=\"video.html\"]',\n 'object',\n 'embed'\n ];\n\n if (settings.customSelector) {\n selectors.push(settings.customSelector);\n }\n\n var ignoreList = '.fitvidsignore';\n\n if(settings.ignore) {\n ignoreList = ignoreList + ', ' + settings.ignore;\n }\n\n var $allVideos = $(this).find(selectors.join(','));\n $allVideos = $allVideos.not('object object'); // SwfObj conflict patch\n $allVideos = $allVideos.not(ignoreList); // Disable FitVids on this video.\n\n $allVideos.each(function(){\n var $this = $(this);\n if($this.parents(ignoreList).length > 0) {\n return; // Disable FitVids on this video.\n }\n if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; }\n if ((!$this.css('height') && !$this.css('width')) && (isNaN($this.attr('height')) || isNaN($this.attr('width'))))\n {\n $this.attr('height', 9);\n $this.attr('width', 16);\n }\n var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(),\n width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(),\n aspectRatio = height / width;\n if(!$this.attr('name')){\n var videoName = 'fitvid' + $.fn.fitVids._count;\n $this.attr('name', videoName);\n $.fn.fitVids._count++;\n }\n $this.wrap('
').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+'%');\n $this.removeAttr('height').removeAttr('width');\n });\n });\n };\n\n // Internal counter for unique video names.\n $.fn.fitVids._count = 0;\n\n// Works with either jQuery or Zepto\n})( window.jQuery || window.Zepto );\n","/* eslint-env browser */\n\n/**\n * Gallery card support\n * Used on any individual post/page\n *\n * Detects when a gallery card has been used and applies sizing to make sure\n * the display matches what is seen in the editor.\n */\n\n(function (window, document) {\n var resizeImagesInGalleries = function resizeImagesInGalleries() {\n var images = document.querySelectorAll('.kg-gallery-image img');\n images.forEach(function (image) {\n var container = image.closest('.kg-gallery-image');\n var width = image.attributes.width.value;\n var height = image.attributes.height.value;\n var ratio = width / height;\n container.style.flex = ratio + ' 1 0%';\n });\n };\n\n document.addEventListener('DOMContentLoaded', resizeImagesInGalleries);\n})(window, document);\n","/* eslint-env browser */\n\n/**\n * Infinite Scroll\n * Used on all pages where there is a list of posts (homepage, tag index, etc).\n *\n * When the page is scrolled to 300px from the bottom, the next page of posts\n * is fetched by following the the that is output\n * by {{ghost_head}}.\n *\n * The individual post items are extracted from the fetched pages by looking for\n * a wrapper element with the class \"post-card\". Any found elements are appended\n * to the element with the class \"post-feed\" in the currently viewed page.\n */\n\n(function (window, document) {\n // next link element\n var nextElement = document.querySelector('link[rel=next]');\n if (!nextElement) {\n return;\n }\n\n // post feed element\n var feedElement = document.querySelector('.post-feed');\n if (!feedElement) {\n return;\n }\n\n var buffer = 300;\n\n var ticking = false;\n var loading = false;\n\n var lastScrollY = window.scrollY;\n var lastWindowHeight = window.innerHeight;\n var lastDocumentHeight = document.documentElement.scrollHeight;\n\n function onPageLoad() {\n if (this.status === 404) {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n return;\n }\n\n // append contents\n var postElements = this.response.querySelectorAll('article.post-card');\n postElements.forEach(function (item) {\n // document.importNode is important, without it the item's owner\n // document will be different which can break resizing of\n // `object-fit: cover` images in Safari\n feedElement.appendChild(document.importNode(item, true));\n });\n\n // set next link\n var resNextElement = this.response.querySelector('link[rel=next]');\n if (resNextElement) {\n nextElement.href = resNextElement.href;\n } else {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n }\n\n // sync status\n lastDocumentHeight = document.documentElement.scrollHeight;\n ticking = false;\n loading = false;\n }\n\n function onUpdate() {\n // return if already loading\n if (loading) {\n return;\n }\n\n // return if not scroll to the bottom\n if (lastScrollY + lastWindowHeight <= lastDocumentHeight - buffer) {\n ticking = false;\n return;\n }\n\n loading = true;\n\n var xhr = new window.XMLHttpRequest();\n xhr.responseType = 'document';\n\n xhr.addEventListener('load', onPageLoad);\n\n xhr.open('GET', nextElement.href);\n xhr.send(null);\n }\n\n function requestTick() {\n ticking || window.requestAnimationFrame(onUpdate);\n ticking = true;\n }\n\n function onScroll() {\n lastScrollY = window.scrollY;\n requestTick();\n }\n\n function onResize() {\n lastWindowHeight = window.innerHeight;\n lastDocumentHeight = document.documentElement.scrollHeight;\n requestTick();\n }\n\n window.addEventListener('scroll', onScroll, {passive: true});\n window.addEventListener('resize', onResize);\n\n requestTick();\n})(window, document);\n","/* PrismJS 1.12.2\nhttp://prismjs.com/download.html#themes=prism-okaidia&languages=markup+clike+javascript+c+bash+cpp+csharp+ruby+docker+go+json+makefile+markdown+properties+python+vim+yaml */\nvar _self=\"undefined\"!=typeof window?window:\"undefined\"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(){var e=/\\blang(?:uage)?-(\\w+)\\b/i,t=0,n=_self.Prism={manual:_self.Prism&&_self.Prism.manual,disableWorkerMessageHandler:_self.Prism&&_self.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof r?new r(e.type,n.util.encode(e.content),e.alias):\"Array\"===n.util.type(e)?e.map(n.util.encode):e.replace(/&/g,\"&\").replace(/e.length)return;if(!(w instanceof s)){h.lastIndex=0;var _=h.exec(w),j=1;if(!_&&m&&b!=t.length-1){if(h.lastIndex=k,_=h.exec(e),!_)break;for(var P=_.index+(d?_[1].length:0),A=_.index+_[0].length,x=b,O=k,I=t.length;I>x&&(A>O||!t[x].type&&!t[x-1].greedy);++x)O+=t[x].length,P>=O&&(++b,k=O);if(t[b]instanceof s||t[x-1].greedy)continue;j=x-b,w=e.slice(k,O),_.index-=k}if(_){d&&(p=_[1]?_[1].length:0);var P=_.index+p,_=_[0].slice(p),A=P+_.length,N=w.slice(0,P),S=w.slice(A),C=[b,j];N&&(++b,k+=N.length,C.push(N));var E=new s(u,f?n.tokenize(_,f):_,y,_,m);if(C.push(E),S&&C.push(S),Array.prototype.splice.apply(t,C),1!=j&&n.matchGrammar(e,t,r,b,k,!0,u),l)break}else if(l)break}}}}},tokenize:function(e,t){var r=[e],a=t.rest;if(a){for(var i in a)t[i]=a[i];delete t.rest}return n.matchGrammar(e,r,t,0,0,!1),r},hooks:{all:{},add:function(e,t){var r=n.hooks.all;r[e]=r[e]||[],r[e].push(t)},run:function(e,t){var r=n.hooks.all[e];if(r&&r.length)for(var a,i=0;a=r[i++];)a(t)}}},r=n.Token=function(e,t,n,r,a){this.type=e,this.content=t,this.alias=n,this.length=0|(r||\"\").length,this.greedy=!!a};if(r.stringify=function(e,t,a){if(\"string\"==typeof e)return e;if(\"Array\"===n.util.type(e))return e.map(function(n){return r.stringify(n,t,e)}).join(\"\");var i={type:e.type,content:r.stringify(e.content,t,a),tag:\"span\",classes:[\"token\",e.type],attributes:{},language:t,parent:a};if(e.alias){var l=\"Array\"===n.util.type(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(i.classes,l)}n.hooks.run(\"wrap\",i);var o=Object.keys(i.attributes).map(function(e){return e+'=\"'+(i.attributes[e]||\"\").replace(/\"/g,\""\")+'\"'}).join(\" \");return\"<\"+i.tag+' class=\"'+i.classes.join(\" \")+'\"'+(o?\" \"+o:\"\")+\">\"+i.content+\"\"},!_self.document)return _self.addEventListener?(n.disableWorkerMessageHandler||_self.addEventListener(\"message\",function(e){var t=JSON.parse(e.data),r=t.language,a=t.code,i=t.immediateClose;_self.postMessage(n.highlight(a,n.languages[r],r)),i&&_self.close()},!1),_self.Prism):_self.Prism;var a=document.currentScript||[].slice.call(document.getElementsByTagName(\"script\")).pop();return a&&(n.filename=a.src,n.manual||a.hasAttribute(\"data-manual\")||(\"loading\"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(n.highlightAll):window.setTimeout(n.highlightAll,16):document.addEventListener(\"DOMContentLoaded\",n.highlightAll))),_self.Prism}();\"undefined\"!=typeof module&&module.exports&&(module.exports=Prism),\"undefined\"!=typeof global&&(global.Prism=Prism);\nPrism.languages.markup={comment://,prolog:/<\\?[\\s\\S]+?\\?>/,doctype://i,cdata://i,tag:{pattern:/<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s+[^\\s>\\/=]+(?:=(?:(\"|')(?:\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1|[^\\s'\">=]+))?)*\\s*\\/?>/i,inside:{tag:{pattern:/^<\\/?[^\\s>\\/]+/i,inside:{punctuation:/^<\\/?/,namespace:/^[^\\s>\\/:]+:/}},\"attr-value\":{pattern:/=(?:(\"|')(?:\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1|[^\\s'\">=]+)/i,inside:{punctuation:[/^=/,{pattern:/(^|[^\\\\])[\"']/,lookbehind:!0}]}},punctuation:/\\/?>/,\"attr-name\":{pattern:/[^\\s>\\/]+/,inside:{namespace:/^[^\\s>\\/:]+:/}}}},entity:/&#?[\\da-z]{1,8};/i},Prism.languages.markup.tag.inside[\"attr-value\"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add(\"wrap\",function(a){\"entity\"===a.type&&(a.attributes.title=a.content.replace(/&/,\"&\"))}),Prism.languages.xml=Prism.languages.markup,Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup;\nPrism.languages.clike={comment:[{pattern:/(^|[^\\\\])\\/\\*[\\s\\S]*?(?:\\*\\/|$)/,lookbehind:!0},{pattern:/(^|[^\\\\:])\\/\\/.*/,lookbehind:!0}],string:{pattern:/([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0},\"class-name\":{pattern:/((?:\\b(?:class|interface|extends|implements|trait|instanceof|new)\\s+)|(?:catch\\s+\\())[\\w.\\\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\\\]/}},keyword:/\\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\\b/,\"boolean\":/\\b(?:true|false)\\b/,\"function\":/[a-z0-9_]+(?=\\()/i,number:/\\b0x[\\da-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[+-]?\\d+)?/i,operator:/--?|\\+\\+?|!=?=?|<=?|>=?|==?=?|&&?|\\|\\|?|\\?|\\*|\\/|~|\\^|%/,punctuation:/[{}[\\];(),.:]/};\nPrism.languages.javascript=Prism.languages.extend(\"clike\",{keyword:/\\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\\b/,number:/\\b(?:0[xX][\\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|NaN|Infinity)\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:[Ee][+-]?\\d+)?/,\"function\":/[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*\\()/i,operator:/-[-=]?|\\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\\|[|=]?|\\*\\*?=?|\\/=?|~|\\^=?|%=?|\\?|\\.{3}/}),Prism.languages.insertBefore(\"javascript\",\"keyword\",{regex:{pattern:/(^|[^\\/])\\/(?!\\/)(\\[[^\\]\\r\\n]+]|\\\\.|[^\\/\\\\\\[\\r\\n])+\\/[gimyu]{0,5}(?=\\s*($|[\\r\\n,.;})]))/,lookbehind:!0,greedy:!0},\"function-variable\":{pattern:/[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*=\\s*(?:function\\b|(?:\\([^()]*\\)|[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*)\\s*=>))/i,alias:\"function\"}}),Prism.languages.insertBefore(\"javascript\",\"string\",{\"template-string\":{pattern:/`(?:\\\\[\\s\\S]|[^\\\\`])*`/,greedy:!0,inside:{interpolation:{pattern:/\\$\\{[^}]+\\}/,inside:{\"interpolation-punctuation\":{pattern:/^\\$\\{|\\}$/,alias:\"punctuation\"},rest:Prism.languages.javascript}},string:/[\\s\\S]+/}}}),Prism.languages.markup&&Prism.languages.insertBefore(\"markup\",\"tag\",{script:{pattern:/()[\\s\\S]*?(?=<\\/script>)/i,lookbehind:!0,inside:Prism.languages.javascript,alias:\"language-javascript\",greedy:!0}}),Prism.languages.js=Prism.languages.javascript;\nPrism.languages.c=Prism.languages.extend(\"clike\",{keyword:/\\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\\b/,operator:/-[>-]?|\\+\\+?|!=?|<>?=?|==?|&&?|\\|\\|?|[~^%?*\\/]/,number:/(?:\\b0x[\\da-f]+|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[+-]?\\d+)?)[ful]*/i}),Prism.languages.insertBefore(\"c\",\"string\",{macro:{pattern:/(^\\s*)#\\s*[a-z]+(?:[^\\r\\n\\\\]|\\\\(?:\\r\\n|[\\s\\S]))*/im,lookbehind:!0,alias:\"property\",inside:{string:{pattern:/(#\\s*include\\s*)(?:<.+?>|(\"|')(?:\\\\?.)+?\\2)/,lookbehind:!0},directive:{pattern:/(#\\s*)\\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\\b/,lookbehind:!0,alias:\"keyword\"}}},constant:/\\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\\b/}),delete Prism.languages.c[\"class-name\"],delete Prism.languages.c[\"boolean\"];\n!function(e){var t={variable:[{pattern:/\\$?\\(\\([\\s\\S]+?\\)\\)/,inside:{variable:[{pattern:/(^\\$\\(\\([\\s\\S]+)\\)\\)/,lookbehind:!0},/^\\$\\(\\(/],number:/\\b0x[\\dA-Fa-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:[Ee]-?\\d+)?/,operator:/--?|-=|\\+\\+?|\\+=|!=?|~|\\*\\*?|\\*=|\\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\\^=?|\\|\\|?|\\|=|\\?|:/,punctuation:/\\(\\(?|\\)\\)?|,|;/}},{pattern:/\\$\\([^)]+\\)|`[^`]+`/,greedy:!0,inside:{variable:/^\\$\\(|^`|\\)$|`$/}},/\\$(?:[\\w#?*!@]+|\\{[^}]+\\})/i]};e.languages.bash={shebang:{pattern:/^#!\\s*\\/bin\\/bash|^#!\\s*\\/bin\\/sh/,alias:\"important\"},comment:{pattern:/(^|[^\"{\\\\])#.*/,lookbehind:!0},string:[{pattern:/((?:^|[^<])<<\\s*)[\"']?(\\w+?)[\"']?\\s*\\r?\\n(?:[\\s\\S])*?\\r?\\n\\2/,lookbehind:!0,greedy:!0,inside:t},{pattern:/([\"'])(?:\\\\[\\s\\S]|\\$\\([^)]+\\)|`[^`]+`|(?!\\1)[^\\\\])*\\1/,greedy:!0,inside:t}],variable:t.variable,\"function\":{pattern:/(^|[\\s;|&])(?:alias|apropos|apt-get|aptitude|aspell|awk|basename|bash|bc|bg|builtin|bzip2|cal|cat|cd|cfdisk|chgrp|chmod|chown|chroot|chkconfig|cksum|clear|cmp|comm|command|cp|cron|crontab|csplit|cut|date|dc|dd|ddrescue|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|du|egrep|eject|enable|env|ethtool|eval|exec|expand|expect|export|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|getopts|git|grep|groupadd|groupdel|groupmod|groups|gzip|hash|head|help|hg|history|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|jobs|join|kill|killall|less|link|ln|locate|logname|logout|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|make|man|mkdir|mkfifo|mkisofs|mknod|more|most|mount|mtools|mtr|mv|mmv|nano|netstat|nice|nl|nohup|notify-send|npm|nslookup|open|op|passwd|paste|pathchk|ping|pkill|popd|pr|printcap|printenv|printf|ps|pushd|pv|pwd|quota|quotacheck|quotactl|ram|rar|rcp|read|readarray|readonly|reboot|rename|renice|remsync|rev|rm|rmdir|rsync|screen|scp|sdiff|sed|seq|service|sftp|shift|shopt|shutdown|sleep|slocate|sort|source|split|ssh|stat|strace|su|sudo|sum|suspend|sync|tail|tar|tee|test|time|timeout|times|touch|top|traceroute|trap|tr|tsort|tty|type|ulimit|umask|umount|unalias|uname|unexpand|uniq|units|unrar|unshar|uptime|useradd|userdel|usermod|users|uuencode|uudecode|v|vdir|vi|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yes|zip)(?=$|[\\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\\s;|&])(?:let|:|\\.|if|then|else|elif|fi|for|break|continue|while|in|case|function|select|do|done|until|echo|exit|return|set|declare)(?=$|[\\s;|&])/,lookbehind:!0},\"boolean\":{pattern:/(^|[\\s;|&])(?:true|false)(?=$|[\\s;|&])/,lookbehind:!0},operator:/&&?|\\|\\|?|==?|!=?|<<>|<=?|>=?|=~/,punctuation:/\\$?\\(\\(?|\\)\\)?|\\.\\.|[{}[\\];]/};var a=t.variable[1].inside;a.string=e.languages.bash.string,a[\"function\"]=e.languages.bash[\"function\"],a.keyword=e.languages.bash.keyword,a.boolean=e.languages.bash.boolean,a.operator=e.languages.bash.operator,a.punctuation=e.languages.bash.punctuation,e.languages.shell=e.languages.bash}(Prism);\nPrism.languages.cpp=Prism.languages.extend(\"c\",{keyword:/\\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\\b/,\"boolean\":/\\b(?:true|false)\\b/,operator:/--?|\\+\\+?|!=?|<{1,2}=?|>{1,2}=?|->|:{1,2}|={1,2}|\\^|~|%|&{1,2}|\\|\\|?|\\?|\\*|\\/|\\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\\b/}),Prism.languages.insertBefore(\"cpp\",\"keyword\",{\"class-name\":{pattern:/(class\\s+)\\w+/i,lookbehind:!0}}),Prism.languages.insertBefore(\"cpp\",\"string\",{\"raw-string\":{pattern:/R\"([^()\\\\ ]{0,16})\\([\\s\\S]*?\\)\\1\"/,alias:\"string\",greedy:!0}});\nPrism.languages.csharp=Prism.languages.extend(\"clike\",{keyword:/\\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\\b/,string:[{pattern:/@(\"|')(?:\\1\\1|\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1/,greedy:!0},{pattern:/(\"|')(?:\\\\.|(?!\\1)[^\\\\\\r\\n])*?\\1/,greedy:!0}],number:/\\b0x[\\da-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)f?/i}),Prism.languages.insertBefore(\"csharp\",\"keyword\",{\"generic-method\":{pattern:/[a-z0-9_]+\\s*<[^>\\r\\n]+?>\\s*(?=\\()/i,alias:\"function\",inside:{keyword:Prism.languages.csharp.keyword,punctuation:/[<>(),.:]/}},preprocessor:{pattern:/(^\\s*)#.*/m,lookbehind:!0,alias:\"property\",inside:{directive:{pattern:/(\\s*#)\\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\\b/,lookbehind:!0,alias:\"keyword\"}}}}),Prism.languages.dotnet=Prism.languages.csharp;\n!function(e){e.languages.ruby=e.languages.extend(\"clike\",{comment:[/#(?!\\{[^\\r\\n]*?\\}).*/,/^=begin(?:\\r?\\n|\\r)(?:.*(?:\\r?\\n|\\r))*?=end/m],keyword:/\\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\\b/});var n={pattern:/#\\{[^}]+\\}/,inside:{delimiter:{pattern:/^#\\{|\\}$/,alias:\"tag\"},rest:e.languages.ruby}};e.languages.insertBefore(\"ruby\",\"keyword\",{regex:[{pattern:/%r([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\\((?:[^()\\\\]|\\\\[\\s\\S])*\\)[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\\{(?:[^#{}\\\\]|#(?:\\{[^}]+\\})?|\\\\[\\s\\S])*\\}[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S])*\\][gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r<(?:[^<>\\\\]|\\\\[\\s\\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/(^|[^\\/])\\/(?!\\/)(\\[.+?]|\\\\.|[^\\/\\\\\\r\\n])+\\/[gim]{0,3}(?=\\s*($|[\\r\\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\\w*(?:[?!]|\\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\\w*(?:[?!]|\\b)/,lookbehind:!0}}),e.languages.insertBefore(\"ruby\",\"number\",{builtin:/\\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\\b/,constant:/\\b[A-Z]\\w*(?:[?!]|\\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\\((?:[^()\\\\]|\\\\[\\s\\S])*\\)/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\\{(?:[^#{}\\\\]|#(?:\\{[^}]+\\})?|\\\\[\\s\\S])*\\}/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S])*\\]/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\\\]|\\\\[\\s\\S])*>/,greedy:!0,inside:{interpolation:n}},{pattern:/(\"|')(?:#\\{[^}]+\\}|\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0,inside:{interpolation:n}}]}(Prism);\nPrism.languages.docker={keyword:{pattern:/(^\\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\\s)/im,lookbehind:!0},string:/(\"|')(?:(?!\\1)[^\\\\\\r\\n]|\\\\(?:\\r\\n|[\\s\\S]))*\\1/,comment:/#.*/,punctuation:/---|\\.\\.\\.|[:[\\]{}\\-,|>?]/},Prism.languages.dockerfile=Prism.languages.docker;\nPrism.languages.go=Prism.languages.extend(\"clike\",{keyword:/\\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\\b/,builtin:/\\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\\b/,\"boolean\":/\\b(?:_|iota|nil|true|false)\\b/,operator:/[*\\/%^!=]=?|\\+[=+]?|-[=-]?|\\|[=|]?|&(?:=|&|\\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\\.\\.\\./,number:/(?:\\b0x[a-f\\d]+|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[-+]?\\d+)?)i?/i,string:{pattern:/([\"'`])(\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1/,greedy:!0}}),delete Prism.languages.go[\"class-name\"];\nPrism.languages.json={property:/\"(?:\\\\.|[^\\\\\"\\r\\n])*\"(?=\\s*:)/i,string:{pattern:/\"(?:\\\\.|[^\\\\\"\\r\\n])*\"(?!\\s*:)/,greedy:!0},number:/\\b0x[\\dA-Fa-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:[Ee][+-]?\\d+)?/,punctuation:/[{}[\\]);,]/,operator:/:/g,\"boolean\":/\\b(?:true|false)\\b/i,\"null\":/\\bnull\\b/i},Prism.languages.jsonp=Prism.languages.json;\nPrism.languages.makefile={comment:{pattern:/(^|[^\\\\])#(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\r\\n])*/,lookbehind:!0},string:{pattern:/([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0},builtin:/\\.[A-Z][^:#=\\s]+(?=\\s*:(?!=))/,symbol:{pattern:/^[^:=\\r\\n]+(?=\\s*:(?!=))/m,inside:{variable:/\\$+(?:[^(){}:#=\\s]+|(?=[({]))/}},variable:/\\$+(?:[^(){}:#=\\s]+|\\([@*%<^+?][DF]\\)|(?=[({]))/,keyword:[/-include\\b|\\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\\b/,{pattern:/(\\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \\t])/,lookbehind:!0}],operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/};\nPrism.languages.markdown=Prism.languages.extend(\"markup\",{}),Prism.languages.insertBefore(\"markdown\",\"prolog\",{blockquote:{pattern:/^>(?:[\\t ]*>)*/m,alias:\"punctuation\"},code:[{pattern:/^(?: {4}|\\t).+/m,alias:\"keyword\"},{pattern:/``.+?``|`[^`\\n]+`/,alias:\"keyword\"}],title:[{pattern:/\\w+.*(?:\\r?\\n|\\r)(?:==+|--+)/,alias:\"important\",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\\s*)#+.+/m,lookbehind:!0,alias:\"important\",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\\s*)([*-])(?:[\\t ]*\\2){2,}(?=\\s*$)/m,lookbehind:!0,alias:\"punctuation\"},list:{pattern:/(^\\s*)(?:[*+-]|\\d+\\.)(?=[\\t ].)/m,lookbehind:!0,alias:\"punctuation\"},\"url-reference\":{pattern:/!?\\[[^\\]]+\\]:[\\t ]+(?:\\S+|<(?:\\\\.|[^>\\\\])+>)(?:[\\t ]+(?:\"(?:\\\\.|[^\"\\\\])*\"|'(?:\\\\.|[^'\\\\])*'|\\((?:\\\\.|[^)\\\\])*\\)))?/,inside:{variable:{pattern:/^(!?\\[)[^\\]]+/,lookbehind:!0},string:/(?:\"(?:\\\\.|[^\"\\\\])*\"|'(?:\\\\.|[^'\\\\])*'|\\((?:\\\\.|[^)\\\\])*\\))$/,punctuation:/^[\\[\\]!:]|[<>]/},alias:\"url\"},bold:{pattern:/(^|[^\\\\])(\\*\\*|__)(?:(?:\\r?\\n|\\r)(?!\\r?\\n|\\r)|.)+?\\2/,lookbehind:!0,inside:{punctuation:/^\\*\\*|^__|\\*\\*$|__$/}},italic:{pattern:/(^|[^\\\\])([*_])(?:(?:\\r?\\n|\\r)(?!\\r?\\n|\\r)|.)+?\\2/,lookbehind:!0,inside:{punctuation:/^[*_]|[*_]$/}},url:{pattern:/!?\\[[^\\]]+\\](?:\\([^\\s)]+(?:[\\t ]+\"(?:\\\\.|[^\"\\\\])*\")?\\)| ?\\[[^\\]\\n]*\\])/,inside:{variable:{pattern:/(!?\\[)[^\\]]+(?=\\]$)/,lookbehind:!0},string:{pattern:/\"(?:\\\\.|[^\"\\\\])*\"(?=\\)$)/}}}}),Prism.languages.markdown.bold.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.italic.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.bold.inside.italic=Prism.languages.markdown.italic,Prism.languages.markdown.italic.inside.bold=Prism.languages.markdown.bold;\nPrism.languages.properties={comment:/^[ \\t]*[#!].*$/m,\"attr-value\":{pattern:/(^[ \\t]*(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\s:=])+?(?: *[=:] *| ))(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\r\\n])+/m,lookbehind:!0},\"attr-name\":/^[ \\t]*(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\s:=])+?(?= *[=:] *| )/m,punctuation:/[=:]/};\nPrism.languages.python={comment:{pattern:/(^|[^\\\\])#.*/,lookbehind:!0},\"triple-quoted-string\":{pattern:/(\"\"\"|''')[\\s\\S]+?\\1/,greedy:!0,alias:\"string\"},string:{pattern:/(\"|')(?:\\\\.|(?!\\1)[^\\\\\\r\\n])*\\1/,greedy:!0},\"function\":{pattern:/((?:^|\\s)def[ \\t]+)[a-zA-Z_]\\w*(?=\\s*\\()/g,lookbehind:!0},\"class-name\":{pattern:/(\\bclass\\s+)\\w+/i,lookbehind:!0},keyword:/\\b(?:as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|pass|print|raise|return|try|while|with|yield)\\b/,builtin:/\\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\\b/,\"boolean\":/\\b(?:True|False|None)\\b/,number:/(?:\\b(?=\\d)|\\B(?=\\.))(?:0[bo])?(?:(?:\\d|0x[\\da-f])[\\da-f]*\\.?\\d*|\\.\\d+)(?:e[+-]?\\d+)?j?\\b/i,operator:/[-+%=]=?|!=|\\*\\*?=?|\\/\\/?=?|<[<=>]?|>[=>]?|[&|^~]|\\b(?:or|and|not)\\b/,punctuation:/[{}[\\];(),.:]/};\nPrism.languages.vim={string:/\"(?:[^\"\\\\\\r\\n]|\\\\.)*\"|'(?:[^'\\r\\n]|'')*'/,comment:/\".*/,\"function\":/\\w+(?=\\()/,keyword:/\\b(?:ab|abbreviate|abc|abclear|abo|aboveleft|al|all|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|ar|args|argu|argument|as|ascii|bad|badd|ba|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|br|brewind|bro|browse|bufdo|b|buffer|buffers|bun|bunload|bw|bwipeout|ca|cabbrev|cabc|cabclear|caddb|caddbuffer|cad|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cgetb|cgetbuffer|cgete|cgetexpr|cg|cgetfile|c|change|changes|chd|chdir|che|checkpath|checkt|checktime|cla|clast|cl|clist|clo|close|cmapc|cmapclear|cnew|cnewer|cn|cnext|cN|cNext|cnf|cnfile|cNfcNfile|cnorea|cnoreabbrev|col|colder|colo|colorscheme|comc|comclear|comp|compiler|conf|confirm|con|continue|cope|copen|co|copy|cpf|cpfile|cp|cprevious|cq|cquit|cr|crewind|cuna|cunabbrev|cu|cunmap|cw|cwindow|debugg|debuggreedy|delc|delcommand|d|delete|delf|delfunction|delm|delmarks|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|di|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|earlier|echoe|echoerr|echom|echomsg|echon|e|edit|el|else|elsei|elseif|em|emenu|endfo|endfor|endf|endfunction|endfun|en|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fina|finally|fin|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|folddoc|folddoclosed|foldd|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|ha|hardcopy|h|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iuna|iunabbrev|iu|iunmap|j|join|ju|jumps|k|keepalt|keepj|keepjumps|kee|keepmarks|laddb|laddbuffer|lad|laddexpr|laddf|laddfile|lan|language|la|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|let|left|lefta|leftabove|lex|lexpr|lf|lfile|lfir|lfirst|lgetb|lgetbuffer|lgete|lgetexpr|lg|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|l|list|ll|lla|llast|lli|llist|lmak|lmake|lm|lmap|lmapc|lmapclear|lnew|lnewer|lne|lnext|lN|lNext|lnf|lnfile|lNf|lNfile|ln|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lpf|lpfile|lp|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|mak|make|ma|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkvie|mkview|mkv|mkvimrc|mod|mode|m|move|mzf|mzfile|mz|mzscheme|nbkey|new|n|next|N|Next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|omapc|omapclear|on|only|o|open|opt|options|ou|ounmap|pc|pclose|ped|pedit|pe|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|p|print|P|Print|profd|profdel|prof|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|pyf|pyfile|py|python|qa|qall|q|quit|quita|quitall|r|read|rec|recover|redi|redir|red|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|rub|ruby|rubyd|rubydo|rubyf|rubyfile|ru|runtime|rv|rviminfo|sal|sall|san|sandbox|sa|sargument|sav|saveas|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sb|sbuffer|scripte|scriptencoding|scrip|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sla|slast|sl|sleep|sm|smagic|sm|smap|smapc|smapclear|sme|smenu|sn|snext|sN|sNext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|sor|sort|so|source|spelld|spelldump|spe|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|sp|split|spr|sprevious|sre|srewind|sta|stag|startg|startgreplace|star|startinsert|startr|startreplace|stj|stjump|st|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tab|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabnew|tabn|tabnext|tabN|tabNext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|ta|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tm|tmenu|tn|tnext|tN|tNext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tu|tunmenu|una|unabbreviate|u|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|verb|verbose|ve|version|vert|vertical|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|vi|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|wa|wall|wh|while|winc|wincmd|windo|winp|winpos|win|winsize|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|w|write|ws|wsverb|wv|wviminfo|X|xa|xall|x|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|XMLent|XMLns|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\\b/,builtin:/\\b(?:autocmd|acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|t_AB|t_AF|t_al|t_AL|t_bc|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_RI|t_RV|t_Sb|t_se|t_Sf|t_SI|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_WP|t_WS|t_xs|t_ZH|t_ZR)\\b/,number:/\\b(?:0x[\\da-f]+|\\d+(?:\\.\\d+)?)\\b/i,operator:/\\|\\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\\/%?]|\\b(?:is(?:not)?)\\b/,punctuation:/[{}[\\](),;:]/};\nPrism.languages.yaml={scalar:{pattern:/([\\-:]\\s*(?:![^\\s]+)?[ \\t]*[|>])[ \\t]*(?:((?:\\r?\\n|\\r)[ \\t]+)[^\\r\\n]+(?:\\2[^\\r\\n]+)*)/,lookbehind:!0,alias:\"string\"},comment:/#.*/,key:{pattern:/(\\s*(?:^|[:\\-,[{\\r\\n?])[ \\t]*(?:![^\\s]+)?[ \\t]*)[^\\r\\n{[\\]},#\\s]+?(?=\\s*:\\s)/,lookbehind:!0,alias:\"atrule\"},directive:{pattern:/(^[ \\t]*)%.+/m,lookbehind:!0,alias:\"important\"},datetime:{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(?:\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \\t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?[ \\t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?)?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?)(?=[ \\t]*(?:$|,|]|}))/m,lookbehind:!0,alias:\"number\"},\"boolean\":{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(?:true|false)[ \\t]*(?=$|,|]|})/im,lookbehind:!0,alias:\"important\"},\"null\":{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(?:null|~)[ \\t]*(?=$|,|]|})/im,lookbehind:!0,alias:\"important\"},string:{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)(\"|')(?:(?!\\2)[^\\\\\\r\\n]|\\\\.)*\\2(?=[ \\t]*(?:$|,|]|}))/m,lookbehind:!0,greedy:!0},number:{pattern:/([:\\-,[{]\\s*(?:![^\\s]+)?[ \\t]*)[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+\\.?\\d*|\\.?\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)[ \\t]*(?=$|,|]|})/im,lookbehind:!0},tag:/![^\\s]+/,important:/[&*][\\w]+/,punctuation:/---|[:[\\]{}\\-,|>?]|\\.\\.\\./};\n"]} \ No newline at end of file diff --git a/assets/built/global.css b/assets/built/global.css index bbd9369..6eb6e85 100644 --- a/assets/built/global.css +++ b/assets/built/global.css @@ -1,2 +1,2 @@ -:root{--blue:#3eb0ef;--green:#a4d037;--purple:#ad26b4;--yellow:#fecd35;--red:#f05230;--darkgrey:#15171a;--midgrey:#738a94;--lightgrey:#c5d2d9;--whitegrey:#e5eff5;--pink:#fa3a57;--brown:#a3821a;--darkmode:#1a1c20}a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,ul,var,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}img{max-width:100%}html{box-sizing:border-box;font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:inherit}a{background-color:transparent}a:active,a:hover{outline:0}b,strong{font-weight:700}dfn,em,i{font-style:italic}h1{margin:.67em 0;font-size:2em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}mark{background-color:#fdffb6}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;color:inherit;font:inherit}button{overflow:visible;border:none}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input:focus{outline:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{padding:0;border:0}textarea{overflow:auto}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}html{overflow-y:scroll;font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body,html{overflow-x:hidden}body{color:#303a3e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:1.6rem;line-height:1.6em;font-weight:400;font-style:normal;letter-spacing:0;text-rendering:optimizeLegibility;background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on}::-moz-selection{text-shadow:none;background:#cbeafb}::selection{text-shadow:none;background:#cbeafb}hr{position:relative;display:block;width:100%;margin:2.5em 0 3.5em;padding:0;height:1px;border:0;border-top:1px solid #e4eaed}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{margin:0;padding:0;border:0}textarea{resize:vertical}blockquote,dl,ol,p,ul{margin:0 0 1.5em}ol,ul{padding-left:1.3em;padding-right:1.5em}ol ol,ol ul,ul ol,ul ul{margin:.5em 0 1em}ul{list-style:disc}ol{list-style:decimal}ol,ul{max-width:100%}li{margin:.5em 0;padding-left:.3em;line-height:1.6em}dt{float:left;margin:0 20px 0 0;width:120px;color:var(--darkgrey);font-weight:500;text-align:right}dd{margin:0 0 5px;text-align:left}blockquote{margin:1.5em 0;padding:0 1.6em;border-left:.5em solid var(--whitegrey)}blockquote p{margin:.8em 0;font-size:1.2em;font-weight:300}blockquote small{display:inline-block;margin:.8em 0 .8em 1.5em;font-size:.9em;opacity:.8}blockquote small:before{content:"\2014 \00A0"}blockquote cite{font-weight:700}blockquote cite a{font-weight:400}a{color:#26a6ed;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin-top:0;line-height:1.15;font-weight:600;text-rendering:optimizeLegibility}h1{margin:0 0 .5em;font-size:5.5rem;font-weight:600}@media (max-width:500px){h1{font-size:2.2rem}}h2{margin:1.5em 0 .5em;font-size:2.2rem}@media (max-width:500px){h2{font-size:1.8rem}}h3{margin:1.5em 0 .5em;font-size:1.8rem;font-weight:500}@media (max-width:500px){h3{font-size:1.7rem}}h4{margin:1.5em 0 .5em;font-size:1.6rem;font-weight:500}h5,h6{margin:1.5em 0 .5em;font-size:1.4rem;font-weight:500} +a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,ul,var,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}img{display:block;max-width:100%;height:auto}html{box-sizing:border-box;font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:inherit}a{background-color:transparent}a:active,a:hover{outline:0}b,strong{font-weight:700}dfn,em,i{font-style:italic}h1{margin:.67em 0;font-size:2em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}mark{background-color:#fdffb6}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;color:inherit;font:inherit}button{overflow:visible;border:none}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input:focus{outline:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{padding:0;border:0}textarea{overflow:auto}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{color:#35373a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:1.6rem;line-height:1.6em;font-weight:400;font-style:normal;letter-spacing:0;text-rendering:optimizeLegibility;background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on}::-moz-selection{text-shadow:none;background:#daf2fd}::selection{text-shadow:none;background:#daf2fd}hr{position:relative;display:block;width:100%;margin:2.5em 0 3.5em;padding:0;height:1px;border:0;border-top:1px solid #f0f0f0}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{margin:0;padding:0;border:0}textarea{resize:vertical}::not(.gh-content) blockquote,::not(.gh-content) dl,::not(.gh-content) ol,::not(.gh-content) p,::not(.gh-content) ul{margin:0 0 1.5em}ol,ul{padding-left:1.3em;padding-right:1.5em}ol ol,ol ul,ul ol,ul ul{margin:.5em 0 1em}ul{list-style:disc}ol{list-style:decimal}ol,ul{max-width:100%}li{padding-left:.3em;line-height:1.6em}li+li{margin-top:.5em}dt{float:left;margin:0 20px 0 0;width:120px;color:#daf2fd;font-weight:500;text-align:right}dd{margin:0 0 5px;text-align:left}blockquote{margin:1.5em 0;padding:0 1.6em;border-left:#daf2fd}blockquote p{margin:.8em 0;font-size:1.2em;font-weight:300}blockquote small{display:inline-block;margin:.8em 0 .8em 1.5em;font-size:.9em;opacity:.8}blockquote small:before{content:"\2014 \00A0"}blockquote cite{font-weight:700}blockquote cite a{font-weight:400}a{color:#15171a;text-decoration:none}h1,h2,h3,h4,h5,h6{margin-top:0;line-height:1.15;font-weight:600;text-rendering:optimizeLegibility;letter-spacing:-.01em}h1{margin:0 0 .5em;font-size:4.8rem;font-weight:700;letter-spacing:-.015em}@media (max-width:600px){h1{font-size:2.8rem}}h2{margin:1.5em 0 .5em;font-size:2.8rem;font-weight:700}@media (max-width:600px){h2{font-size:2.3rem}}h3{margin:1.5em 0 .5em;font-size:2.4rem;font-weight:600}@media (max-width:600px){h3{font-size:1.7rem}}h4{font-size:2.2rem}h4,h5{margin:1.5em 0 .5em}h5{font-size:2rem}h6{margin:1.5em 0 .5em;font-size:1.8rem} /*# sourceMappingURL=global.css.map */ \ No newline at end of file diff --git a/assets/built/global.css.map b/assets/built/global.css.map index 550ecb9..32ab326 100644 --- a/assets/built/global.css.map +++ b/assets/built/global.css.map @@ -1 +1 @@ -{"version":3,"sources":["global.css"],"names":[],"mappings":"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","file":"global.css","sourcesContent":["/* Variables\n/* ---------------------------------------------------------- */\n\n:root {\n /* Colours */\n --blue: #3eb0ef;\n --green: #a4d037;\n --purple: #ad26b4;\n --yellow: #fecd35;\n --red: #f05230;\n --darkgrey: #15171A;\n --midgrey: #738a94;\n --lightgrey: #c5d2d9;\n --whitegrey: #e5eff5;\n --pink: #fa3a57;\n --brown: #a3821a;\n --darkmode: color-mod(var(--darkgrey) l(+2%));\n}\n\n/* Reset\n/* ---------------------------------------------------------- */\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n}\nbody {\n line-height: 1;\n}\nol,\nul {\n list-style: none;\n}\nblockquote,\nq {\n quotes: none;\n}\nblockquote:before,\nblockquote:after,\nq:before,\nq:after {\n content: \"\";\n content: none;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\nimg {\n max-width: 100%;\n}\nhtml {\n box-sizing: border-box;\n font-family: sans-serif;\n\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\n*,\n*:before,\n*:after {\n box-sizing: inherit;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nb,\nstrong {\n font-weight: bold;\n}\ni,\nem,\ndfn {\n font-style: italic;\n}\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nmark {\n background-color: #fdffb6;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 3 */\n color: inherit; /* 1 */\n font: inherit; /* 2 */\n}\nbutton {\n overflow: visible;\n border: none;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\n/* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n cursor: pointer; /* 3 */\n\n -webkit-appearance: button; /* 2 */\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\ninput {\n line-height: normal;\n}\ninput:focus {\n outline: none;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n box-sizing: content-box; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nlegend {\n padding: 0; /* 2 */\n border: 0; /* 1 */\n}\ntextarea {\n overflow: auto;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\ntd,\nth {\n padding: 0;\n}\n\n/* ==========================================================================\n Base styles: opinionated defaults\n ========================================================================== */\n\nhtml {\n overflow-x: hidden;\n overflow-y: scroll;\n font-size: 62.5%;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n overflow-x: hidden;\n color: color-mod(var(--midgrey) l(-30%));\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n font-size: 1.6rem;\n line-height: 1.6em;\n font-weight: 400;\n font-style: normal;\n letter-spacing: 0;\n text-rendering: optimizeLegibility;\n background: #fff;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n -moz-font-feature-settings: \"liga\" on;\n}\n\n::selection {\n text-shadow: none;\n background: color-mod(var(--blue) lightness(+30%));\n}\n\nhr {\n position: relative;\n display: block;\n width: 100%;\n margin: 2.5em 0 3.5em;\n padding: 0;\n height: 1px;\n border: 0;\n border-top: 1px solid color-mod(var(--lightgrey) l(+10%));\n}\n\naudio,\ncanvas,\niframe,\nimg,\nsvg,\nvideo {\n vertical-align: middle;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n border: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\np,\nul,\nol,\ndl,\nblockquote {\n margin: 0 0 1.5em 0;\n}\n\nol,\nul {\n padding-left: 1.3em;\n padding-right: 1.5em;\n}\n\nol ol,\nul ul,\nul ol,\nol ul {\n margin: 0.5em 0 1em;\n}\n\nul {\n list-style: disc;\n}\n\nol {\n list-style: decimal;\n}\n\nul,\nol {\n max-width: 100%;\n}\n\nli {\n margin: 0.5em 0;\n padding-left: 0.3em;\n line-height: 1.6em;\n}\n\ndt {\n float: left;\n margin: 0 20px 0 0;\n width: 120px;\n color: var(--darkgrey);\n font-weight: 500;\n text-align: right;\n}\n\ndd {\n margin: 0 0 5px 0;\n text-align: left;\n}\n\nblockquote {\n margin: 1.5em 0;\n padding: 0 1.6em 0 1.6em;\n border-left: var(--whitegrey) 0.5em solid;\n}\n\nblockquote p {\n margin: 0.8em 0;\n font-size: 1.2em;\n font-weight: 300;\n}\n\nblockquote small {\n display: inline-block;\n margin: 0.8em 0 0.8em 1.5em;\n font-size: 0.9em;\n opacity: 0.8;\n}\n/* Quotation marks */\nblockquote small:before {\n content: \"\\2014 \\00A0\";\n}\n\nblockquote cite {\n font-weight: bold;\n}\nblockquote cite a {\n font-weight: normal;\n}\n\na {\n color: color-mod(var(--blue) l(-5%));\n text-decoration: none;\n}\n\na:hover {\n text-decoration: underline;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-top: 0;\n line-height: 1.15;\n font-weight: 600;\n text-rendering: optimizeLegibility;\n}\n\nh1 {\n margin: 0 0 0.5em 0;\n font-size: 5.5rem;\n font-weight: 600;\n}\n@media (max-width: 500px) {\n h1 {\n font-size: 2.2rem;\n }\n}\n\nh2 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.2rem;\n}\n@media (max-width: 500px) {\n h2 {\n font-size: 1.8rem;\n }\n}\n\nh3 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.8rem;\n font-weight: 500;\n}\n@media (max-width: 500px) {\n h3 {\n font-size: 1.7rem;\n }\n}\n\nh4 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.6rem;\n font-weight: 500;\n}\n\nh5 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.4rem;\n font-weight: 500;\n}\n\nh6 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.4rem;\n font-weight: 500;\n}\n"]} \ No newline at end of file +{"version":3,"sources":["global.css"],"names":[],"mappings":"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","file":"global.css","sourcesContent":["/* Reset\n/* ---------------------------------------------------------- */\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n}\nbody {\n line-height: 1;\n}\nol,\nul {\n list-style: none;\n}\nblockquote,\nq {\n quotes: none;\n}\nblockquote:before,\nblockquote:after,\nq:before,\nq:after {\n content: \"\";\n content: none;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\nimg {\n display: block;\n max-width: 100%;\n height: auto;\n}\nhtml {\n box-sizing: border-box;\n font-family: sans-serif;\n\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\n*,\n*:before,\n*:after {\n box-sizing: inherit;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nb,\nstrong {\n font-weight: bold;\n}\ni,\nem,\ndfn {\n font-style: italic;\n}\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nmark {\n background-color: #fdffb6;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 3 */\n color: inherit; /* 1 */\n font: inherit; /* 2 */\n}\nbutton {\n overflow: visible;\n border: none;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\n/* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n cursor: pointer; /* 3 */\n\n -webkit-appearance: button; /* 2 */\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\ninput {\n line-height: normal;\n}\ninput:focus {\n outline: none;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n box-sizing: content-box; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nlegend {\n padding: 0; /* 2 */\n border: 0; /* 1 */\n}\ntextarea {\n overflow: auto;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\ntd,\nth {\n padding: 0;\n}\n\n/* ==========================================================================\n Base styles: opinionated defaults\n ========================================================================== */\n\nhtml {\n font-size: 62.5%;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n color: #35373A;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n font-size: 1.6rem;\n line-height: 1.6em;\n font-weight: 400;\n font-style: normal;\n letter-spacing: 0;\n text-rendering: optimizeLegibility;\n background: #fff;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n -moz-font-feature-settings: \"liga\" on;\n}\n\n::selection {\n text-shadow: none;\n background: #daf2fd;\n}\n\nhr {\n position: relative;\n display: block;\n width: 100%;\n margin: 2.5em 0 3.5em;\n padding: 0;\n height: 1px;\n border: 0;\n border-top: 1px solid #f0f0f0;\n}\n\naudio,\ncanvas,\niframe,\nimg,\nsvg,\nvideo {\n vertical-align: middle;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n border: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\n::not(.gh-content) p,\n::not(.gh-content) ul,\n::not(.gh-content) ol,\n::not(.gh-content) dl,\n::not(.gh-content) blockquote {\n margin: 0 0 1.5em 0;\n}\n\nol,\nul {\n padding-left: 1.3em;\n padding-right: 1.5em;\n}\n\nol ol,\nul ul,\nul ol,\nol ul {\n margin: 0.5em 0 1em;\n}\n\nul {\n list-style: disc;\n}\n\nol {\n list-style: decimal;\n}\n\nul,\nol {\n max-width: 100%;\n}\n\nli {\n padding-left: 0.3em;\n line-height: 1.6em;\n}\n\nli + li {\n margin-top: 0.5em;\n}\n\ndt {\n float: left;\n margin: 0 20px 0 0;\n width: 120px;\n color: #daf2fd;\n font-weight: 500;\n text-align: right;\n}\n\ndd {\n margin: 0 0 5px 0;\n text-align: left;\n}\n\nblockquote {\n margin: 1.5em 0;\n padding: 0 1.6em 0 1.6em;\n border-left: #daf2fd;\n}\n\nblockquote p {\n margin: 0.8em 0;\n font-size: 1.2em;\n font-weight: 300;\n}\n\nblockquote small {\n display: inline-block;\n margin: 0.8em 0 0.8em 1.5em;\n font-size: 0.9em;\n opacity: 0.8;\n}\n/* Quotation marks */\nblockquote small:before {\n content: \"\\2014 \\00A0\";\n}\n\nblockquote cite {\n font-weight: bold;\n}\nblockquote cite a {\n font-weight: normal;\n}\n\na {\n color: #15171A;\n text-decoration: none;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-top: 0;\n line-height: 1.15;\n font-weight: 600;\n text-rendering: optimizeLegibility;\n letter-spacing: -0.01em;\n}\n\nh1 {\n margin: 0 0 0.5em 0;\n font-size: 4.8rem;\n font-weight: 700;\n letter-spacing: -0.015em;\n}\n@media (max-width: 600px) {\n h1 {\n font-size: 2.8rem;\n }\n}\n\nh2 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.8rem;\n font-weight: 700;\n}\n@media (max-width: 600px) {\n h2 {\n font-size: 2.3rem;\n }\n}\n\nh3 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.4rem;\n font-weight: 600;\n}\n@media (max-width: 600px) {\n h3 {\n font-size: 1.7rem;\n }\n}\n\nh4 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.2rem;\n}\n\nh5 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2rem;\n}\n\nh6 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.8rem;\n}\n"]} \ No newline at end of file diff --git a/assets/built/screen.css b/assets/built/screen.css index 4a4f6a2..5a8941a 100644 --- a/assets/built/screen.css +++ b/assets/built/screen.css @@ -1,2 +1,2 @@ -:root{--blue:#3eb0ef;--green:#a4d037;--purple:#ad26b4;--yellow:#fecd35;--red:#f05230;--darkgrey:#15171a;--midgrey:#738a94;--lightgrey:#c5d2d9;--whitegrey:#e5eff5;--pink:#fa3a57;--brown:#a3821a;--darkmode:#1a1c20}a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,ul,var,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}img{max-width:100%}html{box-sizing:border-box;font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:inherit}a{background-color:transparent}a:active,a:hover{outline:0}b,strong{font-weight:700}dfn,em,i{font-style:italic}h1{margin:.67em 0;font-size:2em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}mark{background-color:#fdffb6}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;color:inherit;font:inherit}button{overflow:visible;border:none}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input:focus{outline:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{padding:0;border:0}textarea{overflow:auto}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}html{overflow-y:scroll;font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body,html{overflow-x:hidden}body{color:#303a3e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:1.6rem;line-height:1.6em;font-weight:400;font-style:normal;letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on}::-moz-selection{text-shadow:none;background:#cbeafb}::selection{text-shadow:none;background:#cbeafb}hr{position:relative;display:block;width:100%;margin:2.5em 0 3.5em;padding:0;height:1px;border:0;border-top:1px solid #e4eaed}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{margin:0;padding:0;border:0}textarea{resize:vertical}blockquote,dl,ol,p,ul{margin:0 0 1.5em}ol,ul{padding-left:1.3em;padding-right:1.5em}ol ol,ol ul,ul ol,ul ul{margin:.5em 0 1em}ul{list-style:disc}ol{list-style:decimal}ol,ul{max-width:100%}li{margin:.5em 0;padding-left:.3em;line-height:1.6em}dt{float:left;margin:0 20px 0 0;width:120px;color:var(--darkgrey);font-weight:500;text-align:right}dd{margin:0 0 5px;text-align:left}blockquote{margin:1.5em 0;padding:0 1.6em;border-left:.5em solid var(--whitegrey)}blockquote p{margin:.8em 0;font-size:1.2em;font-weight:300}blockquote small{display:inline-block;margin:.8em 0 .8em 1.5em;font-size:.9em;opacity:.8}blockquote small:before{content:"\2014 \00A0"}blockquote cite{font-weight:700}blockquote cite a{font-weight:400}a{color:#26a6ed;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin-top:0;line-height:1.15;font-weight:600;text-rendering:optimizeLegibility}h1{margin:0 0 .5em;font-size:5.5rem;font-weight:600}@media (max-width:500px){h1{font-size:2.2rem}}h2{margin:1.5em 0 .5em;font-size:2.2rem}@media (max-width:500px){h2{font-size:1.8rem}}h3{margin:1.5em 0 .5em;font-size:1.8rem;font-weight:500}@media (max-width:500px){h3{font-size:1.7rem}}h4{margin:1.5em 0 .5em;font-size:1.6rem;font-weight:500}h5,h6{margin:1.5em 0 .5em;font-size:1.4rem;font-weight:500}body{background:#fff}.img{display:block;width:100%;height:100%;background-position:50%;background-size:cover;border-radius:100%}.hidden{visibility:hidden;position:absolute;text-indent:-9999px}.site-wrapper{display:flex;flex-direction:column;min-height:100vh}.site-main{z-index:100;flex-grow:1}.outer{position:relative;padding:0 5vw}.inner{margin:0 auto;max-width:1040px;width:100%}@media (min-width:900px){.author-template .post-feed,.home-template .post-feed,.tag-template .post-feed{padding:40px 0 5vw;border-top-left-radius:3px;border-top-right-radius:3px}.home-template .site-nav{position:relative}}.site-header-background{position:relative;margin-top:64px;padding-bottom:12px;color:#fff;background:#0a0b0c no-repeat 50%;background-size:cover}.site-header-background:before{bottom:0;background:rgba(0,0,0,.18)}.site-header-background:after,.site-header-background:before{content:"";position:absolute;top:0;right:0;left:0;z-index:10;display:block}.site-header-background:after{bottom:auto;height:140px;background:linear-gradient(rgba(0,0,0,.15),transparent)}.site-header-background.no-image:after,.site-header-background.no-image:before{display:none}.site-header-content{z-index:100;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:6vw 3vw;min-height:200px;max-height:340px}.site-title{z-index:10;margin:0 0 0 -2px;padding:0;font-size:5rem;line-height:1em;font-weight:600}.site-logo{max-height:55px}.site-description{z-index:10;margin:0;padding:5px 0;font-size:2.1rem;line-height:1.4em;font-weight:400;opacity:.8}.site-home-header{z-index:1000}.site-home-header .site-header-background{margin-top:0}.site-home-header .site-header-content{padding:5vw 3vw 6vw}.site-home-header .site-title{font-size:5.5rem;text-align:center}.site-home-header .site-description{font-size:2.2rem;font-weight:300;text-align:center}.site-archive-header .site-header-content{position:relative;align-items:stretch;padding:12vw 0 20px;min-height:200px;max-height:600px}.site-archive-header .no-image{padding-top:0;padding-bottom:0;color:var(--darkgrey);background:#fff;opacity:1}.site-archive-header .no-image .site-description{color:var(--midgrey);opacity:1}.site-archive-header .no-image .site-header-content{padding:5vw 0 10px;border-bottom:1px solid #eaeff1}@media (max-width:900px){.site-header-content{padding-bottom:9vw}}@media (max-width:500px){.site-home-header .site-title{font-size:4.2rem}.site-home-header .site-description{font-size:1.8rem}.site-archive-header .site-header-content{flex-direction:column;align-items:center;min-height:unset}.site-archive-header .site-title{font-size:4.2rem;text-align:center}.site-archive-header .no-image .site-header-content{padding:12vw 0 20px}}.site-nav-main{position:fixed;top:0;right:0;left:0;z-index:1000;background:#0a0b0c}.site-nav{position:relative;z-index:100;display:flex;justify-content:space-between;align-items:flex-start;overflow:hidden;height:64px;font-size:1.3rem}.site-nav-left-wrapper{position:relative;flex:1 0 auto;display:flex}.site-header-background:not(.responsive-header-img) .site-nav-left-wrapper:after,.site-nav-main .site-nav-left-wrapper:after{content:"";position:absolute;top:0;z-index:1000;width:40px;height:100%;right:0;background:linear-gradient(90deg,rgba(10,11,12,0) 0,#0a0b0c)}.site-nav-left{flex:1 0 auto;display:flex;align-items:center;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;margin-right:10px;padding:10px 0 80px;font-weight:500;letter-spacing:.2px;text-transform:uppercase;white-space:nowrap;-ms-overflow-scrolling:touch}.site-nav-left .nav li:last-of-type{padding-right:20px}.site-nav-logo{position:relative;z-index:100;flex-shrink:0;display:inline-block;margin-right:32px;padding:12px 0;color:#fff;font-size:1.7rem;line-height:1.8rem;font-weight:700;letter-spacing:-.5px;text-transform:none}.site-nav-logo:hover{text-decoration:none}.site-nav-logo img{display:block;width:auto;height:21px}.site-home-header .site-nav-logo{display:none}.site-nav-content{position:relative;align-self:flex-start}.nav{position:absolute;z-index:1000;display:flex;margin:0 0 0 -12px;padding:0;list-style:none;transition:all 1s cubic-bezier(.19,1,.22,1)}.nav li{display:block;margin:0;padding:0}.nav li a{position:relative;display:block;padding:12px;color:#fff;opacity:.8;transition:opacity .35s ease-in-out}.nav li a:hover{text-decoration:none;opacity:1}.nav li a:before{content:"";position:absolute;right:100%;bottom:8px;left:12px;height:1px;background:#fff;opacity:.25;transition:all .35s ease-in-out}.nav li a:hover:before{right:12px;opacity:.5}.nav-post-title-active .nav{visibility:hidden;opacity:0;transform:translateY(-175%)}.nav-post-title{visibility:hidden;position:absolute;top:9px;color:#fff;font-size:1.7rem;font-weight:400;text-transform:none;opacity:0;transition:all 1s cubic-bezier(.19,1,.22,1);transform:translateY(175%)}.nav-post-title.dash{left:-25px}.nav-post-title.dash:before{content:"– ";opacity:.5}.nav-post-title-active .nav-post-title{visibility:visible;opacity:1;transform:translateY(0)}.site-nav-right{flex:0 1 auto;display:flex;justify-content:flex-end;align-items:center;padding:10px 0;height:64px}.site-nav-right .nav{position:relative;margin:0}.site-nav-right .nav a{white-space:nowrap}.site-nav-right .nav a:before{display:none}.site-nav-right .nav li:last-of-type a{margin-right:-12px}.social-links{flex-shrink:0;display:flex;align-items:center}.social-link{display:inline-block;margin:0;padding:10px;opacity:.8}.social-link:hover{opacity:1}.social-link svg{height:1.8rem;fill:#fff}.social-link-fb svg,.social-link-wb svg{height:1.6rem}.social-link-wb svg path{stroke:#fff}.social-link-rss svg{height:1.9rem}.subscribe-button{display:block;margin:0 0 0 10px;padding:4px 10px;border:1px solid #fff;color:#fff;line-height:1em;border-radius:10px;opacity:.8}.subscribe-button:hover{text-decoration:none;opacity:1}.site-nav-right .nav+.subscribe-button{margin-left:24px}.rss-button{padding:10px 8px;opacity:.8}.rss-button:hover{opacity:1}.rss-button svg{margin-bottom:1px;height:2.1rem;fill:#fff}.home-template .site-nav-main{z-index:100}.home-template .site-nav-main .site-nav{opacity:0;transition:all .5s cubic-bezier(.19,1,.22,1) 0s}.home-template .site-nav-main .fixed-nav-active{opacity:1;transition:all .5s cubic-bezier(.19,1,.22,1) .05s}@media (max-width:700px){.site-home-header .site-nav{margin-left:-5vw}.site-nav-main{padding-right:0;padding-left:0}.site-nav-left{margin-right:0;padding-left:5vw}.site-nav-right{display:none}}.posts{overflow-x:hidden}.post-feed{flex-wrap:wrap;margin:0 -20px;padding:50px 0 0;background:#fff}.post-card,.post-feed{position:relative;display:flex}.post-card{flex:1 1 301px;flex-direction:column;overflow:hidden;margin:0 0 40px;padding:0 20px 40px;min-height:220px;border-bottom:1px solid #eaeff1;background-size:cover}.post-card-image-link{position:relative;display:block;overflow:hidden;border-radius:3px}.post-card-image{width:100%;height:200px;background:var(--lightgrey) no-repeat 50%;-o-object-fit:cover;object-fit:cover}.post-card-content-link{position:relative;display:block;color:var(--darkgrey)}.post-card-content-link:hover{text-decoration:none}.post-card-header{margin:15px 0 0}.post-feed .no-image .post-card-content-link{padding:0}.no-image .post-card-header{margin-top:0}.post-card-primary-tag{margin:0 0 .2em;color:var(--blue);font-size:1.2rem;font-weight:500;letter-spacing:.2px;text-transform:uppercase}.post-card-title{margin:0 0 .4em;line-height:1.15em;transition:color .2s ease-in-out}.no-image .post-card-title{margin-top:0}.post-card-content{flex-grow:1;display:flex;flex-direction:column}.post-card-excerpt{max-width:56em;color:var(--midgrey);font-family:Georgia,serif}.post-card-excerpt p{margin-bottom:1em}.post-card-meta{display:flex;align-items:flex-start;padding:0}.author-profile-image,.avatar-wrapper{display:block;width:100%;height:100%;background:#e4eaed;border-radius:100%;-o-object-fit:cover;object-fit:cover}.post-card-meta .avatar-wrapper,.post-card-meta .profile-image-wrapper{position:relative}.author-list{display:flex;flex-wrap:wrap;margin:0 0 0 4px;padding:0;list-style:none}.author-list-item{position:relative;flex-shrink:0;margin:0;padding:0}.static-avatar{display:block;overflow:hidden;margin:0 0 0 -6px;width:34px;height:34px;border:2px solid #fff;border-radius:100%}.author-name-tooltip{position:absolute;bottom:105%;z-index:999;display:block;padding:2px 8px;color:#fff;font-size:1.2rem;letter-spacing:.2px;white-space:nowrap;background:var(--darkgrey);border-radius:3px;box-shadow:0 12px 26px rgba(39,44,49,.08),1px 3px 8px rgba(39,44,49,.03);opacity:0;transition:all .35s cubic-bezier(.4,.01,.165,.99);transform:translateY(6px);pointer-events:none}.author-list-item:hover .author-name-tooltip{opacity:1;transform:translateY(0)}@media (max-width:700px){.author-name-tooltip{display:none}}.post-card-byline-content{flex:1 1 50%;display:flex;flex-direction:column;margin:2px 0 0 6px;color:#90a2aa;font-size:1.2rem;line-height:1.4em;font-weight:400;letter-spacing:.2px;text-transform:uppercase}.post-card-byline-content span{margin:0}.post-card-byline-content a{color:#434952;font-weight:600}.post-card-byline-date{font-size:1.2rem}.post-card-byline-date .bull{display:inline-block;margin:0 4px;opacity:.6}.single-author-byline{display:flex;flex-direction:column;margin-left:5px;color:#5c7078;font-size:1.3rem;line-height:1.4em;font-weight:500}.single-author{display:flex;align-items:center}.single-author .static-avatar{margin-left:-2px}.single-author-name{display:inline-block}@media (min-width:795px){.post-card-large{flex:1 1 100%;flex-direction:row;padding-bottom:40px;min-height:280px;border-top:0}.post-card-large:hover{border-bottom-color:#e4eaed}.post-card-large:not(.no-image) .post-card-header{margin-top:0}.post-card-large .post-card-image-link{position:relative;flex:1 1 auto;margin-bottom:0;min-height:380px}.post-card-large .post-card-image{position:absolute;width:100%;height:100%}.post-card-large .post-card-content{flex:0 1 361px;justify-content:center}.post-card-large .post-card-title{margin-top:0;font-size:3.2rem}.post-card-large .post-card-content-link,.post-card-large .post-card-meta{padding:0 0 0 40px}.post-card-large .post-card-excerpt p{margin-bottom:1.5em;font-size:1.8rem;line-height:1.5em}}@media (max-width:1170px){.post-card{margin-bottom:5vw}}@media (max-width:650px){.post-feed{padding-top:5vw}.post-card{margin-bottom:5vw}}@media (max-width:500px){.post-card-title{font-size:1.9rem}.post-card-excerpt{font-size:1.6rem}}.page-template .site-main,.post-template .site-main{margin-top:64px;padding-bottom:4vw;background:#fff}.post-full-header{position:relative;margin:0 auto;padding:70px 170px 50px;border-top-left-radius:3px;border-top-right-radius:3px}.post-full-tags{display:flex;justify-content:flex-start;align-items:center;color:var(--midgrey);font-size:1.3rem;line-height:1.4em;font-weight:600;text-transform:uppercase}.post-full-meta-date{color:var(--midgrey);font-size:1.2rem;font-weight:400}@media (max-width:1170px){.post-full-header{padding:60px 11vw 50px}}@media (max-width:800px){.post-full-header{padding-right:5vw;padding-left:5vw}}@media (max-width:500px){.post-full-header{padding:20px 0 35px}}.post-full-title{margin:0 0 .2em;color:#0a0b0c}.post-full-custom-excerpt{margin:20px 0 0;color:var(--midgrey);font-family:Georgia,serif;font-size:2.3rem;line-height:1.4em;font-weight:300}.date-divider{display:inline-block;margin:0 6px 1px;font-weight:300}.post-full-image{display:flex;flex-direction:column;align-items:center;overflow:hidden;margin:25px 0 50px;background:#e4eaed;border-radius:3px}.post-full-image img{max-width:1040px;width:100%;height:auto}.post-full-content{position:relative;margin:0 auto;padding:0 170px 6vw;min-height:230px;font-family:Georgia,serif;font-size:2rem;line-height:1.6em;background:#fff}@media (max-width:1170px){.post-full-content{padding:0 11vw}}@media (max-width:800px){.post-full-content{padding:0 5vw;font-size:1.8rem}}@media (max-width:500px){.post-full-custom-excerpt{font-size:1.9rem;line-height:1.5em}}.no-image .post-full-content{padding-top:0}.no-image .post-full-content:after,.no-image .post-full-content:before{display:none}.footnotes,.post-full-comments,.post-full-content blockquote,.post-full-content dl,.post-full-content h1,.post-full-content h2,.post-full-content h3,.post-full-content h4,.post-full-content h5,.post-full-content h6,.post-full-content ol,.post-full-content p,.post-full-content pre,.post-full-content ul{margin:0 0 1.5em;min-width:100%}@media (max-width:500px){.footnotes,.post-full-comments,.post-full-content dl,.post-full-content ol,.post-full-content p,.post-full-content pre,.post-full-content ul{margin-bottom:1.28em}}.post-full-content li{word-break:break-word}.post-full-content li p{margin:0}.post-full-content a{color:var(--darkgrey);word-break:break-word;box-shadow:var(--darkgrey) 0 -1px 0 inset;transition:all .2s ease-in-out}.post-full-content a:hover{color:var(--blue);text-decoration:none;box-shadow:var(--blue) 0 -1px 0 inset}.post-full-content em,.post-full-content strong{color:#0a0b0c}.post-full-content small{display:inline-block;line-height:1.6em}.post-full-content li:first-child{margin-top:0}.post-full-content img,.post-full-content video{display:block;margin:1.5em auto;max-width:1040px;height:auto}@media (max-width:1040px){.post-full-content img,.post-full-content video{width:100%}}.post-full-content img[src$="#full"]{max-width:none;width:100vw}.post-full-content img+br+small{display:block;margin-top:-3em;margin-bottom:1.5em;text-align:center}.post-full-content iframe{margin:0 auto!important}.post-full-content blockquote{margin:0 0 1.5em;padding:0 1.5em;border-left:3px solid #3eb0ef}@media (max-width:500px){.post-full-content blockquote{padding:0 1.3em}}.post-full-content blockquote p{margin:0 0 1em;color:inherit;font-size:inherit;line-height:inherit;font-style:italic}.post-full-content blockquote p:last-child{margin-bottom:0}.post-full-content code{padding:0 5px 2px;font-size:.8em;line-height:1em;font-weight:400!important;background:var(--whitegrey);border-radius:3px}.post-full-content p code{word-break:break-all}.post-full-content pre{overflow-x:auto;margin:1.5em 0 3em;padding:20px;max-width:100%;border:1px solid #000;color:var(--whitegrey);font-size:1.4rem;line-height:1.5em;background:#0e1012;border-radius:5px}.post-full-content pre ::-moz-selection{color:#3b474d}.post-full-content pre ::selection{color:#3b474d}.post-full-content pre code{padding:0;font-size:inherit;line-height:inherit;background:transparent}.post-full-content pre code :not(span){color:inherit}.post-full-content .fluid-width-video-wrapper{margin:1.5em 0 3em}.post-full-content hr{margin:2em 0}.post-full-content hr:after{content:"";position:absolute;top:-15px;left:50%;display:block;margin-left:-10px;width:1px;height:30px;background:#e4eaed;box-shadow:0 0 0 5px #fff;transform:rotate(45deg)}.post-full-content hr+p{margin-top:1.2em}.post-full-content h1,.post-full-content h2,.post-full-content h3,.post-full-content h4,.post-full-content h5,.post-full-content h6{color:#0a0b0c;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}.post-full-content h1{margin:.5em 0 .4em;font-size:4.2rem;line-height:1.25em;font-weight:600}.post-full-content p+h1{margin-top:.8em}@media (max-width:800px){.post-full-content h1{font-size:3.2rem;line-height:1.25em}}.post-full-content h2{margin:.5em 0 .4em;font-size:3.2rem;line-height:1.25em;font-weight:600}.post-full-content p+h2{margin-top:.8em}@media (max-width:800px){.post-full-content h2{margin-bottom:.3em;font-size:2.8rem;line-height:1.25em}}.post-full-content h3{margin:.5em 0 .2em;font-size:2.5rem;line-height:1.3em;font-weight:600}.post-full-content h2+h3{margin-top:.7em}@media (max-width:800px){.post-full-content h3{margin-bottom:.3em;font-size:2.4rem;line-height:1.3em}}.post-full-content h4{margin:.5em 0 .2em;font-size:2.5rem;font-weight:600}.post-full-content h2+h4{margin-top:.7em}.post-full-content h3+h4{margin-top:0}@media (max-width:800px){.post-full-content h4{margin-bottom:.3em;font-size:2.4rem;line-height:1.3em}}.post-full-content h5{display:block;margin:.5em 0;padding:.4em 1em .9em;border:0;color:var(--blue);font-family:Georgia,serif;font-size:3.2rem;line-height:1.35em;text-align:center}@media (min-width:1180px){.post-full-content h5{max-width:1060px;width:100vw}}@media (max-width:800px){.post-full-content h5{margin-bottom:1em;margin-left:1.3em;padding:0 0 .5em;font-size:2.4rem;text-align:initial}}.post-full-content h6{margin:.5em 0 .2em;font-size:2rem;font-weight:700}@media (max-width:800px){.post-full-content h6{font-size:1.8rem;line-height:1.4em}}.footnotes-sep{margin-bottom:30px}.footnotes{font-size:1.5rem}.footnotes p{margin:0}.footnote-backref{color:var(--blue)!important;font-size:1.2rem;font-weight:700;text-decoration:none!important;box-shadow:none!important}@media (max-width:1170px){.post-full-image{margin:25px -6vw 50px;border-radius:0}.post-full-image img{max-width:1170px}}@media (max-width:700px){.post-full-image{margin:25px -5vw}}@media (max-width:500px){.post-full-meta{font-size:1.2rem;line-height:1.3em}.post-full-title{margin-top:.2em;font-size:4.2rem;line-height:1.05em}.post-full-image{margin-top:5px;margin-bottom:5vw}.post-full-content{padding:0}.post-full-content:after,.post-full-content:before{display:none}}.post-full-content table{display:inline-block;overflow-x:auto;margin:.5em 0 2.5em;max-width:100%;width:auto;border-spacing:0;border-collapse:collapse;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:1.6rem;white-space:nowrap;vertical-align:top;-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse at left,rgba(0,0,0,.2) 0,transparent 75%) 0,radial-gradient(ellipse at right,rgba(0,0,0,.2) 0,transparent 75%) 100%;background-attachment:scroll,scroll;background-size:10px 100%,10px 100%;background-repeat:no-repeat}.post-full-content table td:first-child{background-image:linear-gradient(90deg,#fff 50%,hsla(0,0%,100%,0));background-size:20px 100%;background-repeat:no-repeat}.post-full-content table td:last-child{background-image:linear-gradient(270deg,#fff 50%,hsla(0,0%,100%,0));background-position:100% 0;background-size:20px 100%;background-repeat:no-repeat}.post-full-content table th{color:var(--darkgrey);font-size:1.2rem;font-weight:700;letter-spacing:.2px;text-align:left;text-transform:uppercase;background-color:#f4f8fb}.post-full-content table td,.post-full-content table th{padding:6px 12px;border:1px solid #e2ecf3}.post-full-byline{display:flex;justify-content:space-between;margin:35px 0 0;padding-top:15px;border-top:1px solid #e4eaed}.post-full-byline-content{flex-grow:1;display:flex;align-items:flex-start}.post-full-byline-content .author-list{justify-content:flex-start;padding:0 12px 0 0}.post-full-byline-meta{margin:2px 0 0;color:#90a2aa;font-size:1.2rem;line-height:1.2em;letter-spacing:.2px;text-transform:uppercase}.post-full-byline-meta h4{margin:0 0 3px;font-size:1.3rem;line-height:1.4em;font-weight:500}.post-full-byline-meta h4 a{color:#2c3036}.post-full-byline-meta h4 a:hover{color:var(--darkgrey)}.post-full-byline-meta .bull{display:inline-block;margin:0 4px;opacity:.6}.author-avatar{display:block;overflow:hidden;margin:0 -4px;width:40px;height:40px;border:2px solid #fff;border-radius:100%;transition:all .5s cubic-bezier(.4,.01,.165,.99) .7s}.author-list-item .author-card{position:absolute;bottom:130%;left:50%;z-index:600;display:flex;justify-content:space-between;margin-left:-200px;width:400px;font-size:1.4rem;line-height:1.5em;background:#fff;border-radius:3px;box-shadow:0 12px 26px rgba(39,44,49,.08),1px 3px 8px rgba(39,44,49,.06);opacity:0;transition:all .35s cubic-bezier(.4,.01,.165,.99);transform:scale(.98) translateY(15px);pointer-events:none}.author-list-item .author-card:before{content:"";position:absolute;top:100%;left:50%;display:block;margin-left:-8px;width:0;height:0;border-top:8px solid #fff;border-right:8px solid transparent;border-left:8px solid transparent}.author-list-item .author-card.hovered{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.author-card{padding:20px 20px 22px}.author-card .author-info{flex:1 1 auto;padding:0 0 0 20px}.author-card .author-info h2{margin:8px 0 0;font-size:1.6rem}.author-card .author-info p{margin:4px 0 0;color:#5c7078}.author-card .author-info .bio h2{margin-top:0}.author-card .author-info .bio p{margin-top:.8em}.author-card .author-profile-image{flex:0 0 60px;margin:0;width:60px;height:60px;border:none}.basic-info .avatar-wrapper{position:relative;margin:0;width:60px;height:60px;border:none;background:rgba(229,239,245,.1)}.basic-info .avatar-wrapper svg{margin:0;width:60px;height:60px;opacity:.15}@media (max-width:1170px){.author-list-item .author-card{margin-left:-50px;width:430px}.author-list-item .author-card:before{left:50px}}@media (max-width:650px){.author-list-item .author-card{display:none}}@media (max-width:500px){.author-avatar{width:36px;height:36px}.post-full-byline{margin-top:20px}.post-full-byline-meta{font-size:1.2rem}.post-full-byline-meta h4{margin-bottom:2px;font-size:1.2rem}}.subscribe-form{margin:1.5em 0;padding:6.5vw 7vw 8vw;border:1px solid #e4eaed;text-align:center;background:linear-gradient(#fbfdfe,#f4f8fb);border-radius:3px}.subscribe-form-title{margin:0 0 3px;padding:0;color:var(--darkgrey);font-size:3.5rem;line-height:1;font-weight:600}.subscribe-form-description{margin-bottom:.2em 0 1em;color:var(--midgrey);font-size:2.1rem;line-height:1.55em}.subscribe-form form{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 auto;max-width:460px}.subscribe-form .form-group{align-self:stretch;display:flex}.subscribe-email{display:block;padding:10px;width:100%;border:1px solid #dbe3e7;color:var(--midgrey);font-size:1.8rem;line-height:1em;font-weight:400;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;border-radius:5px;transition:border-color .15s linear;-webkit-appearance:none}.subscribe-form button{position:relative;display:inline-block;margin:0 0 0 10px;padding:0 20px;height:43px;outline:none;color:#fff;font-size:1.5rem;line-height:39px;font-weight:400;text-align:center;background:linear-gradient(#50b6ef,#299fe0 60%,#299fe0 90%,#37a5e2);border-radius:5px;-webkit-font-smoothing:subpixel-antialiased}.subscribe-form button:active,.subscribe-form button:focus{background:#209bdf}.subscribe-form .button-loader,.subscribe-form .message-error,.subscribe-form .message-success{display:none}.subscribe-form .loading .button-content{visibility:hidden}.subscribe-form .loading .button-loader{position:absolute;top:0;left:50%;display:inline-block;margin-left:-19px;transform:scale(.7)}.subscribe-form .button-loader svg path,.subscribe-form .button-loader svg rect{fill:#fff}.subscribe-form .error .message-error,.subscribe-form .invalid .message-error,.subscribe-form .success .message-success{margin:1em auto 0;max-width:400px;color:var(--red);font-size:1.6rem;line-height:1.5em;text-align:center}.subscribe-form .success .message-success{display:block;color:#96c02d}.subscribe-form .error .message-error,.subscribe-form .invalid .message-error{display:block}@media (max-width:650px){.subscribe-form-title{font-size:2.4rem}.subscribe-form-description{font-size:1.6rem}}@media (max-width:500px){.subscribe-form form{flex-direction:column}.subscribe-form .form-group{flex-direction:column;width:100%}.subscribe-form button{margin:10px 0 0;width:100%}}.post-full-comments{margin:0 auto;max-width:840px}.read-next{border-bottom:1px solid hsla(0,0%,100%,.1);background:#0a0b0c}.read-next-feed{display:flex;flex-wrap:wrap;margin:0 -25px;padding:60px 0 0}.read-next .post-card{padding-bottom:0;border-bottom:none}.read-next .post-card:after{display:none}.read-next .post-card-primary-tag{color:#fff;opacity:.6}.read-next .post-card-title{color:#fff;opacity:.8;transition:all .2s ease-in-out}.read-next .post-card:hover .post-card-image{opacity:1}.read-next .post-card-excerpt{color:hsla(0,0%,100%,.6)}.read-next .static-avatar{border-color:#000}.read-next .post-card-byline-content{color:hsla(0,0%,100%,.6)}.read-next .post-card-byline-content a{color:hsla(0,0%,100%,.8)}.read-next-card{position:relative;flex:0 1 326px;display:flex;flex-direction:column;overflow:hidden;margin:0 25px 50px;padding:25px;background:linear-gradient(#1a1c20,#0a0b0c);border-radius:3px}.read-next-card a{transition:all .2s ease-in-out}.read-next-card a:hover{text-decoration:none}.read-next-card-header h3{margin:0;color:hsla(0,0%,100%,.6);font-size:1.2rem;line-height:1em;font-weight:300;letter-spacing:.4px;text-transform:uppercase}.read-next-card-header h3 a{color:#fff;font-weight:500;text-decoration:none;opacity:.8}.read-next-card-header h3 a:hover{opacity:1}.read-next-card-content{font-size:1.7rem}.read-next-card-content ul{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.read-next-card-content li{display:flex;flex-direction:column;align-items:flex-start;margin:0;padding:20px 0;border-bottom:hsla(0,0%,100%,.1)}.read-next-card-content li:last-of-type{padding-bottom:5px;border:none}.read-next-card-content h4{margin:0;font-size:1.6rem;line-height:1.35em;font-weight:600}.read-next-card-content li a{display:block;color:#fff;opacity:.8}.read-next-card-content li a:hover{opacity:1}.read-next-card-excerpt{overflow:hidden;max-width:100%;font-size:1.4rem;line-height:1.2em;text-overflow:ellipsis}.read-next-card-meta{margin-top:2px;font-size:1.2rem;line-height:1.4em;font-weight:400}.read-next-card-meta p{margin:0;color:hsla(0,0%,100%,.6)}.read-next-card-footer{position:relative;margin:40px 0 5px}.read-next-card-footer a{padding:7px 12px 8px 14px;border:1px solid hsla(0,0%,100%,.6);color:hsla(0,0%,100%,.6);font-size:1.3rem;border-radius:999px;transition:all .35s ease-in-out}.read-next-card-footer a:hover{border-color:var(--yellow);color:var(--yellow);text-decoration:none}@media (max-width:1170px){.read-next-card{flex:1 1 261px;margin-bottom:5vw}}@media (max-width:650px){.read-next-feed{flex-direction:column;padding:25px 0 0}.read-next-card{flex:1 1 auto;margin:0 25px;padding:0;background:none}.read-next .post-card{flex:1 1 auto;margin:25px;padding:25px 0 0;border-bottom:1px solid hsla(0,0%,100%,.1)}}.post-content{display:flex;flex-direction:column;align-items:center}.post-full-content .kg-image{margin:0 auto;max-width:100%}.post-full-image+.post-full-content .kg-content :first-child .kg-image{width:100%}.post-full-content .kg-width-wide .kg-image{max-width:1040px}.post-full-content .kg-width-full .kg-image{max-width:100vw}.post-full-content figure{margin:.8em 0 2.3em}.post-full-content h1+figure,.post-full-content h2+figure,.post-full-content h3+figure,.post-full-content h4+figure{margin-top:2em}.post-full-content figure img{margin:0}.post-full-content figcaption{margin:1em auto 0;color:#5c7078;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:75%;line-height:1.5em;text-align:center;max-width:1040px}.kg-width-full figcaption{padding:0 1.5em}.kg-embed-card{display:flex;flex-direction:column;align-items:center;width:100%}.kg-embed-card .fluid-width-video-wrapper{margin:0}@media (max-width:1040px){.post-full-content .kg-width-full .kg-image{width:100vw}}.kg-gallery-container{display:flex;flex-direction:column;max-width:1040px;width:100vw}.kg-gallery-row{display:flex;flex-direction:row;justify-content:center}.kg-gallery-image img{display:block;margin:0;width:100%;height:100%}.kg-gallery-row:not(:first-of-type){margin:.75em 0 0}.kg-gallery-image:not(:first-of-type){margin:0 0 0 .75em}.kg-gallery-card+.kg-gallery-card,.kg-gallery-card+.kg-image-card.kg-width-wide,.kg-image-card.kg-width-wide+.kg-gallery-card,.kg-image-card.kg-width-wide+.kg-image-card.kg-width-wide{margin:-2.25em 0 3em}.kg-code-card{width:100%}.kg-code-card pre{margin:0}.kg-bookmark-card{width:100%}.kg-card+.kg-bookmark-card{margin-top:0}.post-full-content .kg-bookmark-container{display:flex;min-height:148px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;border-radius:3px}.post-full-content .kg-bookmark-container,.post-full-content .kg-bookmark-container:hover{color:var(--darkgrey);text-decoration:none;box-shadow:0 2px 5px -1px rgba(0,0,0,.15),0 0 1px rgba(0,0,0,.09)}.kg-bookmark-content{flex-grow:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:20px}.kg-bookmark-title{color:#303a3e;font-size:1.6rem;line-height:1.5em;font-weight:600;transition:color .2s ease-in-out}.post-full-content .kg-bookmark-container:hover .kg-bookmark-title{color:var(--blue)}.kg-bookmark-description{display:-webkit-box;overflow-y:hidden;margin-top:12px;max-height:48px;color:#5c7078;font-size:1.5rem;line-height:1.5em;font-weight:400;-webkit-line-clamp:2;-webkit-box-orient:vertical}.kg-bookmark-thumbnail{position:relative;min-width:33%;max-height:100%}.kg-bookmark-thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:0 3px 3px 0;-o-object-fit:cover;object-fit:cover}.kg-bookmark-metadata{display:flex;flex-wrap:wrap;align-items:center;margin-top:14px;color:#5c7078;font-size:1.5rem;font-weight:400}.post-full-content .kg-bookmark-icon{margin-right:8px;width:22px;height:22px}.kg-bookmark-author{line-height:1.5em}.kg-bookmark-author:after{content:"•";margin:0 6px}.kg-bookmark-publisher{overflow:hidden;max-width:240px;line-height:1.5em;text-overflow:ellipsis;white-space:nowrap}@media (max-width:800px){.post-full-content figure{margin:.2em 0 1.3em}.post-full-content h1+figure,.post-full-content h2+figure,.post-full-content h3+figure,.post-full-content h4+figure{margin-top:.9em}}@media (max-width:500px){.post-full-content .kg-width-full,.post-full-content .kg-width-wide{margin-right:-5vw;margin-left:-5vw}.post-full-content figcaption{margin-bottom:.4em}.post-full-content .kg-bookmark-container{flex-direction:column}.kg-bookmark-description,.kg-bookmark-metadata,.kg-bookmark-title{font-size:1.4rem;line-height:1.5em}.post-full-content .kg-bookmark-icon{width:18px;height:18px}.kg-bookmark-thumbnail{order:1;min-height:160px;width:100%}.kg-bookmark-thumbnail img{border-radius:3px 3px 0 0}.kg-bookmark-content{order:2}}.author-header{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;padding:10vw 0 10px}.site-archive-header .author-header{align-items:center}.site-archive-header .no-image .author-header{padding-bottom:20px}.author-header-content{display:flex;flex-direction:column;justify-content:center;margin:5px 0 0 30px}.site-header-content .author-profile-image{z-index:10;flex-shrink:0;margin:-4px 0 0;width:110px;height:110px;box-shadow:0 0 0 6px hsla(0,0%,100%,.1)}.author-header-content .author-bio{z-index:10;flex-shrink:0;margin:6px 0 0;max-width:46em;font-size:2rem;line-height:1.3em;font-weight:400;opacity:.8}.author-header-content .author-meta{z-index:10;flex-shrink:0;display:flex;align-items:center;margin:0 0 0 1px;font-size:1.2rem;font-weight:400;letter-spacing:.2px;text-transform:uppercase;white-space:nowrap}.author-header-content .social-link:first-of-type{padding-left:4px}.no-image .author-header-content .author-bio,.no-image .author-header-content .author-meta{color:var(--midgrey);opacity:1}.author-social-link a{color:#fff;font-weight:600}.no-image .author-social-link a{color:var(--darkgrey)}.author-social-link a:hover{opacity:1}.author-social-link{display:inline-block;margin:0;padding:6px 0}.author-location+.author-stats:before,.author-social-link+.author-social-link:before,.author-stats+.author-social-link:before{content:"\2022";display:inline-block;margin:0 12px;color:#fff;opacity:.6}.no-image .author-location+.author-stats:before,.no-image .author-social-link+.author-social-link:before,.no-image .author-stats+.author-social-link:before{color:var(--midgrey)}@media (max-width:700px){.author-location,.author-stats,.author-stats+.author-social-link:first-of-type:before{display:none}}@media (max-width:500px){.author-header{padding:10px 0 0}.no-image .author-header{padding-bottom:10px}.author-header-content{align-items:center;margin:16px 0 0}.site-header-content .author-profile-image{width:96px;height:96px}.author-header-content .author-bio{font-size:1.8rem;line-height:1.3em;letter-spacing:0;text-align:center}.author-header-content .author-meta{margin-top:8px}.author-location+.author-stats:before,.author-social-link+.author-social-link:before,.author-stats+.author-social-link:before{display:inline;margin:0 6px}}.error-content{padding:14vw 4vw 6vw}.site-nav-center{display:flex;justify-content:center;align-items:center;padding:10px 0;text-align:center}.site-nav-center .site-nav-logo{margin-right:0}.error-message{padding-bottom:10vw;border-bottom:1px solid #e4eaed;text-align:center}.error-code{margin:0;color:var(--lightgrey);font-size:12vw;line-height:1em;letter-spacing:-5px;opacity:.75}.error-description{margin:0;color:var(--midgrey);font-size:3rem;line-height:1.3em;font-weight:400}.error-link{display:inline-block;margin-top:5px}@media (min-width:940px){.error-content .post-card{margin-bottom:0;padding-bottom:0;border-bottom:none}}@media (max-width:800px){.error-content{padding-top:24vw}.error-code{font-size:11.2rem}.error-message{padding-bottom:16vw}.error-description{margin:5px 0 0;font-size:1.8rem}}@media (max-width:500px){.error-content{padding-top:28vw}.error-message{padding-bottom:14vw}}.subscribe-success-message{position:fixed;top:0;right:0;left:0;z-index:9000;padding:20px 0;color:#fff;text-align:center;background:var(--green);transition:all .35s cubic-bezier(.19,1,.22,1) .5s;transform:translateY(-175%)}.subscribe-success .subscribe-success-message{visibility:visible;transform:translateY(0)}.subscribe-success-message.close{visibility:hidden;transition:all 1.35s cubic-bezier(.19,1,.22,1);transform:translateY(-175%)}.subscribe-close-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:block}.subscribe-close-button{position:absolute;top:16px;right:20px;z-index:2000;display:block;width:40px;height:40px}.subscribe-close-button:before{transform:rotate(45deg)}.subscribe-close-button:after,.subscribe-close-button:before{content:"";position:absolute;top:20px;right:4px;display:block;width:32px;height:1px;background:#fff;opacity:.8}.subscribe-close-button:after{transform:rotate(-45deg)}.subscribe-close-button:hover,.subscribe-close-overlay:hover{cursor:default}.subscribe-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;justify-content:center;align-items:center;background:rgba(9,10,11,.97);opacity:0;transition:opacity .2s ease-in;pointer-events:none}.subscribe-overlay:target{z-index:2001;opacity:1;pointer-events:auto}.subscribe-overlay-content{position:relative;margin:0 0 5vw;padding:4vw;color:#fff;text-align:center}.subscribe-overlay .subscribe-form{border:none;color:#fff;background:none}.subscribe-overlay-logo{position:fixed;top:23px;left:30px;height:30px}.subscribe-overlay-title{display:inline-block;margin:0 0 10px;font-size:5.2rem;line-height:1.15em}.subscribe-overlay-description{margin:0 auto 50px;max-width:650px;color:#fff;font-family:Georgia,serif;font-size:2.4rem;line-height:1.3em;font-weight:300;opacity:.8}.subscribe-overlay form{display:flex;justify-content:center;align-items:center;margin:0 auto;max-width:540px}.subscribe-overlay .form-group{flex-grow:1}.subscribe-overlay .subscribe-email{display:block;padding:14px 20px;width:100%;border:none;color:var(--midgrey);font-size:2rem;line-height:1em;font-weight:400;letter-spacing:.5px;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;border-radius:8px;transition:border-color .15s linear;-webkit-appearance:none}.subscribe-email:focus{outline:0;border-color:#bfcdd5}.subscribe-overlay button{display:inline-block;margin:0 0 0 15px;padding:0 25px;height:52px;outline:none;color:#fff;font-size:1.7rem;line-height:38px;font-weight:400;text-align:center;background:linear-gradient(#50b6ef,#299fe0 60%,#299fe0 90%,#37a5e2);border-radius:8px;-webkit-font-smoothing:subpixel-antialiased}.subscribe-overlay button:active,.subscribe-overlay button:focus{background:#209bdf}.subscribe-overlay .loading .button-loader{top:5px}@media (max-width:500px){.subscribe-overlay button{margin:12px 0 0}}.site-footer{position:relative;padding-top:20px;padding-bottom:60px;color:#fff;background:#0a0b0c}.site-footer-content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;font-size:1.3rem}.site-footer-content,.site-footer-content a{color:hsla(0,0%,100%,.7)}.site-footer-content a:hover{color:#fff;text-decoration:none}.site-footer-nav{display:flex}.site-footer-nav a{position:relative;margin-left:20px}.site-footer-nav a:before{content:"";position:absolute;top:11px;left:-11px;display:block;width:2px;height:2px;background:#fff;border-radius:100%}.site-footer-nav a:first-of-type:before{display:none}@media (max-width:650px){.site-footer-content{flex-direction:column}.site-footer-nav a:first-child{margin-left:0}}@media (prefers-color-scheme:dark){body{color:hsla(0,0%,100%,.75);background:var(--darkmode)}img{opacity:.9}.site-header-background:before{background:rgba(0,0,0,.6)}.post-feed{background:var(--darkmode)}.post-card,.post-card:hover{border-bottom-color:#17191c}.author-profile-image{background:var(--darkmode)}.post-card-byline-content a{color:hsla(0,0%,100%,.75)}.post-card-byline-content a:hover{color:#fff}.post-card-image{background:var(--darkmode)}.post-card-title{color:hsla(0,0%,100%,.85)}.post-card-excerpt{color:#90a2aa}.author-avatar,.static-avatar{border-color:#1a1c20}.page-template .site-main,.post-full-content,.post-template .site-main,.site-main{background:var(--darkmode)}.post-full-title{color:hsla(0,0%,100%,.9)}.post-full-custom-excerpt{color:#90a2aa}.post-full-image{background-color:#17191c}.post-full-byline{border-top-color:#272a30}.post-full-byline-meta h4 a{color:hsla(0,0%,100%,.75)}.post-full-byline-meta h4 a:hover{color:#fff}.author-list-item .author-card{background:#0e0f11;box-shadow:0 12px 26px rgba(0,0,0,.4)}.author-list-item .author-card:before{border-top-color:#0e0f11}.no-image .author-social-link a{color:hsla(0,0%,100%,.75)}.post-full-content h1,.post-full-content h2,.post-full-content h3,.post-full-content h4,.post-full-content h6{color:hsla(0,0%,100%,.9)}.post-full-content a{color:#fff;box-shadow:inset 0 -1px 0 #fff}.post-full-content em,.post-full-content strong{color:#fff}.post-full-content code{color:#fff;background:#000}hr{border-top-color:#17191c}.post-full-content figcaption{color:hsla(0,0%,100%,.6)}.post-full-content table td:first-child{background-image:linear-gradient(90deg,var(--darkmode) 50%,rgba(5,5,6,0))}.post-full-content table td:last-child{background-image:linear-gradient(270deg,var(--darkmode) 50%,rgba(5,5,6,0))}.post-full-content table th{color:hsla(0,0%,100%,.85);background-color:#17191c}.post-full-content table td,.post-full-content table th{border:1px solid #17191c}.post-full-content .kg-bookmark-container,.post-full-content .kg-bookmark-container:hover{color:hsla(0,0%,100%,.75);box-shadow:0 0 1px hsla(0,0%,100%,.9)}.kg-bookmark-title{color:#fff}.kg-bookmark-description,.kg-bookmark-metadata{color:hsla(0,0%,100%,.75)}.site-archive-header .no-image{color:hsla(0,0%,100%,.9);background:var(--darkmode)}.site-archive-header .no-image .site-header-content{border-bottom-color:#272a30}.site-header-content .author-profile-image{box-shadow:0 0 0 6px hsla(0,0%,100%,.04)}.subscribe-form{border:none;background:linear-gradient(#000,#000)}.subscribe-form-title{color:hsla(0,0%,100%,.9)}.subscribe-form p{color:hsla(0,0%,100%,.7)}.subscribe-email{border-color:#121417;color:hsla(0,0%,100%,.9);background:#0b0c0e}.subscribe-email:focus{border-color:#3e434c}.subscribe-form button{opacity:.9}.subscribe-form .error .message-error,.subscribe-form .invalid .message-error{color:#ed694d}.subscribe-form .success .message-success{color:#abcf51}} +a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,ul,var,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}img{display:block;max-width:100%;height:auto}html{box-sizing:border-box;font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:inherit}a{background-color:transparent}a:active,a:hover{outline:0}b,strong{font-weight:700}dfn,em,i{font-style:italic}h1{margin:.67em 0;font-size:2em}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}mark{background-color:#fdffb6}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;color:inherit;font:inherit}button{overflow:visible;border:none}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input:focus{outline:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{padding:0;border:0}textarea{overflow:auto}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{color:#35373a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:1.6rem;line-height:1.6em;font-weight:400;font-style:normal;letter-spacing:0;text-rendering:optimizeLegibility;background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on}::-moz-selection{text-shadow:none;background:#daf2fd}::selection{text-shadow:none;background:#daf2fd}hr{position:relative;display:block;width:100%;margin:2.5em 0 3.5em;padding:0;height:1px;border:0;border-top:1px solid #f0f0f0}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{margin:0;padding:0;border:0}textarea{resize:vertical}::not(.gh-content) blockquote,::not(.gh-content) dl,::not(.gh-content) ol,::not(.gh-content) p,::not(.gh-content) ul{margin:0 0 1.5em}ol,ul{padding-left:1.3em;padding-right:1.5em}ol ol,ol ul,ul ol,ul ul{margin:.5em 0 1em}ul{list-style:disc}ol{list-style:decimal}ol,ul{max-width:100%}li{padding-left:.3em;line-height:1.6em}li+li{margin-top:.5em}dt{float:left;margin:0 20px 0 0;width:120px;color:#daf2fd;font-weight:500;text-align:right}dd{margin:0 0 5px;text-align:left}blockquote{margin:1.5em 0;padding:0 1.6em;border-left:#daf2fd}blockquote p{margin:.8em 0;font-size:1.2em;font-weight:300}blockquote small{display:inline-block;margin:.8em 0 .8em 1.5em;font-size:.9em;opacity:.8}blockquote small:before{content:"\2014 \00A0"}blockquote cite{font-weight:700}blockquote cite a{font-weight:400}a{color:#15171a;text-decoration:none}h1,h2,h3,h4,h5,h6{margin-top:0;line-height:1.15;font-weight:600;text-rendering:optimizeLegibility;letter-spacing:-.01em}h1{margin:0 0 .5em;font-size:4.8rem;font-weight:700;letter-spacing:-.015em}@media (max-width:600px){h1{font-size:2.8rem}}h2{margin:1.5em 0 .5em;font-size:2.8rem;font-weight:700}@media (max-width:600px){h2{font-size:2.3rem}}h3{margin:1.5em 0 .5em;font-size:2.4rem;font-weight:600}@media (max-width:600px){h3{font-size:1.7rem}}h4{font-size:2.2rem}h4,h5{margin:1.5em 0 .5em}h5{font-size:2rem}h6{margin:1.5em 0 .5em;font-size:1.8rem}:root{--color-green:#a4d037;--color-yellow:#fecd35;--color-red:#f05230;--color-darkgrey:#15171a;--color-midgrey:#738a94;--color-lightgrey:#c5d2d9;--color-wash:#e5eff5;--color-darkmode:#151719;--font-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-serif:Georgia,Times,serif;--font-mono:Menlo,Courier,monospace}.viewport{display:flex;flex-direction:column;min-height:100vh}.outer{position:relative;padding:0 4vmin}.inner{margin:0 auto;max-width:1200px;width:100%}.site-header{position:relative;color:#fff;background:var(--ghost-accent-color)}.site-header-cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.site-header-content{position:relative;z-index:100;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:6vw 3vw;min-height:200px;max-height:340px;text-align:center}.site-title{z-index:10;margin:0 0 .15em;padding:0}.site-logo{max-height:55px}.site-header-content p{z-index:10;max-width:600px;margin:0 auto;line-height:1.2em;opacity:.8}@media (max-width:600px){.site-header-content p{max-width:80vmin;font-size:1.8rem}}.site-home-header{position:relative;z-index:1000;overflow:hidden}.site-header-content{padding:18vmin 4vmin;font-size:2.5rem;font-weight:400}.gh-head,.site-header-content{color:#fff;background:var(--ghost-accent-color)}.gh-head{padding:1vmin 4vmin;font-size:1.6rem;line-height:1.3em}.gh-head a{color:inherit;text-decoration:none}.gh-head-inner{display:grid;grid-gap:2.5vmin;grid-template-columns:auto auto 1fr;grid-auto-flow:row dense}.gh-head-brand{display:flex;align-items:center;height:40px;max-width:200px;text-align:center;word-break:break-all}.gh-head-logo{display:block;padding:10px 0;font-weight:700;font-size:2rem;line-height:1.2em;letter-spacing:-.02em}.gh-head-logo img{max-height:26px}.gh-head-menu{display:flex;align-items:center;font-weight:500}.gh-head-menu .nav{display:inline-flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0}.gh-head-menu .nav li{margin:0 2.5vmin 0 0;padding:0}.gh-head-menu .nav a{display:inline-block;padding:5px 0;opacity:.8}.gh-head-menu .nav a:hover{opacity:1}.gh-head-actions{display:flex;list-style:none;text-align:right}.gh-head-actions,.gh-head-actions-list{justify-content:flex-end;align-items:center}.gh-head-actions-list{display:inline-flex;flex-wrap:wrap}.gh-head-actions-list a:not([class]){display:inline-block;margin:0 0 0 1.5vmin;padding:5px 0}.gh-social{margin:0 1.5vmin 0 0}.gh-social a{opacity:.8}.gh-social a+a{margin-left:.8rem}.gh-social a:hover{opacity:1}.gh-social svg{height:22px;width:22px;fill:#fff}.gh-social-facebook svg{height:20px;width:20px}a.gh-head-button{display:block;padding:8px 15px;color:var(--color-darkgrey);font-weight:500;letter-spacing:-.015em;font-size:1.5rem;line-height:1em;background:#fff;border-radius:30px}.gh-burger{position:relative;display:none;cursor:pointer}.gh-burger-box{position:relative;display:flex;align-items:center;justify-content:center;width:33px;height:33px}.gh-burger-inner{width:100%;height:100%}.gh-burger-box:before{transition:transform .3s cubic-bezier(.2,.6,.3,1),width .3s cubic-bezier(.2,.6,.3,1)}.gh-burger-box:before,.gh-burger-inner:after,.gh-burger-inner:before{position:absolute;display:block;top:0;left:0;bottom:0;margin:auto;content:"";width:100%;height:1px;background:currentcolor;will-change:transform,width}.gh-burger-inner:after,.gh-burger-inner:before{transition:transform .25s cubic-bezier(.2,.7,.3,1),width .25s cubic-bezier(.2,.7,.3,1)}.gh-burger-inner:before{transform:translatey(-6px)}.gh-burger-inner:after{transform:translatey(6px)}body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner:before{transform:translatey(-8px)}body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner:after{transform:translatey(8px)}.gh-head-open .gh-burger-box:before{width:0;transform:translatex(19px);transition:transform .2s cubic-bezier(.2,.7,.3,1),width .2s cubic-bezier(.2,.7,.3,1)}.gh-head-open .gh-burger-inner:before{width:26px;transform:translatex(6px) rotate(135deg)}.gh-head-open .gh-burger-inner:after{width:26px;transform:translatex(6px) rotate(-135deg)}@media (max-width:900px){.gh-burger{display:inline-block}#gh-head{transition:all .4s ease-out;overflow:hidden}#gh-head .gh-head-inner{height:100%;grid-template-columns:1fr}#gh-head .gh-head-brand{position:relative;z-index:10;grid-column-start:auto;max-width:none;display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.home-template #gh-head .gh-head-brand{justify-content:flex-end}#gh-head .gh-head-menu{align-self:center;display:flex;flex-direction:column;align-items:center;text-align:center;margin:0 0 10vh;font-weight:300;font-size:3.6rem;line-height:1.1em}#gh-head .gh-head-menu .nav li{margin:5px 0}#gh-head .gh-head-menu .nav a{padding:8px 0}#gh-head .gh-head-menu .nav{display:flex;flex-direction:column;align-items:center}#gh-head .gh-head-actions{padding:20px 0;justify-content:center;text-align:left}#gh-head .gh-head-actions a{margin:0 10px}#gh-head .gh-head-actions,#gh-head .gh-head-menu{display:none}.gh-head-open{overflow:hidden;height:100vh}.gh-head-open #gh-head{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3999999;overflow-y:scroll}.gh-head-open #gh-head .gh-head-inner{grid-template-rows:auto 1fr auto}.gh-head-open #gh-head .gh-head-actions,.gh-head-open #gh-head .gh-head-menu{display:flex}}@media (max-width:600px){#gh-head .gh-head-menu{font-size:6vmin}}.home-template .gh-head{position:absolute;top:0;right:0;left:0;z-index:2000}.home-template .gh-head.has-cover{background:transparent}.home-template.gh-head-open .gh-head{background:var(--ghost-accent-color)}.home-template .gh-head-logo{display:none}.home-template .gh-head-menu{margin-left:-2.5vmin}.post-feed{position:relative;display:grid;grid-gap:4vmin;grid-template-columns:1fr 1fr 1fr;padding:4vmin 0}@media (max-width:1000px){.post-feed{grid-template-columns:1fr 1fr}}@media (max-width:700px){.post-feed{grid-template-columns:1fr;grid-gap:40px}}.post-card{position:relative;flex:1 1 301px;display:flex;flex-direction:column;min-height:220px;background-size:cover;word-break:break-word}.post-card-image-link{position:relative;display:block;overflow:hidden;border-radius:3px}.post-card-image{width:100%;height:200px;background:var(--color-lightgrey) no-repeat 50%;-o-object-fit:cover;object-fit:cover}.post-card-content-link{position:relative;display:block;color:var(--color-darkgrey)}.post-card-content-link:hover{text-decoration:none}.post-card-header{margin:20px 0 0}.post-feed .no-image .post-card-content-link{padding:0}.no-image .post-card-header{margin-top:0}.post-card-primary-tag{margin:0 0 .2em;color:var(--ghost-accent-color);font-size:1.2rem;font-weight:500;letter-spacing:.2px;text-transform:uppercase}.post-card-title{margin:0 0 .4em;font-size:2.4rem;transition:color .2s ease-in-out}.no-image .post-card-title{margin-top:0}.post-card-content{flex-grow:1;display:flex;flex-direction:column}.post-card-excerpt{max-width:56em;color:#60757e}.post-card-excerpt p{margin-bottom:1em;display:-webkit-box;overflow-y:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;word-break:break-word}.post-card-meta{display:flex;align-items:center;padding:0}.author-profile-image,.avatar-wrapper{display:block;width:100%;height:100%;background:#e4eaed;border-radius:100%;-o-object-fit:cover;object-fit:cover}.post-card-meta .avatar-wrapper,.post-card-meta .profile-image-wrapper{position:relative}.author-list{display:flex;flex-wrap:wrap;margin:0 0 0 4px;padding:0;list-style:none}.author-list-item{position:relative;flex-shrink:0;margin:0;padding:0}.static-avatar{display:block;overflow:hidden;margin:0 0 0 -6px;width:36px;height:36px;border-radius:100%;box-shadow:0 0 0 1px hsla(0,0%,100%,.2)}.post-card-byline-content{flex:1 1 50%;display:flex;flex-direction:column;margin:0 0 0 8px;color:#90a2aa;font-size:1.4rem;line-height:1.2em;font-weight:400}.post-card-byline-content span{margin:0}.post-card-byline-content a{color:#373c44;font-weight:600}.post-card-byline-date{font-size:1.3rem;line-height:1.5em}.post-card-byline-date .bull{display:inline-block;margin:0 2px;opacity:.6}.single-author-byline{display:flex;flex-direction:column;margin-left:5px;color:#5c7078;font-size:1.3rem;line-height:1.4em;font-weight:500}.single-author{display:flex;align-items:center}.single-author .static-avatar{margin-left:-2px}.single-author-name{display:inline-block}@media (min-width:1001px){.post-card-large{grid-column:1/span 3;display:grid;grid-gap:4vmin;grid-template-columns:1fr 1fr 1fr;min-height:280px;border-top:0}.post-card-large:not(.no-image) .post-card-header{margin-top:0}.post-card-large .post-card-image-link{position:relative;grid-column:1/span 2;margin-bottom:0;min-height:380px}.post-card-large .post-card-image{position:absolute;width:100%;height:100%}.post-card-large .post-card-content{justify-content:center}.post-card-large .post-card-title{margin-top:0;font-size:3.2rem}.post-card-large .post-card-excerpt p{margin-bottom:1.5em;font-size:1.7rem;line-height:1.55em;-webkit-line-clamp:8}}@media (max-width:500px){.post-card-title{font-size:1.9rem}.post-card-excerpt{font-size:1.6rem}}.article{padding:8vmin 0;word-break:break-word}.article-header{padding:0 0 6vmin}.article-tag{display:flex;justify-content:flex-start;align-items:center;margin:0 0 .5rem;color:var(--color-midgrey);font-size:1.3rem;line-height:1.4em;letter-spacing:.02em;font-weight:600;text-transform:uppercase}.article-tag a{color:var(--ghost-accent-color)}.article-title{color:#0a0b0c}.article-excerpt{margin:0 0 1rem;font-size:2rem;line-height:1.4em;opacity:.6}.gh-canvas .article-image{grid-column:wide-start/wide-end;width:100%;margin:6vmin 0 0}.gh-canvas .article-image img{display:block;margin-left:auto;margin-right:auto;width:100%}@media (max-width:600px){.article-excerpt{font-size:1.8rem}}.gh-canvas{display:grid;grid-template-columns:[full-start] minmax(4vmin,auto) [wide-start] minmax(auto,240px) [main-start] min(720px,calc(100% - 8vw)) [main-end] minmax(auto,240px) [wide-end] minmax(4vmin,auto) [full-end]}.gh-canvas>*{grid-column:main-start/main-end}.kg-width-wide{grid-column:wide-start/wide-end}.kg-width-full{grid-column:full-start/full-end}.kg-width-full img{width:100%}.gh-content>*+*{margin-top:4vmin;margin-bottom:0}.gh-content>[id]{margin:0;color:var(--color-darkgrey)}.gh-content>[id]:not(:first-child){margin:2em 0 0}.gh-content>[id]+*{margin-top:1.5rem!important}.gh-content>blockquote,.gh-content>hr{position:relative;margin-top:6vmin}.gh-content>blockquote+*,.gh-content>hr+*{margin-top:6vmin!important}.gh-content a{color:var(--ghost-accent-color);text-decoration:underline;word-break:break-word}.gh-content>blockquote,.gh-content>dl,.gh-content>ol,.gh-content>p,.gh-content>ul{font-family:var(--font-serif);font-weight:400;font-size:2.1rem;line-height:1.6em}.gh-content>dl,.gh-content>ol,.gh-content>ul{padding-left:1.9em}.gh-content>blockquote{position:relative;font-style:italic;padding:0}.gh-content>blockquote:before{content:"";position:absolute;left:-1.5em;top:0;bottom:0;width:.3rem;background:var(--ghost-accent-color)}.gh-content :not(pre)>code{vertical-align:middle;padding:.15em .4em;border:1px solid #e1eaef;font-weight:400!important;font-size:.9em;line-height:1em;color:#15171a;background:#f0f6f9;border-radius:.25em}.gh-content pre{overflow:auto;padding:16px 20px;color:var(--color-wash);font-size:1.4rem;line-height:1.5em;background:var(--color-darkgrey);border-radius:5px;box-shadow:0 2px 6px -2px rgba(0,0,0,.1),0 0 1px rgba(0,0,0,.4)}@media (max-width:650px){.gh-content blockquote,.gh-content dl,.gh-content ol,.gh-content p,.gh-content ul{font-size:1.7rem}.gh-content blockquote:before{left:-4vmin}}.gh-content .kg-card+:not(.kg-card),.gh-content :not(.kg-card):not([id])+.kg-card{margin-top:6vmin;margin-bottom:0}.kg-embed-card{display:flex;flex-direction:column;align-items:center;width:100%}.kg-image-card img{margin:auto}.kg-card figcaption{padding:1.5rem 1.5rem 0;text-align:center;color:rgba(0,0,0,.5);font-weight:600;font-size:1.3rem;line-height:1.4em}.kg-card figcaption strong{color:rgba(0,0,0,.8)}iframe.instagram-media{margin:6vmin auto 0!important}iframe.instagram-media+script+:not([id]){margin-top:6vmin}.kg-gallery-card+.kg-gallery-card,.kg-gallery-card+.kg-image-card,.kg-image-card+.kg-gallery-card{margin-top:.75em}.kg-gallery-card.kg-card-hascaption+.kg-gallery-card,.kg-gallery-card.kg-card-hascaption+.kg-image-card,.kg-image-card.kg-card-hascaption+.kg-gallery-card{margin-top:1.75em}.kg-gallery-container{position:relative}.kg-gallery-row{display:flex;flex-direction:row;justify-content:center}.kg-gallery-image img{display:block;margin:0;width:100%;height:100%}.kg-gallery-row:not(:first-of-type){margin:.75em 0 0}.kg-gallery-image:not(:first-of-type){margin:0 0 0 .75em}.kg-bookmark-card,.kg-bookmark-publisher{position:relative;width:100%}.kg-bookmark-container,.kg-bookmark-container:hover{display:flex;color:currentColor;font-family:var(--font-sans-serif);text-decoration:none!important;background:hsla(0,0%,100%,.6);border-radius:5px;box-shadow:0 2px 6px -2px rgba(0,0,0,.1),0 0 1px rgba(0,0,0,.4);overflow:hidden}.kg-bookmark-content{display:flex;flex-direction:column;flex-grow:1;flex-basis:100%;align-items:flex-start;justify-content:flex-start;padding:20px}.kg-bookmark-title{font-size:1.5rem;line-height:1.4em;font-weight:600;color:#15171a}.kg-bookmark-description{display:-webkit-box;font-size:1.4rem;line-height:1.5em;margin-top:3px;color:#626d79;font-weight:400;max-height:44px;overflow-y:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.kg-bookmark-metadata{display:flex;align-items:center;margin-top:22px;width:100%;color:#394047;font-size:1.4rem;font-weight:500}.kg-bookmark-icon{width:20px;height:20px;margin-right:6px}.kg-bookmark-author,.kg-bookmark-publisher{display:inline}.kg-bookmark-publisher{text-overflow:ellipsis;overflow:hidden;max-width:240px;white-space:nowrap;display:block;line-height:1.65em}.kg-bookmark-metadata>span:nth-of-type(2){color:#626d79;font-weight:400}.kg-bookmark-metadata>span:nth-of-type(2):before{content:"•";color:#394047;margin:0 6px}.kg-bookmark-thumbnail{position:relative;flex-grow:1;min-width:33%}.kg-bookmark-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;left:0;border-radius:0 4px 4px 0}.kg-width-full.kg-card-hascaption{display:grid;grid-template-columns:inherit}.kg-width-wide.kg-card-hascaption img{grid-column:wide-start/wide-end}.kg-width-full.kg-card-hascaption img{grid-column:1/-1}.kg-width-full.kg-card-hascaption figcaption{grid-column:main-start/main-end}.article-comments{margin:6vmin 0 0}.footnotes-sep{margin-bottom:30px}.footnotes{font-size:1.5rem}.footnotes p{margin:0}.footnote-backref{font-size:1.2rem;font-weight:700;text-decoration:none!important;box-shadow:none!important}.post-full-content table{display:inline-block;overflow-x:auto;margin:.5em 0 2.5em;max-width:100%;width:auto;border-spacing:0;border-collapse:collapse;font-family:var(--font-sans-serif);font-size:1.6rem;white-space:nowrap;vertical-align:top;-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse at left,rgba(0,0,0,.2) 0,transparent 75%) 0,radial-gradient(ellipse at right,rgba(0,0,0,.2) 0,transparent 75%) 100%;background-attachment:scroll,scroll;background-size:10px 100%,10px 100%;background-repeat:no-repeat}.post-full-content table td:first-child{background-image:linear-gradient(90deg,#fff 50%,hsla(0,0%,100%,0));background-size:20px 100%;background-repeat:no-repeat}.post-full-content table td:last-child{background-image:linear-gradient(270deg,#fff 50%,hsla(0,0%,100%,0));background-position:100% 0;background-size:20px 100%;background-repeat:no-repeat}.post-full-content table th{color:var(--color-darkgrey);font-size:1.2rem;font-weight:700;letter-spacing:.2px;text-align:left;text-transform:uppercase;background-color:#f4f8fb}.post-full-content table td,.post-full-content table th{padding:6px 12px;border:1px solid #e2ecf3}.article-byline{display:flex;justify-content:space-between;margin:20px 0 0}.article-byline-content{flex-grow:1;display:flex;align-items:center}.article-byline-content .author-list{justify-content:flex-start;padding:0 12px 0 0}.article-byline-meta{color:#738a94;font-size:1.4rem;line-height:1.2em}.article-byline-meta h4{margin:0 0 3px;font-size:1.6rem}.article-byline-meta .bull{display:inline-block;margin:0 2px;opacity:.6}.author-avatar{display:block;overflow:hidden;margin:0 -4px;width:50px;height:50px;border:2px solid #fff;border-radius:100%;transition:all .5s cubic-bezier(.4,.01,.165,.99) .7s}.basic-info .avatar-wrapper{position:relative;margin:0;width:60px;height:60px;border:none;background:rgba(229,239,245,.1)}.basic-info .avatar-wrapper svg{margin:0;width:60px;height:60px;opacity:.15}.page-template .article-title{margin-bottom:0}.footer-cta{position:relative;padding:9vmin 4vmin 10vmin;color:#fff;text-align:center;background:var(--color-darkgrey)}.footer-cta h2{margin:0 0 30px;font-size:3.2rem}@media (max-width:600px){.footer-cta h2{font-size:2.65rem}}.footer-cta-button{position:relative;display:inline-flex;align-items:center;justify-content:space-between;width:100%;max-width:500px;padding:5px 5px 5px 15px;font-size:1.8rem;color:var(--color-midgrey);background:#fff;border-radius:8px}.footer-cta-button span{display:inline-block;padding:10px 20px;color:#fff;font-weight:500;background:var(--ghost-accent-color);border-radius:5px}.read-more-wrap{width:100%;padding:4vmin;margin:0 auto -40px;border-bottom:1px solid hsla(0,0%,100%,.1);background:#0a0b0c}.read-more{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:4vmin}.read-more .post-card-title{color:#fff;opacity:.8}.read-more .post-card-excerpt{color:hsla(0,0%,100%,.6)}.read-more .post-card-byline-content a{color:#fff}@media (max-width:1000px){.read-more{grid-template-columns:1fr 1fr}.read-more article:nth-child(3){display:none}}@media (max-width:700px){.read-more{grid-template-columns:1fr}.read-more article:nth-child(2){display:none}}.author-template .posts{position:relative;height:100%;display:grid;grid-template-columns:200px 1fr 1fr;grid-gap:4vmin}.author-template .posts .post-feed{grid-column:2/4;grid-template-columns:1fr 1fr}.author-profile{padding:4vmin 0}.author-profile-content{height:auto;position:-webkit-sticky;position:sticky;top:4vmin;font-size:1.4rem;line-height:1.4em}.author-profile-pic{display:block;width:150px;height:150px;-o-object-fit:cover;object-fit:cover;margin:0 0 2rem;background:#e4eaed;border-radius:50%}.author-profile h1{margin:0 0 .3em;font-size:2rem}.author-profile p{margin:0 0 1.5em;color:#60757e}.author-profile-location{margin:0 0 1.5em;font-weight:700}.author-profile-social-link{display:block;padding:0 0 5px;font-size:1.3rem;color:#60757e;text-overflow:ellipsis;overflow:hidden;max-width:100%;white-space:nowrap}.author-profile-social-link:hover{color:var(--color-darkgrey)}@media (max-width:900px){.author-template .posts .post-feed{grid-template-columns:1fr}}@media (max-width:650px){.author-template .posts{grid-template-columns:1fr;grid-gap:0}.author-template .posts .post-feed{grid-column:1/auto}.author-profile{padding-right:0}.author-profile-content{display:flex;flex-direction:column;align-items:center;text-align:center}}.tag-template .post-card-large .post-card-image-link{grid-column:2/span 2;order:2}.tag-template .post-card-large .post-card-content{order:1}.error-content{padding:14vw 4vw 6vw}.error-message{padding-bottom:10vw;text-align:center}.error-code{margin:0;color:var(--ghost-accent-color);font-size:12vw;line-height:1em;letter-spacing:-5px}.error-description{margin:0;color:var(--color-midgrey);font-size:3.2rem;line-height:1.3em;font-weight:400}.error-link{display:inline-block;margin-top:5px}@media (min-width:940px){.error-content .post-card{margin-bottom:0;padding-bottom:0;border-bottom:none}}@media (max-width:800px){.error-content{padding-top:24vw}.error-code{font-size:11.2rem}.error-message{padding-bottom:16vw}.error-description{margin:5px 0 0;font-size:1.8rem}}@media (max-width:500px){.error-content{padding-top:28vw}.error-message{padding-bottom:14vw}}.site-footer{position:relative;margin:40px 0 0;padding:40px 4vmin 140px;color:#fff;background:#0a0b0c}.site-footer .inner{display:grid;grid-gap:40px;grid-template-columns:auto 1fr auto;color:hsla(0,0%,100%,.7);font-size:1.3rem}.site-footer .copyright a{color:#fff;letter-spacing:-.015em;font-weight:500}.site-footer a{color:hsla(0,0%,100%,.7)}.site-footer a:hover{color:#fff;text-decoration:none}.site-footer-nav ul{display:flex;justify-content:center;flex-wrap:wrap;margin:0 0 20px;padding:0;list-style:none}.site-footer-nav li{display:inline-flex;align-items:center;padding:0;margin:0;line-height:2em}.site-footer-nav a{position:relative;display:inline-flex;align-items:center;margin-left:10px}.site-footer-nav li:not(:first-child) a:before{content:"";display:block;width:2px;height:2px;margin:0 10px 0 0;background:#fff;border-radius:100%}@media (max-width:800px){.site-footer .inner{max-width:500px;grid-template-columns:1fr;grid-gap:0;text-align:center}.site-footer .copyright,.site-footer .copyright a{color:#fff;font-size:1.5rem}}html.dark-mode body{color:hsla(0,0%,100%,.75);background:var(--color-darkmode)}html.dark-mode img{opacity:.9}html.dark-mode .post-card,html.dark-mode .post-card:hover{border-bottom-color:#282b2f}html.dark-mode .post-card-byline-content a{color:hsla(0,0%,100%,.75)}html.dark-mode .post-card-byline-content a:hover{color:#fff}html.dark-mode .post-card-image{background:var(--color-darkmode)}html.dark-mode .post-card-title{color:hsla(0,0%,100%,.85)}html.dark-mode .post-card-excerpt{color:#90a2aa}html.dark-mode .post-full-content{background:var(--color-darkmode)}html.dark-mode .article-title{color:hsla(0,0%,100%,.9)}html.dark-mode .article-excerpt{color:#90a2aa}html.dark-mode .post-full-image{background-color:#282b2f}html.dark-mode .article-byline{border-top-color:#383d43}html.dark-mode .article-byline-meta h4 a{color:hsla(0,0%,100%,.75)}html.dark-mode .article-byline-meta h4 a:hover{color:#fff}html.dark-mode .no-image .author-social-link a{color:hsla(0,0%,100%,.75)}html.dark-mode .gh-content h1,html.dark-mode .gh-content h2,html.dark-mode .gh-content h3,html.dark-mode .gh-content h4,html.dark-mode .gh-content h5,html.dark-mode .gh-content h6{color:hsla(0,0%,100%,.9)}html.dark-mode .gh-content pre{background:#030303}html.dark-mode .gh-content :not(pre)>code{background:#23262b;border-color:#282b2f;color:var(--color-wash)}html.dark-mode .post-full-content a{color:#fff;box-shadow:inset 0 -1px 0 #fff}html.dark-mode .post-full-content em,html.dark-mode .post-full-content strong{color:#fff}html.dark-mode .post-full-content code{color:#fff;background:#000}html.dark-mode hr{border-top-color:#282b2f}html.dark-mode .post-full-content hr:after{background:#282b2f;box-shadow:var(--color-darkmode) 0 0 0 5px}html.dark-mode .gh-content figcaption{color:hsla(0,0%,100%,.6)}html.dark-mode .post-full-content table td:first-child{background-image:linear-gradient(90deg,var(--color-darkmode) 50%,rgba(21,23,25,0))}html.dark-mode .post-full-content table td:last-child{background-image:linear-gradient(270deg,var(--color-darkmode) 50%,rgba(21,23,25,0))}html.dark-mode .post-full-content table th{color:hsla(0,0%,100%,.85);background-color:#282b2f}html.dark-mode .post-full-content table td,html.dark-mode .post-full-content table th{border:1px solid #282b2f}html.dark-mode .post-full-content .kg-bookmark-container,html.dark-mode .post-full-content .kg-bookmark-container:hover{color:hsla(0,0%,100%,.75);box-shadow:0 0 1px hsla(0,0%,100%,.9)}html.dark-mode .post-full-content input{color:#303a3e}html.dark-mode .kg-bookmark-title{color:#fff}html.dark-mode .kg-bookmark-description,html.dark-mode .kg-bookmark-metadata{color:hsla(0,0%,100%,.75)}html.dark-mode .site-archive-header .no-image{color:hsla(0,0%,100%,.9);background:var(--color-darkmode)}html.dark-mode .subscribe-form{border:none;background:linear-gradient(#070808,#0e0f11)}html.dark-mode .subscribe-form-title{color:hsla(0,0%,100%,.9)}html.dark-mode .subscribe-form p{color:hsla(0,0%,100%,.7)}html.dark-mode .subscribe-email{border-color:#23262a;color:hsla(0,0%,100%,.9);background:#1c1f21}html.dark-mode .subscribe-email:focus{border-color:#4f575e}html.dark-mode .subscribe-form button{opacity:.9}html.dark-mode .subscribe-form .error .message-error,html.dark-mode .subscribe-form .invalid .message-error{color:#ed694d}html.dark-mode .subscribe-form .success .message-success{color:#abcf51} /*# sourceMappingURL=screen.css.map */ \ No newline at end of file diff --git a/assets/built/screen.css.map b/assets/built/screen.css.map index 48a05cc..a8f34d6 100644 --- a/assets/built/screen.css.map +++ b/assets/built/screen.css.map @@ -1 +1 @@ -{"version":3,"sources":["global.css","screen.css"],"names":[],"mappings":"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","file":"screen.css","sourcesContent":["/* Variables\n/* ---------------------------------------------------------- */\n\n:root {\n /* Colours */\n --blue: #3eb0ef;\n --green: #a4d037;\n --purple: #ad26b4;\n --yellow: #fecd35;\n --red: #f05230;\n --darkgrey: #15171A;\n --midgrey: #738a94;\n --lightgrey: #c5d2d9;\n --whitegrey: #e5eff5;\n --pink: #fa3a57;\n --brown: #a3821a;\n --darkmode: color-mod(var(--darkgrey) l(+2%));\n}\n\n/* Reset\n/* ---------------------------------------------------------- */\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n}\nbody {\n line-height: 1;\n}\nol,\nul {\n list-style: none;\n}\nblockquote,\nq {\n quotes: none;\n}\nblockquote:before,\nblockquote:after,\nq:before,\nq:after {\n content: \"\";\n content: none;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\nimg {\n max-width: 100%;\n}\nhtml {\n box-sizing: border-box;\n font-family: sans-serif;\n\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\n*,\n*:before,\n*:after {\n box-sizing: inherit;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nb,\nstrong {\n font-weight: bold;\n}\ni,\nem,\ndfn {\n font-style: italic;\n}\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nmark {\n background-color: #fdffb6;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 3 */\n color: inherit; /* 1 */\n font: inherit; /* 2 */\n}\nbutton {\n overflow: visible;\n border: none;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\n/* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n cursor: pointer; /* 3 */\n\n -webkit-appearance: button; /* 2 */\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\ninput {\n line-height: normal;\n}\ninput:focus {\n outline: none;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n box-sizing: content-box; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nlegend {\n padding: 0; /* 2 */\n border: 0; /* 1 */\n}\ntextarea {\n overflow: auto;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\ntd,\nth {\n padding: 0;\n}\n\n/* ==========================================================================\n Base styles: opinionated defaults\n ========================================================================== */\n\nhtml {\n overflow-x: hidden;\n overflow-y: scroll;\n font-size: 62.5%;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n overflow-x: hidden;\n color: color-mod(var(--midgrey) l(-30%));\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n font-size: 1.6rem;\n line-height: 1.6em;\n font-weight: 400;\n font-style: normal;\n letter-spacing: 0;\n text-rendering: optimizeLegibility;\n background: #fff;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n -moz-font-feature-settings: \"liga\" on;\n}\n\n::selection {\n text-shadow: none;\n background: color-mod(var(--blue) lightness(+30%));\n}\n\nhr {\n position: relative;\n display: block;\n width: 100%;\n margin: 2.5em 0 3.5em;\n padding: 0;\n height: 1px;\n border: 0;\n border-top: 1px solid color-mod(var(--lightgrey) l(+10%));\n}\n\naudio,\ncanvas,\niframe,\nimg,\nsvg,\nvideo {\n vertical-align: middle;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n border: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\np,\nul,\nol,\ndl,\nblockquote {\n margin: 0 0 1.5em 0;\n}\n\nol,\nul {\n padding-left: 1.3em;\n padding-right: 1.5em;\n}\n\nol ol,\nul ul,\nul ol,\nol ul {\n margin: 0.5em 0 1em;\n}\n\nul {\n list-style: disc;\n}\n\nol {\n list-style: decimal;\n}\n\nul,\nol {\n max-width: 100%;\n}\n\nli {\n margin: 0.5em 0;\n padding-left: 0.3em;\n line-height: 1.6em;\n}\n\ndt {\n float: left;\n margin: 0 20px 0 0;\n width: 120px;\n color: var(--darkgrey);\n font-weight: 500;\n text-align: right;\n}\n\ndd {\n margin: 0 0 5px 0;\n text-align: left;\n}\n\nblockquote {\n margin: 1.5em 0;\n padding: 0 1.6em 0 1.6em;\n border-left: var(--whitegrey) 0.5em solid;\n}\n\nblockquote p {\n margin: 0.8em 0;\n font-size: 1.2em;\n font-weight: 300;\n}\n\nblockquote small {\n display: inline-block;\n margin: 0.8em 0 0.8em 1.5em;\n font-size: 0.9em;\n opacity: 0.8;\n}\n/* Quotation marks */\nblockquote small:before {\n content: \"\\2014 \\00A0\";\n}\n\nblockquote cite {\n font-weight: bold;\n}\nblockquote cite a {\n font-weight: normal;\n}\n\na {\n color: color-mod(var(--blue) l(-5%));\n text-decoration: none;\n}\n\na:hover {\n text-decoration: underline;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-top: 0;\n line-height: 1.15;\n font-weight: 600;\n text-rendering: optimizeLegibility;\n}\n\nh1 {\n margin: 0 0 0.5em 0;\n font-size: 5.5rem;\n font-weight: 600;\n}\n@media (max-width: 500px) {\n h1 {\n font-size: 2.2rem;\n }\n}\n\nh2 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.2rem;\n}\n@media (max-width: 500px) {\n h2 {\n font-size: 1.8rem;\n }\n}\n\nh3 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.8rem;\n font-weight: 500;\n}\n@media (max-width: 500px) {\n h3 {\n font-size: 1.7rem;\n }\n}\n\nh4 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.6rem;\n font-weight: 500;\n}\n\nh5 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.4rem;\n font-weight: 500;\n}\n\nh6 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.4rem;\n font-weight: 500;\n}\n","/* Table of Contents\n/* ------------------------------------------------------------\n\nThis is a development CSS file which is built to a minified\nproduction stylesheet in assets/built/screen.css\n\n1. Global Styles\n2. Layout\n3. Special Templates\n4. Site Header\n 4.1 Home header\n 4.2 Archive header\n5. Site Navigation\n6. Post Feed\n7. Single Post\n 7.1. Post Byline\n 7.2. Members Subscribe Form\n 7.3. Comments\n 7.4. Related Posts\n 7.5. Koenig Styles\n8. Author Template\n9. Error Template\n10. Subscribe Overlay\n11. Site Footer\n12. Dark Mode\n\n*/\n\n\n/* 1. Global - Set up the things\n/* ---------------------------------------------------------- */\n@import \"global.css\";\n\nbody {\n background: #fff;\n}\n\n.img {\n display: block;\n width: 100%;\n height: 100%;\n background-position: center center;\n background-size: cover;\n border-radius: 100%;\n}\n\n.hidden {\n visibility: hidden;\n position: absolute;\n text-indent: -9999px;\n}\n\n\n/* 2. Layout - Page building blocks\n/* ---------------------------------------------------------- */\n\n.site-wrapper {\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n}\n\n.site-main {\n z-index: 100;\n flex-grow: 1;\n}\n\n/* Full width page blocks */\n.outer {\n position: relative;\n padding: 0 5vw;\n}\n\n/* Centered content container blocks */\n.inner {\n margin: 0 auto;\n max-width: 1040px;\n width: 100%;\n}\n\n/* Usage:\n\n
\n
\n Centered content\n
\n
\n\n*/\n\n/* 3. Special Template Styles\n/* ---------------------------------------------------------- */\n\n@media (min-width: 900px) {\n .home-template .post-feed,\n .tag-template .post-feed,\n .author-template .post-feed {\n padding: 40px 0 5vw;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n }\n\n .home-template .site-nav {\n position: relative;\n }\n}\n\n\n/* 4. Site Header\n/* ---------------------------------------------------------- */\n\n.site-header-background {\n position: relative;\n margin-top: 64px;\n padding-bottom: 12px;\n color: #fff;\n background: color-mod(var(--darkgrey) l(-5%)) no-repeat center center;\n background-size: cover;\n}\n\n.site-header-background:before {\n content: \"\";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 10;\n display: block;\n background: rgba(0,0,0,0.18);\n}\n\n.site-header-background:after {\n content: \"\";\n position: absolute;\n top: 0;\n right: 0;\n bottom: auto;\n left: 0;\n z-index: 10;\n display: block;\n height: 140px;\n background: linear-gradient(rgba(0,0,0,0.15),rgba(0,0,0,0));\n}\n\n.site-header-background.no-image:before,\n.site-header-background.no-image:after {\n display: none;\n}\n\n.site-header-content {\n z-index: 100;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 6vw 3vw;\n min-height: 200px;\n max-height: 340px;\n}\n\n.site-title {\n z-index: 10;\n margin: 0 0 0 -2px;\n padding: 0;\n font-size: 5.0rem;\n line-height: 1em;\n font-weight: 600;\n}\n\n.site-logo {\n max-height: 55px;\n}\n\n.site-description {\n z-index: 10;\n margin: 0;\n padding: 5px 0;\n font-size: 2.1rem;\n line-height: 1.4em;\n font-weight: 400;\n opacity: 0.8;\n}\n\n/* 4.1 Home header\n/* ---------------------------------------------------------- */\n\n.site-home-header {\n z-index: 1000;\n}\n\n.site-home-header .site-header-background {\n margin-top: 0;\n}\n\n.site-home-header .site-header-content {\n padding: 5vw 3vw 6vw;\n}\n\n.site-home-header .site-title {\n font-size: 5.5rem;\n text-align: center;\n}\n\n.site-home-header .site-description {\n font-size: 2.2rem;\n font-weight: 300;\n text-align: center;\n}\n\n\n/* 4.2 Archive header (tag and author post lists)\n/* ---------------------------------------------------------- */\n\n.site-archive-header .site-header-content {\n position: relative;\n align-items: stretch;\n padding: 12vw 0 20px;\n min-height: 200px;\n max-height: 600px;\n}\n\n.site-archive-header .no-image {\n padding-top: 0;\n padding-bottom: 0;\n color: var(--darkgrey);\n background: #fff;\n opacity: 1.0;\n}\n\n.site-archive-header .no-image .site-description {\n color: var(--midgrey);\n opacity: 1.0;\n}\n\n\n.site-archive-header .no-image .site-header-content {\n padding: 5vw 0 10px;\n border-bottom: 1px solid color-mod(var(--lightgrey) l(+12%));\n}\n\n\n/* Special header styles for smaller screens */\n\n@media (max-width: 900px) {\n .site-header-content {\n padding-bottom: 9vw;\n }\n}\n\n@media (max-width: 500px) {\n .site-home-header .site-title {\n font-size: 4.2rem;\n }\n\n .site-home-header .site-description {\n font-size: 1.8rem;\n }\n\n .site-archive-header .site-header-content {\n flex-direction: column;\n align-items: center;\n min-height: unset;\n }\n\n .site-archive-header .site-title {\n font-size: 4.2rem;\n text-align: center;\n }\n\n .site-archive-header .no-image .site-header-content {\n padding: 12vw 0 20px;\n }\n}\n\n\n/* 5. Site Navigation\n/* ---------------------------------------------------------- */\n\n.site-nav-main {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1000;\n background: color-mod(var(--darkgrey) l(-5%));\n}\n\n.site-nav {\n position: relative;\n z-index: 100;\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n overflow: hidden;\n height: 64px;\n font-size: 1.3rem;\n}\n\n.site-nav-left-wrapper {\n position: relative;\n flex: 1 0 auto;\n display: flex;\n}\n\n.site-header-background:not(.responsive-header-img) .site-nav-left-wrapper:after,\n.site-nav-main .site-nav-left-wrapper:after {\n content: \"\";\n position: absolute;\n top: 0;\n z-index: 1000;\n width: 40px;\n height: 100%;\n}\n\n.site-header-background:not(.responsive-header-img) .site-nav-left-wrapper:after,\n.site-nav-main .site-nav-left-wrapper:after {\n right: 0;\n background: linear-gradient(to right, color-mod(var(--darkgrey) l(-5%) a(0)) 0%,color-mod(var(--darkgrey) l(-5%)) 100%);\n}\n\n.site-nav-left {\n flex: 1 0 auto;\n display: flex;\n align-items: center;\n overflow-x: auto;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n margin-right: 10px;\n padding: 10px 0 80px;\n font-weight: 500;\n letter-spacing: 0.2px;\n text-transform: uppercase;\n white-space: nowrap;\n\n -ms-overflow-scrolling: touch;\n}\n\n.site-nav-left .nav li:last-of-type {\n padding-right: 20px;\n}\n\n/* Site Nav Hack Explanation (above):\n\nWhat's happening above is .site-nav-left is set to overflow-x and allow sideways scrolling, so that when there isn't enough space for all nav items (either due to lots of nav items, or a small viewport), you can still scroll side-to-side to reach them. Also, there is a small gradient on the left and right side covering the menu so that the menu goes offscreen smoothly.\n\nThe knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px of padding-bottom and a 40px fixed height parent (.site-nav) hides that entirely. Slightly hacky code. But nice clean end-result.\n\n*/\n\n.site-nav-logo {\n position: relative;\n z-index: 100;\n flex-shrink: 0;\n display: inline-block;\n margin-right: 32px;\n padding: 12px 0;\n color: #fff;\n font-size: 1.7rem;\n line-height: 1.8rem;\n font-weight: bold;\n letter-spacing: -0.5px;\n text-transform: none;\n}\n\n.site-nav-logo:hover {\n text-decoration: none;\n}\n\n.site-nav-logo img {\n display: block;\n width: auto;\n height: 21px;\n}\n\n.site-home-header .site-nav-logo {\n display: none;\n}\n\n.site-nav-content {\n position: relative;\n align-self: flex-start;\n}\n\n.nav {\n position: absolute;\n z-index: 1000;\n display: flex;\n margin: 0 0 0 -12px;\n padding: 0;\n list-style: none;\n transition: all 1.0s cubic-bezier(0.19, 1, 0.22, 1);\n}\n\n.nav li {\n display: block;\n margin: 0;\n padding: 0;\n}\n\n.nav li a {\n position: relative;\n display: block;\n padding: 12px 12px;\n color: #fff;\n opacity: 0.8;\n transition: opacity 0.35s ease-in-out;\n}\n\n.nav li a:hover {\n text-decoration: none;\n opacity: 1;\n}\n\n.nav li a:before {\n content: \"\";\n position: absolute;\n right: 100%;\n bottom: 8px;\n left: 12px;\n height: 1px;\n background: #fff;\n opacity: 0.25;\n transition: all 0.35s ease-in-out;\n}\n\n.nav li a:hover:before {\n right: 12px;\n opacity: 0.5;\n}\n\n.nav-post-title-active .nav {\n visibility: hidden;\n opacity: 0;\n transform: translateY(-175%);\n}\n\n.nav-post-title {\n visibility: hidden;\n position: absolute;\n top: 9px;\n color: #fff;\n font-size: 1.7rem;\n font-weight: 400;\n text-transform: none;\n opacity: 0;\n transition: all 1.0s cubic-bezier(0.19, 1, 0.22, 1);\n transform: translateY(175%);\n}\n\n.nav-post-title.dash {\n left: -25px;\n}\n\n.nav-post-title.dash:before {\n content: \"– \";\n opacity: 0.5;\n}\n\n.nav-post-title-active .nav-post-title {\n visibility: visible;\n opacity: 1;\n transform: translateY(0);\n}\n\n.site-nav-right {\n flex: 0 1 auto;\n display: flex;\n justify-content: flex-end;\n align-items: center;\n padding: 10px 0;\n height: 64px;\n}\n\n.site-nav-right .nav {\n position: relative;\n margin: 0;\n}\n\n.site-nav-right .nav a {\n white-space: nowrap;\n}\n\n.site-nav-right .nav a:before {\n display: none;\n}\n\n.site-nav-right .nav li:last-of-type a {\n margin-right: -12px;\n}\n\n.social-links {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n}\n\n.social-link {\n display: inline-block;\n margin: 0;\n padding: 10px;\n opacity: 0.8;\n}\n\n.social-link:hover {\n opacity: 1.0;\n}\n\n.social-link svg {\n height: 1.8rem;\n fill: #fff;\n}\n\n.social-link-fb svg {\n height: 1.6rem;\n}\n\n.social-link-wb svg {\n height: 1.6rem;\n}\n\n.social-link-wb svg path {\n stroke: #fff;\n}\n\n.social-link-rss svg {\n height: 1.9rem;\n}\n\n.subscribe-button {\n display: block;\n margin: 0 0 0 10px;\n padding: 4px 10px;\n border: #fff 1px solid;\n color: #fff;\n line-height: 1em;\n border-radius: 10px;\n opacity: 0.8;\n}\n\n.subscribe-button:hover {\n text-decoration: none;\n opacity: 1;\n}\n\n.site-nav-right .nav + .subscribe-button {\n margin-left: 24px;\n}\n\n.rss-button {\n padding: 10px 8px;\n opacity: 0.8;\n}\n\n.rss-button:hover {\n opacity: 1;\n}\n\n.rss-button svg {\n margin-bottom: 1px;\n height: 2.1rem;\n fill: #fff;\n}\n\n/* Special behaviors for home navigation */\n\n.home-template .site-nav-main {\n z-index: 100;\n}\n\n.home-template .site-nav-main .site-nav {\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;\n}\n\n.home-template .site-nav-main .fixed-nav-active {\n opacity: 1;\n transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.05s;\n}\n\n@media (max-width: 700px) {\n .site-home-header .site-nav {\n margin-left: -5vw;\n }\n\n .site-nav-main {\n padding-right: 0;\n padding-left: 0;\n }\n\n .site-nav-left {\n margin-right: 0;\n padding-left: 5vw;\n }\n\n .site-nav-right {\n display: none;\n }\n}\n\n\n/* 6. Post Feed\n/* ---------------------------------------------------------- */\n\n.posts {\n overflow-x: hidden;\n}\n\n.post-feed {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n margin: 0 -20px;\n padding: 50px 0 0;\n background: #fff;\n}\n\n.post-card {\n position: relative;\n flex: 1 1 301px;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n margin: 0 0 40px;\n padding: 0 20px 40px;\n min-height: 220px;\n border-bottom: 1px solid color-mod(var(--lightgrey) l(+12%));\n background-size: cover;\n}\n\n.post-card-image-link {\n position: relative;\n display: block;\n overflow: hidden;\n border-radius: 3px;\n}\n\n.post-card-image {\n width: 100%;\n height: 200px;\n background: var(--lightgrey) no-repeat center center;\n\n object-fit: cover;\n}\n\n.post-card-content-link {\n position: relative;\n display: block;\n color: var(--darkgrey);\n}\n\n.post-card-content-link:hover {\n text-decoration: none;\n}\n\n.post-card-header {\n margin: 15px 0 0;\n}\n\n.post-feed .no-image .post-card-content-link {\n padding: 0;\n}\n\n.no-image .post-card-header {\n margin-top: 0;\n}\n\n.post-card-primary-tag {\n margin: 0 0 0.2em;\n color: var(--blue);\n font-size: 1.2rem;\n font-weight: 500;\n letter-spacing: 0.2px;\n text-transform: uppercase;\n}\n\n.post-card-title {\n margin: 0 0 0.4em;\n line-height: 1.15em;\n transition: color 0.2s ease-in-out;\n}\n\n.no-image .post-card-title {\n margin-top: 0;\n}\n\n.post-card-content {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n}\n\n.post-card-excerpt {\n max-width: 56em;\n color: var(--midgrey);\n font-family: Georgia, serif;\n}\n\n.post-card-excerpt p {\n margin-bottom: 1em;\n}\n\n.post-card-meta {\n display: flex;\n align-items: flex-start;\n padding: 0;\n}\n\n.author-profile-image,\n.avatar-wrapper {\n display: block;\n width: 100%;\n height: 100%;\n background: color-mod(var(--lightgrey) l(+10%));\n border-radius: 100%;\n\n object-fit: cover;\n}\n\n.post-card-meta .profile-image-wrapper,\n.post-card-meta .avatar-wrapper {\n position: relative;\n}\n\n.author-list {\n display: flex;\n flex-wrap: wrap;\n margin: 0 0 0 4px;\n padding: 0;\n list-style: none;\n}\n\n.author-list-item {\n position: relative;\n flex-shrink: 0;\n margin: 0;\n padding: 0;\n}\n\n.static-avatar {\n display: block;\n overflow: hidden;\n margin: 0 0 0 -6px;\n width: 34px;\n height: 34px;\n border: #fff 2px solid;\n border-radius: 100%;\n}\n\n.author-name-tooltip {\n position: absolute;\n bottom: 105%;\n z-index: 999;\n display: block;\n padding: 2px 8px;\n color: white;\n font-size: 1.2rem;\n letter-spacing: 0.2px;\n white-space: nowrap;\n background: var(--darkgrey);\n border-radius: 3px;\n box-shadow: rgba(39,44,49,0.08) 0 12px 26px, rgba(39, 44, 49, 0.03) 1px 3px 8px;\n opacity: 0;\n transition: all 0.35s cubic-bezier(0.4, 0.01, 0.165, 0.99);\n transform: translateY(6px);\n pointer-events: none;\n}\n\n.author-list-item:hover .author-name-tooltip {\n opacity: 1.0;\n transform: translateY(0px);\n}\n\n@media (max-width: 700px) {\n .author-name-tooltip {\n display: none;\n }\n}\n\n.post-card-byline-content {\n flex: 1 1 50%;\n display: flex;\n flex-direction: column;\n margin: 2px 0 0 6px;\n color: color-mod(var(--midgrey) l(+10%));\n font-size: 1.2rem;\n line-height: 1.4em;\n font-weight: 400;\n letter-spacing: 0.2px;\n text-transform: uppercase;\n}\n\n.post-card-byline-content span {\n margin: 0;\n}\n\n.post-card-byline-content a {\n color: color-mod(var(--darkgrey) l(+20%));\n font-weight: 600;\n}\n\n.post-card-byline-date {\n font-size: 1.2rem;\n}\n\n.post-card-byline-date .bull {\n display: inline-block;\n margin: 0 4px;\n opacity: 0.6;\n}\n\n.single-author-byline {\n display: flex;\n flex-direction: column;\n margin-left: 5px;\n color: color-mod(var(--midgrey) l(-10%));\n font-size: 1.3rem;\n line-height: 1.4em;\n font-weight: 500;\n}\n\n.single-author {\n display: flex;\n align-items: center;\n}\n\n.single-author .static-avatar {\n margin-left: -2px;\n}\n\n.single-author-name {\n display: inline-block;\n}\n\n/* Special Styling for home page grid (below):\n\nThe first post in the list is styled to be bigger than the others and take over\nthe full width of the grid to give it more emphasis. Wrapped in a media query to\nmake sure this only happens on large viewports / desktop-ish devices.\n\n */\n\n@media (min-width: 795px) {\n .post-card-large {\n flex: 1 1 100%;\n flex-direction: row;\n padding-bottom: 40px;\n min-height: 280px;\n border-top: 0;\n }\n\n .post-card-large:hover {\n border-bottom-color: color-mod(var(--lightgrey) l(+10%));\n }\n\n .post-card-large:not(.no-image) .post-card-header {\n margin-top: 0;\n }\n\n .post-card-large .post-card-image-link {\n position: relative;\n flex: 1 1 auto;\n margin-bottom: 0;\n min-height: 380px;\n }\n\n .post-card-large .post-card-image {\n position: absolute;\n width: 100%;\n height: 100%;\n }\n\n .post-card-large .post-card-content {\n flex: 0 1 361px;\n justify-content: center;\n }\n\n .post-card-large .post-card-title {\n margin-top: 0;\n font-size: 3.2rem;\n }\n\n .post-card-large .post-card-content-link {\n padding: 0 0 0 40px;\n }\n\n .post-card-large .post-card-meta {\n padding: 0 0 0 40px;\n }\n\n .post-card-large .post-card-excerpt p {\n margin-bottom: 1.5em;\n font-size: 1.8rem;\n line-height: 1.5em;\n }\n}\n\n\n/* Adjust some margins for smaller screens */\n@media (max-width: 1170px) {\n .post-card {\n margin-bottom: 5vw;\n }\n}\n\n@media (max-width: 650px) {\n .post-feed {\n padding-top: 5vw;\n }\n\n .post-card {\n margin-bottom: 5vw;\n }\n}\n\n@media (max-width: 500px) {\n .post-card-title {\n font-size: 1.9rem;\n }\n\n .post-card-excerpt {\n font-size: 1.6rem;\n }\n}\n\n\n/* 7. Single Post\n/* ---------------------------------------------------------- */\n\n.post-template .site-main,\n.page-template .site-main {\n margin-top: 64px;\n padding-bottom: 4vw;\n background: #fff;\n}\n\n.post-full-header {\n position: relative;\n margin: 0 auto;\n padding: 70px 170px 50px;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n\n.post-full-tags {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n color: var(--midgrey);\n font-size: 1.3rem;\n line-height: 1.4em;\n font-weight: 600;\n text-transform: uppercase;\n}\n\n.post-full-meta-date {\n color: var(--midgrey);\n font-size: 1.2rem;\n font-weight: 400;\n}\n\n@media (max-width: 1170px) {\n .post-full-header {\n padding: 60px 11vw 50px;\n }\n}\n\n@media (max-width: 800px) {\n .post-full-header {\n padding-right: 5vw;\n padding-left: 5vw;\n }\n}\n\n@media (max-width: 500px) {\n .post-full-header {\n padding: 20px 0 35px;\n }\n}\n\n.post-full-title {\n margin: 0 0 0.2em;\n color: color-mod(var(--darkgrey) l(-5%));\n}\n\n.post-full-custom-excerpt {\n margin: 20px 0 0;\n color: var(--midgrey);\n font-family: Georgia, serif;\n font-size: 2.3rem;\n line-height: 1.4em;\n font-weight: 300;\n}\n\n.date-divider {\n display: inline-block;\n margin: 0 6px 1px;\n font-weight: 300;\n}\n\n.post-full-image {\n display: flex;\n flex-direction: column;\n align-items: center;\n overflow: hidden;\n margin: 25px 0 50px;\n background: color-mod(var(--lightgrey) l(+10%));\n border-radius: 3px;\n}\n\n.post-full-image img {\n max-width: 1040px;\n width: 100%;\n height: auto;\n}\n\n.post-full-content {\n position: relative;\n margin: 0 auto;\n padding: 0 170px 6vw;\n min-height: 230px;\n font-family: Georgia, serif;\n font-size: 2.0rem;\n line-height: 1.6em;\n background: #fff;\n}\n\n@media (max-width: 1170px) {\n .post-full-content {\n padding: 0 11vw;\n }\n}\n@media (max-width: 800px) {\n .post-full-content {\n padding: 0 5vw;\n font-size: 1.8rem;\n }\n}\n@media (max-width: 500px) {\n .post-full-custom-excerpt {\n font-size: 1.9rem;\n line-height: 1.5em;\n }\n}\n\n.no-image .post-full-content {\n padding-top: 0;\n}\n\n.no-image .post-full-content:before,\n.no-image .post-full-content:after {\n display: none;\n}\n\n.post-full-content h1,\n.post-full-content h2,\n.post-full-content h3,\n.post-full-content h4,\n.post-full-content h5,\n.post-full-content h6,\n.post-full-content p,\n.post-full-content ul,\n.post-full-content ol,\n.post-full-content dl,\n.post-full-content pre,\n.post-full-content blockquote,\n.post-full-comments,\n.footnotes {\n margin: 0 0 1.5em 0;\n min-width: 100%;\n}\n@media (max-width: 500px) {\n .post-full-content p,\n .post-full-content ul,\n .post-full-content ol,\n .post-full-content dl,\n .post-full-content pre,\n .post-full-comments,\n .footnotes {\n margin-bottom: 1.28em;\n }\n}\n\n.post-full-content li {\n word-break: break-word;\n}\n\n.post-full-content li p {\n margin: 0;\n}\n\n.post-full-content a {\n color: var(--darkgrey);\n word-break: break-word;\n box-shadow: var(--darkgrey) 0 -1px 0 inset;\n transition: all 0.2s ease-in-out;\n}\n\n.post-full-content a:hover {\n color: var(--blue);\n text-decoration: none;\n box-shadow: var(--blue) 0 -1px 0 inset;\n}\n\n.post-full-content strong,\n.post-full-content em {\n color: color-mod(var(--darkgrey) l(-5%));\n}\n\n.post-full-content small {\n display: inline-block;\n line-height: 1.6em;\n}\n\n.post-full-content li:first-child {\n margin-top: 0;\n}\n\n.post-full-content img,\n.post-full-content video {\n display: block;\n margin: 1.5em auto;\n max-width: 1040px;\n height: auto;\n}\n@media (max-width: 1040px) {\n .post-full-content img,\n .post-full-content video {\n width: 100%;\n }\n}\n\n\n/* Full bleed images (#full)\nSuper neat trick courtesy of @JoelDrapper\n\nUsage (In Ghost edtior):\n\n![img](/some/image.jpg#full)\n\n*/\n.post-full-content img[src$=\"#full\"] {\n max-width: none;\n width: 100vw;\n}\n\n\n/* Image captions\n\nUsage (In Ghost editor):\n\n![img](/some/image.jpg)\nYour image caption\n\n*/\n.post-full-content img + br + small {\n display: block;\n margin-top: -3em;\n margin-bottom: 1.5em;\n text-align: center;\n}\n\n\n/* Override third party iframe styles */\n.post-full-content iframe {\n margin: 0 auto !important;\n}\n\n.post-full-content blockquote {\n margin: 0 0 1.5em;\n padding: 0 1.5em;\n border-left: color-mod(var(--blue)) 3px solid;\n}\n@media (max-width: 500px) {\n .post-full-content blockquote {\n padding: 0 1.3em;\n }\n}\n\n.post-full-content blockquote p {\n margin: 0 0 1em 0;\n color: inherit;\n font-size: inherit;\n line-height: inherit;\n font-style: italic;\n}\n\n.post-full-content blockquote p:last-child {\n margin-bottom: 0;\n}\n\n.post-full-content code {\n padding: 0 5px 2px;\n font-size: 0.8em;\n line-height: 1em;\n font-weight: 400!important;\n background: var(--whitegrey);\n border-radius: 3px;\n}\n\n.post-full-content p code {\n word-break: break-all;\n}\n\n.post-full-content pre {\n overflow-x: auto;\n margin: 1.5em 0 3em;\n padding: 20px;\n max-width: 100%;\n border: color-mod(var(--darkgrey) l(-10%)) 1px solid;\n color: var(--whitegrey);\n font-size: 1.4rem;\n line-height: 1.5em;\n background: color-mod(var(--darkgrey) l(-3%));\n border-radius: 5px;\n}\n\n.post-full-content pre ::selection {\n color: color-mod(var(--midgrey) l(-25%));\n}\n\n.post-full-content pre code {\n padding: 0;\n font-size: inherit;\n line-height: inherit;\n background: transparent;\n}\n\n.post-full-content pre code :not(span) {\n color: inherit;\n}\n\n.post-full-content .fluid-width-video-wrapper {\n margin: 1.5em 0 3em;\n}\n\n.post-full-content hr {\n margin: 2em 0;\n}\n\n.post-full-content hr:after {\n content: \"\";\n position: absolute;\n top: -15px;\n left: 50%;\n display: block;\n margin-left: -10px;\n width: 1px;\n height: 30px;\n background: color-mod(var(--lightgrey) l(+10%));\n box-shadow: #fff 0 0 0 5px;\n transform: rotate(45deg);\n}\n\n.post-full-content hr + p {\n margin-top: 1.2em;\n}\n\n.post-full-content h1,\n.post-full-content h2,\n.post-full-content h3,\n.post-full-content h4,\n.post-full-content h5,\n.post-full-content h6 {\n color: color-mod(var(--darkgrey) l(-5%));\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n}\n\n.post-full-content h1 {\n margin: 0.5em 0 0.4em;\n font-size: 4.2rem;\n line-height: 1.25em;\n font-weight: 600;\n}\n.post-full-content p + h1 {\n margin-top: 0.8em;\n}\n@media (max-width: 800px) {\n .post-full-content h1 {\n font-size: 3.2rem;\n line-height: 1.25em;\n }\n}\n\n.post-full-content h2 {\n margin: 0.5em 0 0.4em;\n font-size: 3.2rem;\n line-height: 1.25em;\n font-weight: 600;\n}\n.post-full-content p + h2 {\n margin-top: 0.8em;\n}\n@media (max-width: 800px) {\n .post-full-content h2 {\n margin-bottom: 0.3em;\n font-size: 2.8rem;\n line-height: 1.25em;\n }\n}\n\n.post-full-content h3 {\n margin: 0.5em 0 0.2em;\n font-size: 2.5rem;\n line-height: 1.3em;\n font-weight: 600;\n}\n.post-full-content h2 + h3 {\n margin-top: 0.7em;\n}\n@media (max-width: 800px) {\n .post-full-content h3 {\n margin-bottom: 0.3em;\n font-size: 2.4rem;\n line-height: 1.3em;\n }\n}\n\n.post-full-content h4 {\n margin: 0.5em 0 0.2em;\n font-size: 2.5rem;\n font-weight: 600;\n}\n.post-full-content h2 + h4 {\n margin-top: 0.7em;\n}\n.post-full-content h3 + h4 {\n margin-top: 0;\n}\n@media (max-width: 800px) {\n .post-full-content h4 {\n margin-bottom: 0.3em;\n font-size: 2.4rem;\n line-height: 1.3em;\n }\n}\n\n.post-full-content h5 {\n display: block;\n margin: 0.5em 0;\n padding: 0.4em 1em 0.9em;\n border: 0;\n color: var(--blue);\n font-family: Georgia,serif;\n font-size: 3.2rem;\n line-height: 1.35em;\n text-align: center;\n}\n@media (min-width: 1180px) {\n .post-full-content h5 {\n max-width: 1060px;\n width: 100vw;\n }\n}\n@media (max-width: 800px) {\n .post-full-content h5 {\n margin-bottom: 1em;\n margin-left: 1.3em;\n padding: 0 0 0.5em;\n font-size: 2.4rem;\n text-align: initial;\n }\n}\n\n.post-full-content h6 {\n margin: 0.5em 0 0.2em 0;\n font-size: 2.0rem;\n font-weight: 700;\n}\n@media (max-width: 800px) {\n .post-full-content h6 {\n font-size: 1.8rem;\n line-height: 1.4em;\n }\n}\n\n.footnotes-sep {\n margin-bottom: 30px;\n}\n\n.footnotes {\n font-size: 1.5rem;\n}\n\n.footnotes p {\n margin: 0;\n}\n\n.footnote-backref {\n color: var(--blue) !important;\n font-size: 1.2rem;\n font-weight: bold;\n text-decoration: none !important;\n box-shadow: none !important;\n}\n\n/* Some grouped styles for smaller viewports */\n@media (max-width: 1170px) {\n .post-full-image {\n margin: 25px -6vw 50px;\n border-radius: 0;\n }\n\n .post-full-image img {\n max-width: 1170px;\n }\n}\n\n@media (max-width: 700px) {\n .post-full-image {\n margin: 25px -5vw;\n }\n}\n\n@media (max-width: 500px) {\n .post-full-meta {\n font-size: 1.2rem;\n line-height: 1.3em;\n }\n\n .post-full-title {\n margin-top: 0.2em;\n font-size: 4.2rem;\n line-height: 1.05em;\n }\n\n .post-full-image {\n margin-top: 5px;\n margin-bottom: 5vw;\n }\n\n .post-full-content {\n padding: 0;\n }\n\n .post-full-content:before,\n .post-full-content:after {\n display: none;\n }\n}\n\n/* Tables */\n.post-full-content table {\n display: inline-block;\n overflow-x: auto;\n margin: 0.5em 0 2.5em;\n max-width: 100%;\n width: auto;\n border-spacing: 0;\n border-collapse: collapse;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n font-size: 1.6rem;\n white-space: nowrap;\n vertical-align: top;\n}\n\n.post-full-content table {\n -webkit-overflow-scrolling: touch;\n background: radial-gradient(ellipse at left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 0 center, radial-gradient(ellipse at right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 100% center;\n background-attachment: scroll, scroll;\n background-size: 10px 100%, 10px 100%;\n background-repeat: no-repeat;\n}\n\n.post-full-content table td:first-child {\n background-image: linear-gradient(to right, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n background-size: 20px 100%;\n background-repeat: no-repeat;\n}\n\n.post-full-content table td:last-child {\n background-image: linear-gradient(to left, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n background-position: 100% 0;\n background-size: 20px 100%;\n background-repeat: no-repeat;\n}\n\n.post-full-content table th {\n color: var(--darkgrey);\n font-size: 1.2rem;\n font-weight: 700;\n letter-spacing: 0.2px;\n text-align: left;\n text-transform: uppercase;\n background-color: color-mod(var(--whitegrey) l(+4%));\n}\n\n.post-full-content table th,\n.post-full-content table td {\n padding: 6px 12px;\n border: color-mod(var(--whitegrey) l(-1%) s(-5%)) 1px solid;\n}\n\n\n/* 7.1. Post Byline\n/* ---------------------------------------------------------- */\n\n.post-full-byline {\n display: flex;\n justify-content: space-between;\n margin: 35px 0 0;\n padding-top: 15px;\n border-top: 1px solid color-mod(var(--lightgrey) l(+10%));\n}\n\n.post-full-byline-content {\n flex-grow: 1;\n display: flex;\n align-items: flex-start;\n}\n\n.post-full-byline-content .author-list {\n justify-content: flex-start;\n padding: 0 12px 0 0;\n}\n\n.post-full-byline-meta {\n margin: 2px 0 0;\n color: color-mod(var(--midgrey) l(+10%));\n font-size: 1.2rem;\n line-height: 1.2em;\n letter-spacing: 0.2px;\n text-transform: uppercase;;\n}\n\n.post-full-byline-meta h4 {\n margin: 0 0 3px;\n font-size: 1.3rem;\n line-height: 1.4em;\n font-weight: 500;\n}\n\n.post-full-byline-meta h4 a {\n color: color-mod(var(--darkgrey) l(+10%));\n}\n\n.post-full-byline-meta h4 a:hover {\n color: var(--darkgrey);\n}\n\n.post-full-byline-meta .bull {\n display: inline-block;\n margin: 0 4px;\n opacity: 0.6;\n}\n\n.author-avatar {\n display: block;\n overflow: hidden;\n margin: 0 -4px;\n width: 40px;\n height: 40px;\n border: #fff 2px solid;\n border-radius: 100%;\n transition: all 0.5s cubic-bezier(0.4, 0.01, 0.165, 0.99) 700ms;\n}\n\n.author-list-item .author-card {\n position: absolute;\n bottom: 130%;\n left: 50%;\n z-index: 600;\n display: flex;\n justify-content: space-between;\n margin-left: -200px;\n width: 400px;\n font-size: 1.4rem;\n line-height: 1.5em;\n background: white;\n border-radius: 3px;\n box-shadow: rgba(39,44,49,0.08) 0 12px 26px, rgba(39, 44, 49, 0.06) 1px 3px 8px;\n opacity: 0;\n transition: all 0.35s cubic-bezier(0.4, 0.01, 0.165, 0.99);\n transform: scale(0.98) translateY(15px);\n pointer-events: none;\n}\n\n.author-list-item .author-card:before {\n content: \"\";\n position: absolute;\n top: 100%;\n left: 50%;\n display: block;\n margin-left: -8px;\n width: 0;\n height: 0;\n border-top: 8px solid #fff;\n border-right: 8px solid transparent;\n border-left: 8px solid transparent;\n}\n\n.author-list-item .author-card.hovered {\n opacity: 1.0;\n transform: scale(1) translateY(0px);\n pointer-events: auto;\n}\n\n.author-card {\n padding: 20px 20px 22px;\n}\n\n.author-card .author-info {\n flex: 1 1 auto;\n padding: 0 0 0 20px;\n}\n\n.author-card .author-info h2 {\n margin: 8px 0 0;\n font-size: 1.6rem;\n}\n\n.author-card .author-info p {\n margin: 4px 0 0;\n color: color-mod(var(--midgrey) l(-10%));\n}\n\n.author-card .author-info .bio h2 {\n margin-top: 0;\n}\n\n.author-card .author-info .bio p {\n margin-top: 0.8em;\n}\n\n.author-card .author-profile-image {\n flex: 0 0 60px;\n margin: 0;\n width: 60px;\n height: 60px;\n border: none;\n}\n\n.basic-info .avatar-wrapper {\n position: relative;\n margin: 0;\n width: 60px;\n height: 60px;\n border: none;\n background: rgba(229, 239, 245, 0.1);\n}\n\n.basic-info .avatar-wrapper svg {\n margin: 0;\n width: 60px;\n height: 60px;\n opacity: 0.15;\n}\n\n@media (max-width: 1170px) {\n .author-list-item .author-card {\n margin-left: -50px;\n width: 430px;\n }\n\n .author-list-item .author-card:before {\n left: 50px;\n }\n}\n\n@media (max-width: 650px) {\n .author-list-item .author-card {\n display: none;\n }\n}\n\n@media (max-width: 500px) {\n .author-avatar {\n width: 36px;\n height: 36px;\n }\n\n .post-full-byline {\n margin-top: 20px;\n }\n\n .post-full-byline-meta {\n font-size: 1.2rem;\n }\n\n .post-full-byline-meta h4 {\n margin-bottom: 2px;\n font-size: 1.2rem;\n }\n}\n\n\n/* 7.2. Members Subscribe Form\n/* ---------------------------------------------------------- */\n.subscribe-form {\n margin: 1.5em 0;\n padding: 6.5vw 7vw 8vw;\n border: color-mod(var(--lightgrey) l(+10%)) 1px solid;\n text-align: center;\n background: linear-gradient(color-mod(var(--whitegrey) l(+6%)), color-mod(var(--whitegrey) l(+4%)));\n border-radius: 3px;\n}\n\n.subscribe-form-title {\n margin: 0 0 3px 0;\n padding: 0;\n color: var(--darkgrey);\n font-size: 3.5rem;\n line-height: 1;\n font-weight: 600;\n}\n\n.subscribe-form-description {\n margin-bottom: 0.2em 0 1em;\n color: var(--midgrey);\n font-size: 2.1rem;\n line-height: 1.55em;\n}\n\n.subscribe-form form {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n margin: 0 auto;\n max-width: 460px;\n}\n\n.subscribe-form .form-group {\n align-self: stretch;\n display: flex;\n}\n\n.subscribe-email {\n display: block;\n padding: 10px;\n width: 100%;\n border: color-mod(var(--lightgrey) l(+7%)) 1px solid;\n color: var(--midgrey);\n font-size: 1.8rem;\n line-height: 1em;\n font-weight: normal;\n user-select: text;\n border-radius: 5px;\n transition: border-color 0.15s linear;\n\n -webkit-appearance: none;\n}\n\n.subscribe-email:focus {\n outline: 0;\n border-color: color-mod(var(--lightgrey) l(-2%));\n}\n\n.subscribe-form button {\n position: relative;\n display: inline-block;\n margin: 0 0 0 10px;\n padding: 0 20px;\n height: 43px;\n outline: none;\n color: #fff;\n font-size: 1.5rem;\n line-height: 39px;\n font-weight: 400;\n text-align: center;\n background: linear-gradient(\n color-mod(var(--blue) whiteness(+7%)),\n color-mod(var(--blue) lightness(-7%) saturation(-10%)) 60%,\n color-mod(var(--blue) lightness(-7%) saturation(-10%)) 90%,\n color-mod(var(--blue) lightness(-4%) saturation(-10%))\n );\n border-radius: 5px;\n\n -webkit-font-smoothing: subpixel-antialiased;\n}\n\n.subscribe-form button:active,\n.subscribe-form button:focus {\n background: color-mod(var(--blue) lightness(-9%) saturation(-10%));\n}\n\n.subscribe-form .button-loader,\n.subscribe-form .message-success,\n.subscribe-form .message-error {\n display: none;\n}\n\n.subscribe-form .loading .button-content {\n visibility: hidden;\n}\n\n.subscribe-form .loading .button-loader {\n position: absolute;\n top: 0;\n left: 50%;\n display: inline-block;\n margin-left: -19px;\n transform: scale(0.7);\n}\n\n.subscribe-form .button-loader svg path,\n.subscribe-form .button-loader svg rect {\n fill: #fff;\n}\n\n.subscribe-form .success .message-success,\n.subscribe-form .invalid .message-error,\n.subscribe-form .error .message-error {\n margin: 1em auto 0;\n max-width: 400px;\n color: var(--red);\n font-size: 1.6rem;\n line-height: 1.5em;\n text-align: center;\n}\n\n.subscribe-form .success .message-success {\n display: block;\n color: color-mod(var(--green) l(-5%));\n}\n\n.subscribe-form .invalid .message-error,\n.subscribe-form .error .message-error {\n display: block;\n}\n\n\n@media (max-width: 650px) {\n .subscribe-form-title {\n font-size: 2.4rem;\n }\n\n .subscribe-form-description {\n font-size: 1.6rem;\n }\n}\n\n@media (max-width: 500px) {\n .subscribe-form form {\n flex-direction: column;\n }\n\n .subscribe-form .form-group {\n flex-direction: column;\n width: 100%;\n }\n\n .subscribe-form button {\n margin: 10px 0 0 0;\n width: 100%;\n }\n}\n\n\n/* 7.3. Comments\n/* ---------------------------------------------------------- */\n\n.post-full-comments {\n margin: 0 auto;\n max-width: 840px;\n}\n\n\n/* 7.4. Related posts\n/* ---------------------------------------------------------- */\n\n.read-next {\n border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n background: color-mod(var(--darkgrey) l(-5%));\n}\n\n.read-next-feed {\n display: flex;\n flex-wrap: wrap;\n margin: 0 -25px;\n padding: 60px 0 0 0;\n}\n\n.read-next .post-card {\n padding-bottom: 0;\n border-bottom: none;\n}\n\n.read-next .post-card:after {\n display: none;\n}\n\n.read-next .post-card-primary-tag {\n color: #fff;\n opacity: 0.6;\n}\n\n.read-next .post-card-title {\n color: #fff;\n opacity: 0.8;\n transition: all 0.2s ease-in-out;\n}\n\n.read-next .post-card:hover .post-card-image {\n opacity: 1.0;\n}\n\n.read-next .post-card-excerpt {\n color: rgba(255, 255, 255, 0.6);\n}\n\n.read-next .static-avatar {\n border-color: #000;\n}\n\n.read-next .post-card-byline-content {\n color: rgba(255, 255, 255, 0.6);\n}\n\n.read-next .post-card-byline-content a {\n color: rgba(255, 255, 255, 0.8);\n}\n\n.read-next-card {\n position: relative;\n flex: 0 1 326px;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n margin: 0 25px 50px;\n padding: 25px;\n background: linear-gradient(color-mod(var(--darkgrey) l(+2%)), color-mod(var(--darkgrey) l(-5%)));\n border-radius: 3px;\n}\n\n.read-next-card a {\n transition: all 0.2s ease-in-out;\n}\n\n.read-next-card a:hover {\n text-decoration: none;\n}\n\n.read-next-card-header h3 {\n margin: 0;\n color: rgba(255, 255, 255, 0.6);\n font-size: 1.2rem;\n line-height: 1em;\n font-weight: 300;\n letter-spacing: 0.4px;\n text-transform: uppercase;\n}\n\n.read-next-card-header h3 a {\n color: #fff;\n font-weight: 500;\n text-decoration: none;\n opacity: 0.8;\n}\n\n.read-next-card-header h3 a:hover {\n opacity: 1;\n}\n\n.read-next-card-content {\n font-size: 1.7rem;\n}\n\n.read-next-card-content ul {\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.read-next-card-content li {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n margin: 0;\n padding: 20px 0;\n border-bottom: rgba(255, 255, 255, 0.1);\n}\n\n.read-next-card-content li:last-of-type {\n padding-bottom: 5px;\n border: none;\n}\n\n.read-next-card-content h4 {\n margin: 0;\n font-size: 1.6rem;\n line-height: 1.35em;\n font-weight: 600;\n}\n\n.read-next-card-content li a {\n display: block;\n color: #fff;\n opacity: 0.8;\n}\n\n.read-next-card-content li a:hover {\n opacity: 1;\n}\n\n.read-next-card-excerpt {\n overflow: hidden;\n max-width: 100%;\n font-size: 1.4rem;\n line-height: 1.2em;\n text-overflow: ellipsis;\n}\n\n.read-next-card-meta {\n margin-top: 2px;\n font-size: 1.2rem;\n line-height: 1.4em;\n font-weight: 400;\n}\n\n.read-next-card-meta p {\n margin: 0;\n color: rgba(255, 255, 255, 0.6);\n}\n\n.read-next-card-footer {\n position: relative;\n margin: 40px 0 5px;\n}\n\n.read-next-card-footer a {\n padding: 7px 12px 8px 14px;\n border: 1px solid rgba(255, 255, 255, 0.6);\n color: rgba(255, 255, 255, 0.6);\n font-size: 1.3rem;\n border-radius: 999px;\n transition: all 0.35s ease-in-out;\n}\n\n.read-next-card-footer a:hover {\n border-color: var(--yellow);\n color: var(--yellow);\n text-decoration: none;\n}\n\n@media (max-width: 1170px) {\n .read-next-card {\n flex: 1 1 261px;\n margin-bottom: 5vw;\n }\n}\n\n@media (max-width: 650px) {\n .read-next-feed {\n flex-direction: column;\n padding: 25px 0 0;\n }\n\n .read-next-card {\n flex: 1 1 auto;\n margin: 0 25px;\n padding: 0;\n background: none;\n }\n\n .read-next .post-card {\n flex: 1 1 auto;\n margin: 25px;\n padding: 25px 0 0;\n border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n }\n}\n\n\n/* 7.5. Koenig Styles\n/* ---------------------------------------------------------- */\n\n.post-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n\n.post-full-content .kg-image {\n margin: 0 auto;\n max-width: 100%;\n}\n\n/* Preventing full-width image overlap with post image. */\n.post-full-image + .post-full-content .kg-content *:first-child .kg-image {\n width: 100%;\n}\n\n.post-full-content .kg-width-wide .kg-image {\n max-width: 1040px;\n}\n\n.post-full-content .kg-width-full .kg-image {\n max-width: 100vw;\n}\n\n.post-full-content figure {\n margin: 0.8em 0 2.3em;\n}\n\n.post-full-content h1 + figure,\n.post-full-content h2 + figure,\n.post-full-content h3 + figure,\n.post-full-content h4 + figure {\n margin-top: 2em;\n}\n\n.post-full-content figure img {\n margin: 0;\n}\n\n.post-full-content figcaption {\n margin: 1.0em auto 0;\n color: color-mod(var(--midgrey) l(-10%));\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n font-size: 75%;\n line-height: 1.5em;\n text-align: center;\n max-width: 1040px;\n}\n\n.kg-width-full figcaption {\n padding: 0 1.5em;\n}\n\n.kg-embed-card {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n}\n\n.kg-embed-card .fluid-width-video-wrapper {\n margin: 0;\n}\n\n\n@media (max-width: 1040px) {\n .post-full-content .kg-width-full .kg-image {\n width: 100vw;\n }\n}\n\n.kg-gallery-container {\n display: flex;\n flex-direction: column;\n max-width: 1040px;\n width: 100vw;\n}\n\n.kg-gallery-row {\n display: flex;\n flex-direction: row;\n justify-content: center;\n}\n\n.kg-gallery-image img {\n display: block;\n margin: 0;\n width: 100%;\n height: 100%;\n}\n\n.kg-gallery-row:not(:first-of-type) {\n margin: 0.75em 0 0 0;\n}\n\n.kg-gallery-image:not(:first-of-type) {\n margin: 0 0 0 0.75em;\n}\n\n.kg-gallery-card + .kg-image-card.kg-width-wide,\n.kg-gallery-card + .kg-gallery-card,\n.kg-image-card.kg-width-wide + .kg-gallery-card,\n.kg-image-card.kg-width-wide + .kg-image-card.kg-width-wide {\n margin: -2.25em 0 3em;\n}\n\n/* keep existing
 styles for code cards with captions */\n.kg-code-card {\n    width: 100%;\n}\n\n.kg-code-card pre {\n    margin: 0;\n}\n\n.kg-bookmark-card {\n    width: 100%;\n}\n\n.kg-card + .kg-bookmark-card {\n    margin-top: 0;\n}\n\n.post-full-content .kg-bookmark-container {\n    display: flex;\n    min-height: 148px;\n    color: var(--darkgrey);\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n    text-decoration: none;\n    border-radius: 3px;\n    box-shadow: 0 2px 5px -1px rgba(0, 0, 0, 0.15), 0 0 1px rgba(0, 0, 0, 0.09);\n}\n\n.post-full-content .kg-bookmark-container:hover {\n    color: var(--darkgrey);\n    text-decoration: none;\n    box-shadow: 0 2px 5px -1px rgba(0, 0, 0, 0.15), 0 0 1px rgba(0, 0, 0, 0.09);\n}\n\n.kg-bookmark-content {\n    flex-grow: 1;\n    display: flex;\n    flex-direction: column;\n    justify-content: flex-start;\n    align-items: flex-start;\n    padding: 20px;\n}\n\n.kg-bookmark-title {\n    color: color-mod(var(--midgrey) l(-30%));\n    font-size: 1.6rem;\n    line-height: 1.5em;\n    font-weight: 600;\n    transition: color 0.2s ease-in-out;\n}\n\n.post-full-content .kg-bookmark-container:hover .kg-bookmark-title {\n    color: var(--blue);\n}\n\n.kg-bookmark-description {\n    display: -webkit-box;\n    overflow-y: hidden;\n    margin-top: 12px;\n    max-height: 48px;\n    color: color-mod(var(--midgrey) l(-10%));\n    font-size: 1.5rem;\n    line-height: 1.5em;\n    font-weight: 400;\n\n    -webkit-line-clamp: 2;\n    -webkit-box-orient: vertical;\n}\n\n.kg-bookmark-thumbnail {\n    position: relative;\n    min-width: 33%;\n    max-height: 100%;\n}\n\n.kg-bookmark-thumbnail img {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100%;\n    border-radius: 0 3px 3px 0;\n\n    object-fit: cover;\n}\n\n.kg-bookmark-metadata {\n    display: flex;\n    flex-wrap: wrap;\n    align-items: center;\n    margin-top: 14px;\n    color: color-mod(var(--midgrey) l(-10%));\n    font-size: 1.5rem;\n    font-weight: 400;\n}\n\n.post-full-content .kg-bookmark-icon {\n    margin-right: 8px;\n    width: 22px;\n    height: 22px;\n}\n\n.kg-bookmark-author {\n    line-height: 1.5em;\n}\n\n.kg-bookmark-author:after {\n    content: \"•\";\n    margin: 0 6px;\n}\n\n.kg-bookmark-publisher {\n    overflow: hidden;\n    max-width: 240px;\n    line-height: 1.5em;\n    text-overflow: ellipsis;\n    white-space: nowrap;\n}\n\n@media (max-width: 800px) {\n    .post-full-content figure {\n        margin: 0.2em 0 1.3em;\n    }\n\n    .post-full-content h1 + figure,\n    .post-full-content h2 + figure,\n    .post-full-content h3 + figure,\n    .post-full-content h4 + figure {\n        margin-top: 0.9em;\n    }\n}\n\n@media (max-width: 500px) {\n    .post-full-content .kg-width-wide,\n    .post-full-content .kg-width-full {\n        margin-right: -5vw;\n        margin-left: -5vw;\n    }\n\n    .post-full-content figcaption {\n        margin-bottom: 0.4em;\n    }\n\n    .post-full-content .kg-bookmark-container {\n        flex-direction: column;\n    }\n\n    .kg-bookmark-title,\n    .kg-bookmark-description,\n    .kg-bookmark-metadata {\n        font-size: 1.4rem;\n        line-height: 1.5em;\n    }\n\n    .post-full-content .kg-bookmark-icon {\n        width: 18px;\n        height: 18px;\n    }\n\n    .kg-bookmark-thumbnail {\n        order: 1;\n        min-height: 160px;\n        width: 100%;\n    }\n\n    .kg-bookmark-thumbnail img {\n        border-radius: 3px 3px 0 0;\n    }\n\n    .kg-bookmark-content {\n        order: 2;\n    }\n}\n\n/* 8. Author Template\n/* ---------------------------------------------------------- */\n.author-header {\n    display: flex;\n    flex-direction: row;\n    justify-content: flex-start;\n    align-items: flex-start;\n    padding: 10vw 0 10px;\n}\n\n.site-archive-header .author-header {\n    align-items: center;\n}\n\n.site-archive-header .no-image .author-header {\n    padding-bottom: 20px;\n}\n\n.author-header-content {\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    margin: 5px 0 0 30px;\n}\n\n.site-header-content .author-profile-image {\n    z-index: 10;\n    flex-shrink: 0;\n    margin: -4px 0 0;\n    width: 110px;\n    height: 110px;\n    box-shadow: rgba(255,255,255,0.1) 0 0 0 6px;\n}\n\n.author-header-content .author-bio {\n    z-index: 10;\n    flex-shrink: 0;\n    margin: 6px 0 0;\n    max-width: 46em;\n    font-size: 2.0rem;\n    line-height: 1.3em;\n    font-weight: 400;\n    opacity: 0.8;\n}\n\n.author-header-content .author-meta {\n    z-index: 10;\n    flex-shrink: 0;\n    display: flex;\n    align-items: center;\n    margin: 0 0 0 1px;\n    font-size: 1.2rem;\n    font-weight: 400;\n    letter-spacing: 0.2px;\n    text-transform: uppercase;\n    white-space: nowrap;\n}\n\n.author-header-content .social-link:first-of-type {\n    padding-left: 4px;\n}\n\n.no-image .author-header-content .author-bio {\n    color: var(--midgrey);\n    opacity: 1.0;\n}\n\n.no-image .author-header-content .author-meta {\n    color: var(--midgrey);\n    opacity: 1.0;\n}\n\n.author-social-link a {\n    color: #fff;\n    font-weight: 600;\n}\n\n.no-image .author-social-link a {\n    color: var(--darkgrey);\n}\n\n.author-social-link a:hover {\n    opacity: 1;\n}\n\n.author-social-link {\n    display: inline-block;\n    margin: 0;\n    padding: 6px 0;\n}\n\n.author-location + .author-stats:before,\n.author-stats + .author-social-link:before,\n.author-social-link + .author-social-link:before {\n    content: \"\\2022\";\n    display: inline-block;\n    margin: 0 12px;\n    color: #fff;\n    opacity: 0.6;\n}\n\n.no-image .author-location + .author-stats:before,\n.no-image .author-stats + .author-social-link:before,\n.no-image .author-social-link + .author-social-link:before {\n    color: var(--midgrey);\n}\n\n@media (max-width: 700px) {\n    .author-location,\n    .author-stats,\n    .author-stats + .author-social-link:first-of-type:before {\n        display: none;\n    }\n}\n\n@media (max-width: 500px) {\n    .author-header {\n        padding: 10px 0 0;\n    }\n\n    .no-image .author-header {\n        padding-bottom: 10px;\n    }\n\n    .author-header-content {\n        align-items: center;\n        margin: 16px 0 0 0;\n    }\n\n    .site-header-content .author-profile-image {\n        width: 96px;\n        height: 96px;\n    }\n\n    .author-header-content .author-bio {\n        font-size: 1.8rem;\n        line-height: 1.3em;\n        letter-spacing: 0;\n        text-align: center;\n    }\n\n    .author-header-content .author-meta {\n        margin-top: 8px;\n    }\n\n    .author-location + .author-stats:before,\n    .author-stats + .author-social-link:before,\n    .author-social-link + .author-social-link:before {\n        display: inline;\n        margin: 0 6px;\n    }\n}\n\n\n/* 9. Error Template\n/* ---------------------------------------------------------- */\n\n.error-content {\n    padding: 14vw 4vw 6vw;\n}\n\n.site-nav-center {\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    padding: 10px 0;\n    text-align: center;\n}\n\n.site-nav-center .site-nav-logo {\n    margin-right: 0;\n}\n\n.error-message {\n    padding-bottom: 10vw;\n    border-bottom: 1px solid color-mod(var(--lightgrey) l(+10%));\n    text-align: center;\n}\n\n.error-code {\n    margin: 0;\n    color: var(--lightgrey);\n    font-size: 12vw;\n    line-height: 1em;\n    letter-spacing: -5px;\n    opacity: 0.75;\n}\n\n.error-description {\n    margin: 0;\n    color: var(--midgrey);\n    font-size: 3rem;\n    line-height: 1.3em;\n    font-weight: 400;\n}\n\n.error-link {\n    display: inline-block;\n    margin-top: 5px;\n}\n\n@media (min-width: 940px) {\n    .error-content .post-card {\n        margin-bottom: 0;\n        padding-bottom: 0;\n        border-bottom: none;\n    }\n}\n\n@media (max-width: 800px) {\n    .error-content {\n        padding-top: 24vw;\n    }\n    .error-code {\n        font-size: 11.2rem;\n    }\n    .error-message {\n        padding-bottom: 16vw;\n    }\n    .error-description {\n        margin: 5px 0 0 0;\n        font-size: 1.8rem;\n    }\n}\n\n@media (max-width: 500px) {\n    .error-content {\n        padding-top: 28vw;\n    }\n    .error-message {\n        padding-bottom: 14vw;\n    }\n}\n\n\n/* 10. Subscribe Message and Overlay\n/* ---------------------------------------------------------- */\n\n.subscribe-success-message {\n    position: fixed;\n    top: 0;\n    right: 0;\n    left: 0;\n    z-index: 9000;\n    padding: 20px 0;\n    color: #fff;\n    text-align: center;\n    background: var(--green);\n    transition: all 0.35s cubic-bezier(0.19, 1, 0.22, 1) 0.5s;\n    transform: translateY(-175%);\n}\n\n.subscribe-success .subscribe-success-message {\n    visibility: visible;\n    transform: translateY(0);\n}\n\n.subscribe-success-message.close {\n    visibility: hidden;\n    transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);\n    transform: translateY(-175%);\n}\n\n.subscribe-close-overlay {\n    position: absolute;\n    top: 0;\n    right: 0;\n    bottom: 0;\n    left: 0;\n    display: block;\n}\n\n.subscribe-close-button {\n    position: absolute;\n    top: 16px;\n    right: 20px;\n    z-index: 2000;\n    display: block;\n    width: 40px;\n    height: 40px;\n}\n\n.subscribe-close-button:before {\n    content: \"\";\n    position: absolute;\n    top: 20px;\n    right: 4px;\n    display: block;\n    width: 32px;\n    height: 1px;\n    background: #fff;\n    opacity: 0.8;\n    transform: rotate(45deg);\n}\n\n.subscribe-close-button:after {\n    content: \"\";\n    position: absolute;\n    top: 20px;\n    right: 4px;\n    display: block;\n    width: 32px;\n    height: 1px;\n    background: #fff;\n    opacity: 0.8;\n    transform: rotate(-45deg);\n}\n\n.subscribe-close-overlay:hover,\n.subscribe-close-button:hover {\n    cursor: default;\n}\n\n.subscribe-overlay {\n    position: fixed;\n    top: 0;\n    right: 0;\n    bottom: 0;\n    left: 0;\n    z-index: 2000;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    background: rgba(9,10,11,0.97);\n    opacity: 0;\n    transition: opacity 0.2s ease-in;\n    pointer-events: none;\n}\n\n.subscribe-overlay:target {\n    z-index: 2001;\n    opacity: 1;\n    pointer-events: auto;\n}\n\n.subscribe-overlay-content {\n    position: relative;\n    margin: 0 0 5vw 0;\n    padding: 4vw;\n    color: #fff;\n    text-align: center;\n}\n\n.subscribe-overlay .subscribe-form {\n    border: none;\n    color: #fff;\n    background: none;\n}\n\n.subscribe-overlay-logo {\n    position: fixed;\n    top: 23px;\n    left: 30px;\n    height: 30px;\n}\n\n.subscribe-overlay-title {\n    display: inline-block;\n    margin: 0 0 10px 0;\n    font-size: 5.2rem;\n    line-height: 1.15em;\n}\n\n.subscribe-overlay-description {\n    margin: 0 auto 50px;\n    max-width: 650px;\n    color: #fff;\n    font-family: Georgia, serif;\n    font-size: 2.4rem;\n    line-height: 1.3em;\n    font-weight: 300;\n    opacity: 0.8;\n}\n\n.subscribe-overlay form {\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    margin: 0 auto;\n    max-width: 540px;\n}\n\n.subscribe-overlay .form-group {\n    flex-grow: 1;\n}\n\n.subscribe-overlay .subscribe-email {\n    display: block;\n    padding: 14px 20px;\n    width: 100%;\n    border: none;\n    color: var(--midgrey);\n    font-size: 2rem;\n    line-height: 1em;\n    font-weight: normal;\n    letter-spacing: 0.5px;\n    user-select: text;\n    border-radius: 8px;\n    transition: border-color 0.15s linear;\n\n    -webkit-appearance: none;\n}\n\n.subscribe-email:focus {\n    outline: 0;\n    border-color: color-mod(var(--lightgrey) l(-2%));\n}\n\n.subscribe-overlay button {\n    display: inline-block;\n    margin: 0 0 0 15px;\n    padding: 0 25px;\n    height: 52px;\n    outline: none;\n    color: #fff;\n    font-size: 1.7rem;\n    line-height: 38px;\n    font-weight: 400;\n    text-align: center;\n    background: linear-gradient(\n    color-mod(var(--blue) whiteness(+7%)),\n    color-mod(var(--blue) lightness(-7%) saturation(-10%)) 60%,\n    color-mod(var(--blue) lightness(-7%) saturation(-10%)) 90%,\n    color-mod(var(--blue) lightness(-4%) saturation(-10%))\n    );\n    border-radius: 8px;\n\n    -webkit-font-smoothing: subpixel-antialiased;\n}\n\n.subscribe-overlay button:active,\n.subscribe-overlay button:focus {\n    background: color-mod(var(--blue) lightness(-9%) saturation(-10%));\n}\n\n.subscribe-overlay .loading .button-loader {\n    top: 5px;\n}\n\n@media (max-width: 500px) {\n    .subscribe-overlay button {\n        margin: 12px 0 0;\n    }\n}\n\n\n/* 11. Site Footer\n/* ---------------------------------------------------------- */\n\n.site-footer {\n    position: relative;\n    padding-top: 20px;\n    padding-bottom: 60px;\n    color: #fff;\n    background: color-mod(var(--darkgrey) l(-5%));\n}\n\n.site-footer-content {\n    display: flex;\n    flex-wrap: wrap;\n    justify-content: space-between;\n    align-items: center;\n    color: rgba(255,255,255,0.7);\n    font-size: 1.3rem;\n}\n\n.site-footer-content a {\n    color: rgba(255,255,255,0.7);\n}\n\n.site-footer-content a:hover {\n    color: rgba(255,255,255,1);\n    text-decoration: none;\n}\n\n.site-footer-nav {\n    display: flex;\n}\n\n.site-footer-nav a {\n    position: relative;\n    margin-left: 20px;\n}\n\n.site-footer-nav a:before {\n    content: \"\";\n    position: absolute;\n    top: 11px;\n    left: -11px;\n    display: block;\n    width: 2px;\n    height: 2px;\n    background: #fff;\n    border-radius: 100%;\n}\n\n.site-footer-nav a:first-of-type:before {\n    display: none;\n}\n\n@media (max-width: 650px) {\n    .site-footer-content {\n        flex-direction: column;\n    }\n\n    .site-footer-nav a:first-child {\n        margin-left: 0;\n    }\n}\n\n\n/* 12. Dark Mode\n/* ---------------------------------------------------------- */\n@media (prefers-color-scheme: dark) {\n    body {\n        color: rgba(255, 255, 255, 0.75);\n        background: var(--darkmode);\n    }\n\n    img {\n        opacity: 0.9;\n    }\n\n    .site-header-background:before {\n        background: rgba(0,0,0,0.6);\n    }\n\n    .post-feed {\n        background: var(--darkmode);\n    }\n\n    .post-card,\n    .post-card:hover {\n        border-bottom-color: color-mod(var(--darkmode) l(+8%));\n    }\n\n    .author-profile-image {\n        background: var(--darkmode);\n    }\n\n    .post-card-byline-content a {\n        color: rgba(255, 255, 255, 0.75);\n    }\n\n    .post-card-byline-content a:hover {\n        color: #fff;\n    }\n\n    .post-card-image {\n        background: var(--darkmode);\n    }\n\n    .post-card-title {\n        color: rgba(255, 255, 255, 0.85);\n    }\n\n    .post-card-excerpt {\n        color: color-mod(var(--midgrey) l(+10%));\n    }\n\n    .author-avatar,\n    .static-avatar {\n        border-color: color-mod(var(--darkgrey) l(+2%));\n    }\n\n    .site-main,\n    .post-template .site-main,\n    .page-template .site-main {\n        background: var(--darkmode);\n    }\n\n    .post-full-content {\n        background: var(--darkmode);\n    }\n\n    .post-full-title {\n        color: rgba(255, 255, 255, 0.9);\n    }\n\n    .post-full-custom-excerpt {\n        color: color-mod(var(--midgrey) l(+10%));\n    }\n\n    .post-full-image {\n        background-color: color-mod(var(--darkmode) l(+8%));\n    }\n\n    .post-full-byline {\n        border-top-color: color-mod(var(--darkmode) l(+15%));\n    }\n\n    .post-full-byline-meta h4 a {\n        color: rgba(255, 255, 255, 0.75);\n    }\n\n    .post-full-byline-meta h4 a:hover {\n        color: #fff;\n    }\n\n    .author-list-item .author-card {\n        background: color-mod(var(--darkmode) l(+4%));\n        box-shadow: 0 12px 26px rgba(0,0,0,0.4);\n    }\n\n    .author-list-item .author-card:before {\n        border-top-color: color-mod(var(--darkmode) l(+4%));\n    }\n\n    .no-image .author-social-link a {\n        color: rgba(255, 255, 255, 0.75);\n    }\n\n    .post-full-content h1,\n    .post-full-content h2,\n    .post-full-content h3,\n    .post-full-content h4,\n    .post-full-content h6 {\n        color: rgba(255, 255, 255, 0.9);\n    }\n\n    .post-full-content a {\n        color: #fff;\n        box-shadow: inset 0 -1px 0 #fff;\n    }\n\n    .post-full-content strong {\n        color: #fff;\n    }\n\n    .post-full-content em {\n        color: #fff;\n    }\n\n    .post-full-content code {\n        color: #fff;\n        background: #000;\n    }\n\n    hr {\n        border-top-color: color-mod(var(--darkmode) l(+8%));\n    }\n\n    .post-full-content figcaption {\n        color: rgba(255, 255, 255, 0.6);\n    }\n\n    .post-full-content table td:first-child {\n        background-image: linear-gradient(to right, var(--darkmode) 50%, color-mod(var(--darkmode) a(0%)) 100%);\n    }\n\n    .post-full-content table td:last-child {\n        background-image: linear-gradient(to left, var(--darkmode) 50%, color-mod(var(--darkmode) a(0%)) 100%);\n    }\n\n    .post-full-content table th {\n        color: rgba(255, 255, 255, 0.85);\n        background-color: color-mod(var(--darkmode) l(+8%));\n    }\n\n    .post-full-content table th,\n    .post-full-content table td {\n        border: color-mod(var(--darkmode) l(+8%)) 1px solid;\n    }\n\n    .post-full-content .kg-bookmark-container,\n    .post-full-content .kg-bookmark-container:hover {\n        color: rgba(255, 255, 255, 0.75);\n        box-shadow: 0 0 1px rgba(255,255,255,0.9);\n    }\n\n    .kg-bookmark-title {\n        color: #fff;\n    }\n\n    .kg-bookmark-description {\n        color: rgba(255, 255, 255, 0.75);\n    }\n\n    .kg-bookmark-metadata {\n        color: rgba(255, 255, 255, 0.75);\n    }\n\n    .site-archive-header .no-image {\n        color: rgba(255, 255, 255, 0.9);\n        background: var(--darkmode);\n    }\n\n    .site-archive-header .no-image .site-header-content {\n        border-bottom-color: color-mod(var(--darkmode) l(+15%));\n    }\n\n    .site-header-content .author-profile-image {\n        box-shadow: 0 0 0 6px hsla(0,0%,100%,0.04);\n    }\n\n    .subscribe-form {\n        border: none;\n        background: linear-gradient(color-mod(var(--darkmode) l(-6%)), color-mod(var(--darkmode) l(-3%)));\n    }\n\n    .subscribe-form-title {\n        color: rgba(255, 255, 255, 0.9);\n    }\n\n    .subscribe-form p {\n        color: rgba(255, 255, 255, 0.7);\n    }\n\n    .subscribe-email {\n        border-color: color-mod(var(--darkmode) l(+6%));\n        color: rgba(255, 255, 255, 0.9);\n        background: color-mod(var(--darkmode) l(+3%));\n    }\n\n    .subscribe-email:focus {\n        border-color: color-mod(var(--darkmode) l(+25%));\n    }\n\n    .subscribe-form button {\n        opacity: 0.9;\n    }\n\n    .subscribe-form .invalid .message-error,\n    .subscribe-form .error .message-error {\n        color: color-mod(var(--red) l(+5%) s(-5%));\n    }\n\n    .subscribe-form .success .message-success {\n        color: color-mod(var(--green) l(+5%) s(-5%));\n    }\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["global.css","screen.css"],"names":[],"mappings":"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","file":"screen.css","sourcesContent":["/* Reset\n/* ---------------------------------------------------------- */\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n    margin: 0;\n    padding: 0;\n    border: 0;\n    font: inherit;\n    font-size: 100%;\n    vertical-align: baseline;\n}\nbody {\n    line-height: 1;\n}\nol,\nul {\n    list-style: none;\n}\nblockquote,\nq {\n    quotes: none;\n}\nblockquote:before,\nblockquote:after,\nq:before,\nq:after {\n    content: \"\";\n    content: none;\n}\ntable {\n    border-spacing: 0;\n    border-collapse: collapse;\n}\nimg {\n    display: block;\n    max-width: 100%;\n    height: auto;\n}\nhtml {\n    box-sizing: border-box;\n    font-family: sans-serif;\n\n    -ms-text-size-adjust: 100%;\n    -webkit-text-size-adjust: 100%;\n}\n*,\n*:before,\n*:after {\n    box-sizing: inherit;\n}\na {\n    background-color: transparent;\n}\na:active,\na:hover {\n    outline: 0;\n}\nb,\nstrong {\n    font-weight: bold;\n}\ni,\nem,\ndfn {\n    font-style: italic;\n}\nh1 {\n    margin: 0.67em 0;\n    font-size: 2em;\n}\nsmall {\n    font-size: 80%;\n}\nsub,\nsup {\n    position: relative;\n    font-size: 75%;\n    line-height: 0;\n    vertical-align: baseline;\n}\nsup {\n    top: -0.5em;\n}\nsub {\n    bottom: -0.25em;\n}\nimg {\n    border: 0;\n}\nsvg:not(:root) {\n    overflow: hidden;\n}\nmark {\n    background-color: #fdffb6;\n}\ncode,\nkbd,\npre,\nsamp {\n    font-family: monospace, monospace;\n    font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n    margin: 0; /* 3 */\n    color: inherit; /* 1 */\n    font: inherit; /* 2 */\n}\nbutton {\n    overflow: visible;\n    border: none;\n}\nbutton,\nselect {\n    text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\n/* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n    cursor: pointer; /* 3 */\n\n    -webkit-appearance: button; /* 2 */\n}\nbutton[disabled],\nhtml input[disabled] {\n    cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n    padding: 0;\n    border: 0;\n}\ninput {\n    line-height: normal;\n}\ninput:focus {\n    outline: none;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n    box-sizing: border-box; /* 1 */\n    padding: 0; /* 2 */\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n    height: auto;\n}\ninput[type=\"search\"] {\n    box-sizing: content-box; /* 2 */\n\n    -webkit-appearance: textfield; /* 1 */\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n    -webkit-appearance: none;\n}\nlegend {\n    padding: 0; /* 2 */\n    border: 0; /* 1 */\n}\ntextarea {\n    overflow: auto;\n}\ntable {\n    border-spacing: 0;\n    border-collapse: collapse;\n}\ntd,\nth {\n    padding: 0;\n}\n\n/* ==========================================================================\n   Base styles: opinionated defaults\n   ========================================================================== */\n\nhtml {\n    font-size: 62.5%;\n\n    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n    color: #35373A;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n    font-size: 1.6rem;\n    line-height: 1.6em;\n    font-weight: 400;\n    font-style: normal;\n    letter-spacing: 0;\n    text-rendering: optimizeLegibility;\n    background: #fff;\n\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n    -moz-font-feature-settings: \"liga\" on;\n}\n\n::selection {\n    text-shadow: none;\n    background: #daf2fd;\n}\n\nhr {\n    position: relative;\n    display: block;\n    width: 100%;\n    margin: 2.5em 0 3.5em;\n    padding: 0;\n    height: 1px;\n    border: 0;\n    border-top: 1px solid #f0f0f0;\n}\n\naudio,\ncanvas,\niframe,\nimg,\nsvg,\nvideo {\n    vertical-align: middle;\n}\n\nfieldset {\n    margin: 0;\n    padding: 0;\n    border: 0;\n}\n\ntextarea {\n    resize: vertical;\n}\n\n::not(.gh-content) p,\n::not(.gh-content) ul,\n::not(.gh-content) ol,\n::not(.gh-content) dl,\n::not(.gh-content) blockquote {\n    margin: 0 0 1.5em 0;\n}\n\nol,\nul {\n    padding-left: 1.3em;\n    padding-right: 1.5em;\n}\n\nol ol,\nul ul,\nul ol,\nol ul {\n    margin: 0.5em 0 1em;\n}\n\nul {\n    list-style: disc;\n}\n\nol {\n    list-style: decimal;\n}\n\nul,\nol {\n    max-width: 100%;\n}\n\nli {\n    padding-left: 0.3em;\n    line-height: 1.6em;\n}\n\nli + li {\n    margin-top: 0.5em;\n}\n\ndt {\n    float: left;\n    margin: 0 20px 0 0;\n    width: 120px;\n    color: #daf2fd;\n    font-weight: 500;\n    text-align: right;\n}\n\ndd {\n    margin: 0 0 5px 0;\n    text-align: left;\n}\n\nblockquote {\n    margin: 1.5em 0;\n    padding: 0 1.6em 0 1.6em;\n    border-left: #daf2fd;\n}\n\nblockquote p {\n    margin: 0.8em 0;\n    font-size: 1.2em;\n    font-weight: 300;\n}\n\nblockquote small {\n    display: inline-block;\n    margin: 0.8em 0 0.8em 1.5em;\n    font-size: 0.9em;\n    opacity: 0.8;\n}\n/* Quotation marks */\nblockquote small:before {\n    content: \"\\2014 \\00A0\";\n}\n\nblockquote cite {\n    font-weight: bold;\n}\nblockquote cite a {\n    font-weight: normal;\n}\n\na {\n    color: #15171A;\n    text-decoration: none;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n    margin-top: 0;\n    line-height: 1.15;\n    font-weight: 600;\n    text-rendering: optimizeLegibility;\n    letter-spacing: -0.01em;\n}\n\nh1 {\n    margin: 0 0 0.5em 0;\n    font-size: 4.8rem;\n    font-weight: 700;\n    letter-spacing: -0.015em;\n}\n@media (max-width: 600px) {\n    h1 {\n        font-size: 2.8rem;\n    }\n}\n\nh2 {\n    margin: 1.5em 0 0.5em 0;\n    font-size: 2.8rem;\n    font-weight: 700;\n}\n@media (max-width: 600px) {\n    h2 {\n        font-size: 2.3rem;\n    }\n}\n\nh3 {\n    margin: 1.5em 0 0.5em 0;\n    font-size: 2.4rem;\n    font-weight: 600;\n}\n@media (max-width: 600px) {\n    h3 {\n        font-size: 1.7rem;\n    }\n}\n\nh4 {\n    margin: 1.5em 0 0.5em 0;\n    font-size: 2.2rem;\n}\n\nh5 {\n    margin: 1.5em 0 0.5em 0;\n    font-size: 2rem;\n}\n\nh6 {\n    margin: 1.5em 0 0.5em 0;\n    font-size: 1.8rem;\n}\n","/* Table of Contents\n/* ------------------------------------------------------------\n\nThis is a development CSS file which is built to a minified\nproduction stylesheet in assets/built/screen.css\n\n1.  Global Styles\n2.  Layout\n3.  Special Templates\n4.  Site Header\n  4.1 Home header\n  4.2 Archive header\n5.  Site Navigation\n6.  Post Feed\n7.  Single Post\n  7.1. Post Byline\n  7.2. Members Subscribe Form\n  7.4. Related Posts\n  7.5. Koenig Styles\n8.  Author Template\n9.  Error Template\n11. Site Footer\n12. Dark Mode\n\n*/\n\n/* 1. Global - Set up the things\n/* ---------------------------------------------------------- */\n\n/* Import CSS reset and base styles */\n@import \"global.css\";\n\n:root {\n\n    /* Colours */\n    --color-green: #a4d037;\n    --color-yellow: #fecd35;\n    --color-red: #f05230;\n    --color-darkgrey: #15171A;\n    --color-midgrey: #738a94;\n    --color-lightgrey: #c5d2d9;\n    --color-wash: #e5eff5;\n    --color-darkmode: #151719;\n\n    /*\n    An accent color is also set by Ghost itself in\n    Ghost Admin > Settings > Brand\n\n    --ghost-accent-color: {value};\n\n    You can use this variale throughout your styles\n     */\n\n    /* Fonts */\n    --font-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\n    --font-serif: Georgia, Times, serif;\n    --font-mono: Menlo, Courier, monospace;\n\n}\n\n\n/* 2. Layout - Page building blocks\n/* ---------------------------------------------------------- */\n\n.viewport {\n    display: flex;\n    flex-direction: column;\n    min-height: 100vh;\n}\n\n/* Full width page blocks */\n.outer {\n    position: relative;\n    padding: 0 4vmin;\n}\n\n/* Centered content container blocks */\n.inner {\n    margin: 0 auto;\n    max-width: 1200px;\n    width: 100%;\n}\n\n\n/* 4. Site Header\n/* ---------------------------------------------------------- */\n\n.site-header {\n    position: relative;\n    color: #fff;\n    background: var(--ghost-accent-color);\n}\n\n.site-header-cover {\n    position: absolute;\n    top: 0;\n    right: 0;\n    bottom: 0;\n    left: 0;\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n}\n\n.site-header-content {\n    position: relative;\n    z-index: 100;\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    align-items: center;\n    padding: 6vw 3vw;\n    min-height: 200px;\n    max-height: 340px;\n    text-align: center;\n}\n\n.site-title {\n    z-index: 10;\n    margin: 0 0 0.15em;\n    padding: 0;\n}\n\n.site-logo {\n    max-height: 55px;\n}\n\n.site-header-content p {\n    z-index: 10;\n    max-width: 600px;\n    margin: 0 auto;\n    line-height: 1.2em;\n    opacity: 0.8;\n}\n\n@media (max-width: 600px) {\n    .site-header-content p {\n        max-width: 80vmin;\n        font-size: 1.8rem;\n    }\n}\n\n/* 4.1 Home header\n/* ---------------------------------------------------------- */\n\n.site-home-header {\n    position: relative;\n    z-index: 1000;\n    overflow: hidden;\n}\n\n.site-header-content {\n    padding: 18vmin 4vmin;\n    font-size: 2.5rem;\n    font-weight: 400;\n    color: #fff;\n    background: var(--ghost-accent-color);\n}\n\n\n\n/* 5. Site Navigation\n/* ---------------------------------------------------------- */\n\n.gh-head {\n    padding: 1vmin 4vmin;\n    font-size: 1.6rem;\n    line-height: 1.3em;\n    color: #fff;\n    background: var(--ghost-accent-color);\n}\n\n.gh-head a {\n    color: inherit;\n    text-decoration: none;\n}\n\n.gh-head-inner {\n    display: grid;\n    grid-gap: 2.5vmin;\n    grid-template-columns: auto auto 1fr;\n    grid-auto-flow: row dense;\n}\n\n\n/* Brand\n/* ---------------------------------------------------------- */\n\n.gh-head-brand {\n    display: flex;\n    align-items: center;\n    height: 40px;\n    max-width: 200px;\n    text-align: center;\n    word-break: break-all;\n}\n\n.gh-head-logo {\n    display: block;\n    padding: 10px 0;\n    font-weight: 700;\n    font-size: 2rem;\n    line-height: 1.2em;\n    letter-spacing: -0.02em;\n}\n\n.gh-head-logo img {\n    max-height: 26px;\n}\n\n\n/* Primary Navigation\n/* ---------------------------------------------------------- */\n\n.gh-head-menu {\n    display: flex;\n    align-items: center;\n    font-weight: 500;\n}\n\n.gh-head-menu .nav {\n    display: inline-flex;\n    flex-wrap: wrap;\n    align-items: center;\n    list-style: none;\n    margin: 0;\n    padding: 0;\n}\n\n.gh-head-menu .nav li {\n    margin: 0 2.5vmin 0 0;\n    padding: 0;\n}\n\n.gh-head-menu .nav a {\n    display: inline-block;\n    padding: 5px 0;\n    opacity: 0.8\n}\n\n.gh-head-menu .nav a:hover {\n    opacity: 1;\n}\n\n\n/* Secondary Navigation\n/* ---------------------------------------------------------- */\n\n.gh-head-actions {\n    display: flex;\n    justify-content: flex-end;\n    align-items: center;\n    list-style: none;\n    text-align: right;\n}\n\n.gh-head-actions-list {\n    display: inline-flex;\n    flex-wrap: wrap;\n    justify-content: flex-end;\n    align-items: center;\n}\n\n.gh-head-actions-list a:not([class]) {\n    display: inline-block;\n    margin: 0 0 0 1.5vmin;\n    padding: 5px 0;\n}\n\n.gh-social {\n    margin: 0 1.5vmin 0 0;\n}\n\n.gh-social a {\n    opacity: 0.8\n}\n\n.gh-social a + a {\n    margin-left: 0.8rem;\n}\n\n.gh-social a:hover {\n    opacity: 1;\n}\n\n.gh-social svg {\n    height: 22px;\n    width: 22px;\n    fill: #fff;\n}\n\n.gh-social-facebook svg {\n    height: 20px;\n    width: 20px;\n}\n\na.gh-head-button {\n    display: block;\n    padding: 8px 15px;\n    color: var(--color-darkgrey);\n    font-weight: 500;\n    letter-spacing: -0.015em;\n    font-size: 1.5rem;\n    line-height: 1em;\n    background: #fff;\n    border-radius: 30px;\n}\n\n\n/* Mobile Menu Trigger\n/* ---------------------------------------------------------- */\n\n.gh-burger {\n    position: relative;\n    display: none;\n    cursor: pointer;\n}\n\n.gh-burger-box {\n    position: relative;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 33px;\n    height: 33px;\n}\n\n.gh-burger-inner {\n    width: 100%;\n    height: 100%;\n}\n\n.gh-burger-box::before {\n    position: absolute;\n    display: block;\n    top: 0;\n    left: 0;\n    bottom: 0;\n    margin: auto;\n    content: '';\n    width: 100%;\n    height: 1px;\n    background: currentcolor;\n    transition: transform 300ms cubic-bezier(.2,.6,.3,1), width 300ms cubic-bezier(.2,.6,.3,1);\n    will-change: transform, width;\n}\n\n.gh-burger-inner::before,\n.gh-burger-inner::after {\n    position: absolute;\n    display: block;\n    top: 0;\n    left: 0;\n    bottom: 0;\n    margin: auto;\n    content: '';\n    width: 100%;\n    height: 1px;\n    background: currentcolor;\n    transition: transform 250ms cubic-bezier(.2,.7,.3,1), width 250ms cubic-bezier(.2,.7,.3,1);\n    will-change: transform, width;\n}\n\n.gh-burger-inner::before {\n    transform: translatey(-6px);\n}\n.gh-burger-inner::after {\n    transform: translatey(6px);\n}\n\nbody:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::before {\n    transform: translatey(-8px);\n}\nbody:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::after {\n    transform: translatey(8px);\n}\n\n.gh-head-open .gh-burger-box::before {\n    width: 0;\n    transform: translatex(19px);\n    transition: transform 200ms cubic-bezier(.2,.7,.3,1), width 200ms cubic-bezier(.2,.7,.3,1);\n}\n\n.gh-head-open .gh-burger-inner::before {\n    width: 26px;\n    transform: translatex(6px) rotate(135deg);\n}\n\n.gh-head-open .gh-burger-inner::after {\n    width: 26px;\n    transform: translatex(6px) rotate(-135deg);\n}\n\n\n/* Mobile Menu\n/* ---------------------------------------------------------- */\n/* IDs needed to ensure sufficient specificity */\n\n@media (max-width: 900px) {\n    .gh-burger {\n        display: inline-block;\n    }\n    #gh-head {\n        transition: all 0.4s ease-out;\n        overflow: hidden;\n    }\n    #gh-head .gh-head-inner {\n        height: 100%;\n        grid-template-columns: 1fr;\n    }\n    #gh-head .gh-head-brand {\n        position: relative;\n        z-index: 10;\n        grid-column-start: auto;\n        max-width: none;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        user-select: none;\n    }\n    .home-template #gh-head .gh-head-brand {\n        justify-content: flex-end;\n    }\n    #gh-head .gh-head-menu {\n        align-self: center;\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        text-align: center;\n        margin: 0 0 10vh 0;\n        font-weight: 300;\n        font-size: 3.6rem;\n        line-height: 1.1em;\n    }\n    #gh-head .gh-head-menu .nav li {\n        margin: 5px 0;\n    }\n    #gh-head .gh-head-menu .nav a {\n        padding: 8px 0;\n    }\n    #gh-head .gh-head-menu .nav {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n    }\n    #gh-head .gh-head-actions {\n        padding: 20px 0;\n        justify-content: center;\n        text-align: left;\n    }\n    #gh-head .gh-head-actions a {\n        margin: 0 10px;\n    }\n    /* Hide collapsed content */\n    #gh-head .gh-head-actions,\n    #gh-head .gh-head-menu {\n        display: none;\n    }\n    /* Open the menu */\n    .gh-head-open {\n        overflow: hidden;\n        height: 100vh;\n    }\n    .gh-head-open #gh-head {\n        position: fixed;\n        top: 0;\n        right: 0;\n        bottom: 0;\n        left: 0;\n        z-index: 3999999;\n        overflow-y: scroll;\n    }\n    .gh-head-open #gh-head .gh-head-inner {\n        grid-template-rows: auto 1fr auto;\n    }\n    .gh-head-open #gh-head .gh-head-actions,\n    .gh-head-open #gh-head .gh-head-menu {\n        display: flex;\n    }\n}\n\n@media (max-width: 600px) {\n    #gh-head .gh-head-menu {\n        font-size: 6vmin;\n    }\n}\n\n.home-template .gh-head {\n    position: absolute;\n    top: 0;\n    right: 0;\n    left: 0;\n    z-index: 2000;\n}\n\n.home-template .gh-head.has-cover {\n    background: transparent;\n}\n\n.home-template.gh-head-open .gh-head {\n    background: var(--ghost-accent-color);\n}\n\n.home-template .gh-head-logo {\n    display: none;\n}\n.home-template .gh-head-menu {\n    margin-left: -2.5vmin;\n}\n\n\n/* 6. Post Feed\n/* ---------------------------------------------------------- */\n\n.post-feed {\n    position: relative;\n    display: grid;\n    grid-gap: 4vmin;\n    grid-template-columns: 1fr 1fr 1fr;\n    padding: 4vmin 0;\n}\n\n@media (max-width: 1000px) {\n    .post-feed {\n        grid-template-columns: 1fr 1fr;\n    }\n}\n@media (max-width: 700px) {\n    .post-feed {\n        grid-template-columns: 1fr;\n        grid-gap: 40px;\n    }\n}\n\n.post-card {\n    position: relative;\n    flex: 1 1 301px;\n    display: flex;\n    flex-direction: column;\n    min-height: 220px;\n    background-size: cover;\n    word-break: break-word;\n}\n\n.post-card-image-link {\n    position: relative;\n    display: block;\n    overflow: hidden;\n    border-radius: 3px;\n}\n\n.post-card-image {\n    width: 100%;\n    height: 200px;\n    background: var(--color-lightgrey) no-repeat center center;\n\n    object-fit: cover;\n}\n\n.post-card-content-link {\n    position: relative;\n    display: block;\n    color: var(--color-darkgrey);\n}\n\n.post-card-content-link:hover {\n    text-decoration: none;\n}\n\n.post-card-header {\n    margin: 20px 0 0;\n}\n\n.post-feed .no-image .post-card-content-link {\n    padding: 0;\n}\n\n.no-image .post-card-header {\n    margin-top: 0;\n}\n\n.post-card-primary-tag {\n    margin: 0 0 0.2em;\n    color: var(--ghost-accent-color);\n    font-size: 1.2rem;\n    font-weight: 500;\n    letter-spacing: 0.2px;\n    text-transform: uppercase;\n}\n\n.post-card-title {\n    margin: 0 0 0.4em;\n    font-size: 2.4rem;\n    transition: color 0.2s ease-in-out;\n}\n\n.no-image .post-card-title {\n    margin-top: 0;\n}\n\n.post-card-content {\n    flex-grow: 1;\n    display: flex;\n    flex-direction: column;\n}\n\n.post-card-excerpt {\n    max-width: 56em;\n    color: color-mod(var(--color-midgrey) l(-8%));\n}\n\n.post-card-excerpt p {\n    margin-bottom: 1em;\n    display: -webkit-box;\n    overflow-y: hidden;\n    -webkit-line-clamp: 3;\n    -webkit-box-orient: vertical;\n    word-break: break-word;\n}\n\n.post-card-meta {\n    display: flex;\n    align-items: center;\n    padding: 0;\n}\n\n.author-profile-image,\n.avatar-wrapper {\n    display: block;\n    width: 100%;\n    height: 100%;\n    background: color-mod(var(--color-lightgrey) l(+10%));\n    border-radius: 100%;\n\n    object-fit: cover;\n}\n\n.post-card-meta .profile-image-wrapper,\n.post-card-meta .avatar-wrapper {\n    position: relative;\n}\n\n.author-list {\n    display: flex;\n    flex-wrap: wrap;\n    margin: 0 0 0 4px;\n    padding: 0;\n    list-style: none;\n}\n\n.author-list-item {\n    position: relative;\n    flex-shrink: 0;\n    margin: 0;\n    padding: 0;\n}\n\n.static-avatar {\n    display: block;\n    overflow: hidden;\n    margin: 0 0 0 -6px;\n    width: 36px;\n    height: 36px;\n    border-radius: 100%;\n    box-shadow: 0 0 0 1px rgba(255,255,255,0.2);\n}\n\n.post-card-byline-content {\n    flex: 1 1 50%;\n    display: flex;\n    flex-direction: column;\n    margin: 0 0 0 8px;\n    color: color-mod(var(--color-midgrey) l(+10%));\n    font-size: 1.4rem;\n    line-height: 1.2em;\n    font-weight: 400;\n}\n\n.post-card-byline-content span {\n    margin: 0;\n}\n\n.post-card-byline-content a {\n    color: color-mod(var(--color-darkgrey) l(+15%));\n    font-weight: 600;\n}\n\n.post-card-byline-date {\n    font-size: 1.3rem;\n    line-height: 1.5em;\n}\n\n.post-card-byline-date .bull {\n    display: inline-block;\n    margin: 0 2px;\n    opacity: 0.6;\n}\n\n.single-author-byline {\n    display: flex;\n    flex-direction: column;\n    margin-left: 5px;\n    color: color-mod(var(--color-midgrey) l(-10%));\n    font-size: 1.3rem;\n    line-height: 1.4em;\n    font-weight: 500;\n}\n\n.single-author {\n    display: flex;\n    align-items: center;\n}\n\n.single-author .static-avatar {\n    margin-left: -2px;\n}\n\n.single-author-name {\n    display: inline-block;\n}\n\n/* Special Styling for home page grid (below):\n\nThe first post in the list is styled to be bigger than the others and take over\nthe full width of the grid to give it more emphasis. Wrapped in a media query to\nmake sure this only happens on large viewports / desktop-ish devices.\n\n */\n\n@media (min-width: 1001px) {\n    .post-card-large {\n        grid-column: 1 / span 3;\n        display: grid;\n        grid-gap: 4vmin;\n        grid-template-columns: 1fr 1fr 1fr;\n        min-height: 280px;\n        border-top: 0;\n    }\n\n    .post-card-large:not(.no-image) .post-card-header {\n        margin-top: 0;\n    }\n\n    .post-card-large .post-card-image-link {\n        position: relative;\n        grid-column: 1 / span 2;\n        margin-bottom: 0;\n        min-height: 380px;\n    }\n\n    .post-card-large .post-card-image {\n        position: absolute;\n        width: 100%;\n        height: 100%;\n    }\n\n    .post-card-large .post-card-content {\n        justify-content: center;\n    }\n\n    .post-card-large .post-card-title {\n        margin-top: 0;\n        font-size: 3.2rem;\n    }\n\n    .post-card-large .post-card-excerpt p {\n        margin-bottom: 1.5em;\n        font-size: 1.7rem;\n        line-height: 1.55em;\n        -webkit-line-clamp: 8;\n    }\n}\n\n\n@media (max-width: 500px) {\n    .post-card-title {\n        font-size: 1.9rem;\n    }\n\n    .post-card-excerpt {\n        font-size: 1.6rem;\n    }\n}\n\n\n/* 7. Single Post\n/* ---------------------------------------------------------- */\n\n.article {\n    padding: 8vmin 0;\n    word-break: break-word;\n}\n\n.article-header {\n    padding: 0 0 6vmin 0;\n}\n\n.article-tag {\n    display: flex;\n    justify-content: flex-start;\n    align-items: center;\n    margin: 0 0 0.5rem;\n    color: var(--color-midgrey);\n    font-size: 1.3rem;\n    line-height: 1.4em;\n    letter-spacing: 0.02em;\n    font-weight: 600;\n    text-transform: uppercase;\n}\n\n.article-tag a {\n    color: var(--ghost-accent-color);\n}\n\n.article-title {\n    color: color-mod(var(--color-darkgrey) l(-5%));\n}\n\n.article-excerpt {\n    margin: 0 0 1rem;\n    font-size: 2rem;\n    line-height: 1.4em;\n    opacity: 0.6;\n}\n\n.gh-canvas .article-image {\n    grid-column: wide-start / wide-end;\n    width: 100%;\n    margin: 6vmin 0 0;\n}\n\n.gh-canvas .article-image img {\n    display: block;\n    margin-left: auto;\n    margin-right: auto;\n    width: 100%;\n}\n\n@media (max-width: 600px) {\n    .article-excerpt {\n        font-size: 1.8rem;\n    }\n}\n\n/* -------- */\n\n/* Content grid\n/* ---------------------------------------------------------- */\n\n/* Canvas creates a multi-column, centered grid which the post\nis laid out on top of. Canvas just defines the grid, we don't\nuse it for applying any other styles. */\n\n.gh-canvas {\n    display: grid;\n    grid-template-columns:\n        [full-start]\n        minmax(4vmin, auto)\n            [wide-start]\n            minmax(auto, 240px)\n                [main-start]\n                    min(720px, calc(100% - 8vw))\n                [main-end]\n            minmax(auto, 240px)\n            [wide-end]\n        minmax(4vmin, auto)\n        [full-end]\n    ;\n}\n\n.gh-canvas > * {\n    grid-column: main-start / main-end;\n}\n\n.kg-width-wide {\n    grid-column: wide-start / wide-end;\n}\n\n.kg-width-full {\n    grid-column: full-start / full-end;\n}\n\n.kg-width-full img {\n    width: 100%;\n}\n\n\n/* Content\n/* ---------------------------------------------------------- */\n\n/* Content refers to styling all page and post content that is\ncreated within the Ghost editor. The main content handles\nheadings, text, images and lists. We deal with cards lower down. */\n\n/* Default vertical spacing */\n.gh-content > * + * {\n    margin-top: 4vmin;\n    margin-bottom: 0;\n}\n\n/* [id] represents all headings h1-h6, reset all margins */\n.gh-content > [id] {\n    margin: 0;\n    color: var(--color-darkgrey);\n}\n\n/* Add back a top margin to all headings, unless a heading\nis the very first element in the post content */\n.gh-content > [id]:not(:first-child) {\n    margin: 2em 0 0;\n}\n\n/* Add a small margin between a heading and anything after it */\n.gh-content > [id] + * {\n    margin-top: 1.5rem !important;\n}\n\n/* A larger margin before/after HRs and blockquotes */\n.gh-content > hr,\n.gh-content > blockquote {\n    position: relative;\n    margin-top: 6vmin;\n}\n.gh-content > hr + *,\n.gh-content > blockquote + * {\n    margin-top: 6vmin !important;\n}\n\n/* Now the content typography styles */\n.gh-content a {\n    color: var(--ghost-accent-color);\n    text-decoration: underline;\n    word-break: break-word;\n}\n\n.gh-content > blockquote,\n.gh-content > ol,\n.gh-content > ul,\n.gh-content > dl,\n.gh-content > p {\n    font-family: var(--font-serif);\n    font-weight: 400;\n    font-size: 2.1rem;\n    line-height: 1.6em;\n}\n\n.gh-content > ul,\n.gh-content > ol,\n.gh-content > dl {\n    padding-left: 1.9em;\n}\n\n.gh-content > blockquote {\n    position: relative;\n    font-style: italic;\n    padding: 0;\n}\n\n.gh-content > blockquote::before {\n    content: \"\";\n    position: absolute;\n    left: -1.5em;\n    top: 0;\n    bottom: 0;\n    width: 0.3rem;\n    background: var(--ghost-accent-color);\n}\n\n.gh-content :not(pre) > code {\n    vertical-align: middle;\n    padding: 0.15em 0.4em 0.15em;\n    border: #e1eaef 1px solid;\n    font-weight: 400 !important;\n    font-size: 0.9em;\n    line-height: 1em;\n    color: #15171A;\n    background: #f0f6f9;\n    border-radius: 0.25em;\n}\n\n.gh-content pre {\n    overflow: auto;\n    padding: 16px 20px;\n    color: var(--color-wash);\n    font-size: 1.4rem;\n    line-height: 1.5em;\n    background: var(--color-darkgrey);\n    border-radius: 5px;\n    box-shadow: 0 2px 6px -2px rgba(0,0,0,.1), 0 0 1px rgba(0,0,0,.4);\n}\n\n@media (max-width: 650px) {\n    .gh-content blockquote,\n    .gh-content ol,\n    .gh-content ul,\n    .gh-content dl,\n    .gh-content p {\n        font-size: 1.7rem;\n    }\n\n    .gh-content blockquote::before {\n        left: -4vmin;\n    }\n}\n\n\n/* Cards\n/* ---------------------------------------------------------- */\n\n/* Cards are dynamic blocks of content which appear within Ghost\nposts, for example: embedded videos, tweets, galleries, or\nspecially styled bookmark links. We add extra styling here to\nmake sure they look good, and are given a bit of extra spacing. */\n\n/* Add extra margin before/after any cards,\nexcept for when immediately preceeded by a heading */\n.gh-content :not(.kg-card):not([id]) + .kg-card {\n    margin-top: 6vmin;\n    margin-bottom: 0;\n}\n.gh-content .kg-card + :not(.kg-card) {\n    margin-top: 6vmin;\n    margin-bottom: 0;\n}\n\n/* This keeps small embeds centered */\n.kg-embed-card {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    width: 100%;\n}\n\n/* This keeps small iamges centered */\n.kg-image-card img {\n    margin: auto;\n}\n\n\n/* Captions */\n.kg-card figcaption {\n    padding: 1.5rem 1.5rem 0;\n    text-align: center;\n    color: rgba(0,0,0,0.5);\n    font-weight: 600;\n    font-size: 1.3rem;\n    line-height: 1.4em;\n}\n.kg-card figcaption strong {\n    color: rgba(0,0,0,0.8);\n}\n\n\n/* Highly specific styles for traditional Instagram embeds */\niframe.instagram-media {\n    margin-top: 6vmin !important;\n    margin-left: auto !important;\n    margin-right: auto !important;\n    margin-bottom: 0 !important;\n}\n\niframe.instagram-media + script + :not([id]) {\n    margin-top: 6vmin;\n}\n\n\n/* Galleries\n/* ---------------------------------------------------------- */\n\n/* When there galleries are mixed with images, reduce margin\nbetween them, so it looks like 1 big gallery */\n.kg-image-card + .kg-gallery-card,\n.kg-gallery-card + .kg-image-card,\n.kg-gallery-card + .kg-gallery-card {\n    margin-top: 0.75em;\n}\n\n.kg-image-card.kg-card-hascaption + .kg-gallery-card,\n.kg-gallery-card.kg-card-hascaption + .kg-image-card,\n.kg-gallery-card.kg-card-hascaption + .kg-gallery-card {\n    margin-top: 1.75em;\n}\n\n.kg-gallery-container {\n    position: relative;\n}\n\n.kg-gallery-row {\n    display: flex;\n    flex-direction: row;\n    justify-content: center;\n}\n\n.kg-gallery-image img {\n    display: block;\n    margin: 0;\n    width: 100%;\n    height: 100%;\n}\n\n.kg-gallery-row:not(:first-of-type) {\n    margin: 0.75em 0 0 0;\n}\n\n.kg-gallery-image:not(:first-of-type) {\n    margin: 0 0 0 0.75em;\n}\n\n\n/* Bookmark Cards\n/* ---------------------------------------------------------- */\n\n/* These are styled links with structured data, similar to a\nTwitter card. These styles roughly match what you see in the\nGhost editor. */\n\n.kg-bookmark-card,\n.kg-bookmark-publisher {\n    position: relative;\n    width: 100%;\n}\n\n.kg-bookmark-container,\n.kg-bookmark-container:hover {\n    display: flex;\n    color: currentColor;\n    font-family: var(--font-sans-serif);\n    text-decoration: none !important;\n    background: rgba(255,255,255,0.6);\n    border-radius: 5px;\n    box-shadow: 0 2px 6px -2px rgba(0, 0, 0, 0.1), 0 0 1px rgba(0, 0, 0, 0.4);\n    overflow: hidden;\n}\n\n.kg-bookmark-content {\n    display: flex;\n    flex-direction: column;\n    flex-grow: 1;\n    flex-basis: 100%;\n    align-items: flex-start;\n    justify-content: flex-start;\n    padding: 20px;\n}\n\n.kg-bookmark-title {\n    font-size: 1.5rem;\n    line-height: 1.4em;\n    font-weight: 600;\n    color: #15171A;\n}\n\n.kg-bookmark-description {\n    display: -webkit-box;\n    font-size: 1.4rem;\n    line-height: 1.5em;\n    margin-top: 3px;\n    color: #626d79;\n    font-weight: 400;\n    max-height: 44px;\n    overflow-y: hidden;\n    -webkit-line-clamp: 2;\n    -webkit-box-orient: vertical;\n}\n\n.kg-bookmark-metadata {\n    display: flex;\n    align-items: center;\n    margin-top: 22px;\n    width: 100%;\n    color: #394047;\n    font-size: 1.4rem;\n    font-weight: 500;\n}\n\n.kg-bookmark-icon {\n    width: 20px;\n    height: 20px;\n    margin-right: 6px;\n}\n\n.kg-bookmark-author,\n.kg-bookmark-publisher {\n    display: inline;\n}\n\n.kg-bookmark-publisher {\n    text-overflow: ellipsis;\n    overflow: hidden;\n    max-width: 240px;\n    white-space: nowrap;\n    display: block;\n    line-height: 1.65em;\n}\n\n.kg-bookmark-metadata > span:nth-of-type(2) {\n    color: #626d79;\n    font-weight: 400;\n}\n\n.kg-bookmark-metadata > span:nth-of-type(2):before {\n    content: \"•\";\n    color: #394047;\n    margin: 0 6px;\n}\n\n.kg-bookmark-thumbnail {\n    position: relative;\n    flex-grow: 1;\n    min-width: 33%;\n}\n\n.kg-bookmark-thumbnail img {\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    position: absolute;\n    top: 0;\n    left: 0;\n    border-radius: 0 4px 4px 0;\n}\n\n\n/* Card captions\n/* ---------------------------------------------------------- */\n\n.kg-width-full.kg-card-hascaption {\n    display: grid;\n    grid-template-columns: inherit;\n}\n\n.kg-width-wide.kg-card-hascaption img {\n    grid-column: wide-start / wide-end;\n}\n.kg-width-full.kg-card-hascaption img {\n    grid-column: 1 / -1;\n}\n\n.kg-width-full.kg-card-hascaption figcaption {\n    grid-column: main-start / main-end;\n}\n\n.article-comments {\n    margin: 6vmin 0 0 0;\n}\n\n/* -----old------ */\n\n.footnotes-sep {\n    margin-bottom: 30px;\n}\n\n.footnotes {\n    font-size: 1.5rem;\n}\n\n.footnotes p {\n    margin: 0;\n}\n\n.footnote-backref {\n    font-size: 1.2rem;\n    font-weight: bold;\n    text-decoration: none !important;\n    box-shadow: none !important;\n}\n\n/* Tables */\n.post-full-content table {\n    display: inline-block;\n    overflow-x: auto;\n    margin: 0.5em 0 2.5em;\n    max-width: 100%;\n    width: auto;\n    border-spacing: 0;\n    border-collapse: collapse;\n    font-family: var(--font-sans-serif);\n    font-size: 1.6rem;\n    white-space: nowrap;\n    vertical-align: top;\n}\n\n.post-full-content table {\n    -webkit-overflow-scrolling: touch;\n    background: radial-gradient(ellipse at left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 0 center, radial-gradient(ellipse at right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 100% center;\n    background-attachment: scroll, scroll;\n    background-size: 10px 100%, 10px 100%;\n    background-repeat: no-repeat;\n}\n\n.post-full-content table td:first-child {\n    background-image: linear-gradient(to right, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n    background-size: 20px 100%;\n    background-repeat: no-repeat;\n}\n\n.post-full-content table td:last-child {\n    background-image: linear-gradient(to left, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n    background-position: 100% 0;\n    background-size: 20px 100%;\n    background-repeat: no-repeat;\n}\n\n.post-full-content table th {\n    color: var(--color-darkgrey);\n    font-size: 1.2rem;\n    font-weight: 700;\n    letter-spacing: 0.2px;\n    text-align: left;\n    text-transform: uppercase;\n    background-color: color-mod(var(--color-wash) l(+4%));\n}\n\n.post-full-content table th,\n.post-full-content table td {\n    padding: 6px 12px;\n    border: color-mod(var(--color-wash) l(-1%) s(-5%)) 1px solid;\n}\n\n\n/* 7.1. Post Byline\n/* ---------------------------------------------------------- */\n\n.article-byline {\n    display: flex;\n    justify-content: space-between;\n    margin: 20px 0 0;\n}\n\n.article-byline-content {\n    flex-grow: 1;\n    display: flex;\n    align-items: center;\n}\n\n.article-byline-content .author-list {\n    justify-content: flex-start;\n    padding: 0 12px 0 0;\n}\n\n.article-byline-meta {\n    color: color-mod(var(--color-midgrey));\n    font-size: 1.4rem;\n    line-height: 1.2em;\n}\n\n.article-byline-meta h4 {\n    margin: 0 0 3px;\n    font-size: 1.6rem;\n}\n\n.article-byline-meta .bull {\n    display: inline-block;\n    margin: 0 2px;\n    opacity: 0.6;\n}\n\n.author-avatar {\n    display: block;\n    overflow: hidden;\n    margin: 0 -4px;\n    width: 50px;\n    height: 50px;\n    border: #fff 2px solid;\n    border-radius: 100%;\n    transition: all 0.5s cubic-bezier(0.4, 0.01, 0.165, 0.99) 700ms;\n}\n\n.basic-info .avatar-wrapper {\n    position: relative;\n    margin: 0;\n    width: 60px;\n    height: 60px;\n    border: none;\n    background: rgba(229, 239, 245, 0.1);\n}\n\n.basic-info .avatar-wrapper svg {\n    margin: 0;\n    width: 60px;\n    height: 60px;\n    opacity: 0.15;\n}\n\n.page-template .article-title {\n    margin-bottom: 0;\n}\n\n\n/* 7.3. Subscribe\n/* ---------------------------------------------------------- */\n\n.footer-cta {\n    position: relative;\n    padding: 9vmin 4vmin 10vmin;\n    color: #fff;\n    text-align: center;\n    background: var(--color-darkgrey);\n}\n\n/* Increases the default h2 size by 15%, for small and large screens */\n.footer-cta h2 {\n    margin: 0 0 30px;\n    font-size: 3.2rem;\n}\n\n@media (max-width: 600px) {\n    .footer-cta h2 {\n        font-size: 2.65rem;\n    }\n}\n\n.footer-cta-button {\n    position: relative;\n    display: inline-flex;\n    align-items: center;\n    justify-content: space-between;\n    width: 100%;\n    max-width: 500px;\n    padding: 5px 5px 5px 15px;\n    font-size: 1.8rem;\n    color: var(--color-midgrey);\n    background: #fff;\n    border-radius: 8px;\n}\n\n.footer-cta-button span {\n    display: inline-block;\n    padding: 10px 20px;\n    color: #fff;\n    font-weight: 500;\n    background: var(--ghost-accent-color);\n    border-radius: 5px;\n}\n\n\n/* 7.4. Read more\n/* ---------------------------------------------------------- */\n\n.read-more-wrap {\n    width: 100%;\n    padding: 4vmin;\n    margin: 0 auto -40px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    background: color-mod(var(--color-darkgrey) l(-5%));\n}\n\n.read-more {\n    display: grid;\n    grid-template-columns: 1fr 1fr 1fr;\n    grid-gap: 4vmin;\n}\n\n.read-more .post-card-title {\n    color: #fff;\n    opacity: 0.8;\n}\n\n.read-more .post-card-excerpt {\n    color: rgba(255, 255, 255, 0.6);\n}\n\n.read-more .post-card-byline-content a {\n    color: #fff;\n}\n\n\n@media (max-width: 1000px) {\n    .read-more {\n        grid-template-columns: 1fr 1fr;\n    }\n    .read-more article:nth-child(3) {\n        display: none;\n    }\n}\n\n@media (max-width: 700px) {\n    .read-more {\n        grid-template-columns: 1fr;\n    }\n    .read-more article:nth-child(2) {\n        display: none;\n    }\n}\n\n\n/* 8. Author Template\n/* ---------------------------------------------------------- */\n\n.author-template .posts {\n    position: relative;\n    height: 100%;\n    display: grid;\n    grid-template-columns: 200px 1fr 1fr;\n    grid-gap: 4vmin;\n}\n\n.author-template .posts .post-feed {\n    grid-column: 2 / 4;\n    grid-template-columns: 1fr 1fr;\n}\n\n.author-profile {\n    padding: 4vmin 0;\n}\n\n.author-profile-content {\n    height: auto;\n    position: sticky;\n    top: 4vmin;\n    font-size: 1.4rem;\n    line-height:  1.4em;\n}\n\n.author-profile-pic {\n    display: block;\n    width: 150px;\n    height: 150px;\n    object-fit: cover;\n    margin: 0 0 2rem;\n    background: color-mod(var(--color-lightgrey) l(+10%));\n    border-radius: 50%;\n}\n\n.author-profile h1 {\n    margin: 0 0 0.3em;\n    font-size: 2rem;\n}\n\n.author-profile p {\n    margin: 0 0 1.5em;\n    color: color-mod(var(--color-midgrey) l(-8%));\n}\n\n.author-profile-location {\n    margin: 0 0 1.5em;\n    font-weight: 700;\n}\n\n.author-profile-social-link {\n    display: block;\n    padding: 0 0 5px;\n    font-size: 1.3rem;\n    color: color-mod(var(--color-midgrey) l(-8%));\n    text-overflow: ellipsis;\n    overflow: hidden;\n    max-width: 100%;\n    white-space: nowrap;\n}\n\n.author-profile-social-link:hover {\n    color: var(--color-darkgrey);\n}\n\n@media (max-width: 900px) {\n    .author-template .posts .post-feed {\n        grid-template-columns: 1fr;\n    }\n}\n\n@media (max-width: 650px) {\n    .author-template .posts {\n        grid-template-columns: 1fr;\n        grid-gap: 0;\n    }\n    .author-template .posts .post-feed {\n        grid-column: 1 / auto;\n    }\n    .author-profile {\n        padding-right: 0;\n    }\n    .author-profile-content {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        text-align: center;\n    }\n}\n\n\n/* 8. Tag Template\n/* ---------------------------------------------------------- */\n\n.tag-template .post-card-large .post-card-image-link {\n    grid-column: 2 / span 2;\n    order: 2;\n}\n\n.tag-template .post-card-large .post-card-content {\n    order: 1;\n}\n\n\n/* 9. Error Template\n/* ---------------------------------------------------------- */\n\n.error-content {\n    padding: 14vw 4vw 6vw;\n}\n\n.error-message {\n    padding-bottom: 10vw;\n    text-align: center;\n}\n\n.error-code {\n    margin: 0;\n    color: var(--ghost-accent-color);\n    font-size: 12vw;\n    line-height: 1em;\n    letter-spacing: -5px;\n}\n\n.error-description {\n    margin: 0;\n    color: var(--color-midgrey);\n    font-size: 3.2rem;\n    line-height: 1.3em;\n    font-weight: 400;\n}\n\n.error-link {\n    display: inline-block;\n    margin-top: 5px;\n}\n\n@media (min-width: 940px) {\n    .error-content .post-card {\n        margin-bottom: 0;\n        padding-bottom: 0;\n        border-bottom: none;\n    }\n}\n\n@media (max-width: 800px) {\n    .error-content {\n        padding-top: 24vw;\n    }\n    .error-code {\n        font-size: 11.2rem;\n    }\n    .error-message {\n        padding-bottom: 16vw;\n    }\n    .error-description {\n        margin: 5px 0 0 0;\n        font-size: 1.8rem;\n    }\n}\n\n@media (max-width: 500px) {\n    .error-content {\n        padding-top: 28vw;\n    }\n    .error-message {\n        padding-bottom: 14vw;\n    }\n}\n\n\n/* 11. Site Footer\n/* ---------------------------------------------------------- */\n\n.site-footer {\n    position: relative;\n    margin: 40px 0 0 0;\n    padding: 40px 4vmin 140px;\n    color: #fff;\n    background: color-mod(var(--color-darkgrey) l(-5%));\n}\n\n.site-footer .inner {\n    display: grid;\n    grid-gap: 40px;\n    grid-template-columns: auto 1fr auto;\n    color: rgba(255,255,255,0.7);\n    font-size: 1.3rem;\n}\n\n.site-footer .copyright a {\n    color: #fff;\n    letter-spacing: -0.015em;\n    font-weight: 500;\n}\n\n.site-footer a {\n    color: rgba(255,255,255,0.7);\n}\n\n.site-footer a:hover {\n    color: rgba(255,255,255,1);\n    text-decoration: none;\n}\n\n.site-footer-nav ul {\n    display: flex;\n    justify-content: center;\n    flex-wrap: wrap;\n    margin: 0 0 20px;\n    padding: 0;\n    list-style: none;\n}\n\n.site-footer-nav li {\n    display: inline-flex;\n    align-items: center;\n    padding: 0;\n    margin: 0;\n    line-height: 2em;\n}\n\n.site-footer-nav a {\n    position: relative;\n    display: inline-flex;\n    align-items: center;\n    margin-left: 10px;\n}\n\n.site-footer-nav li:not(:first-child) a:before {\n    content: \"\";\n    display: block;\n    width: 2px;\n    height: 2px;\n    margin: 0 10px 0 0;\n    background: #fff;\n    border-radius: 100%;\n}\n\n@media (max-width: 800px) {\n    .site-footer .inner {\n        max-width: 500px;\n        grid-template-columns: 1fr;\n        grid-gap: 0;\n        text-align: center;\n    }\n    .site-footer .copyright,\n    .site-footer .copyright a {\n        color: #fff;\n        font-size: 1.5rem;\n    }\n}\n\n\n/* 12. Dark Mode\n/* ---------------------------------------------------------- */\n\n/* If you prefer a dark color scheme, you can enable dark mode\nby adding the following code to the Head section of \"Code Injection\"\nsettings inside: Ghost Admin > Settings > Advanced\n\n\n\nOr you can just edit default.hbs and add the .dark-mode class directly\nto the html tag on the very first line of the file.\n\n */\n\nhtml.dark-mode body {\n    color: rgba(255, 255, 255, 0.75);\n    background: var(--color-darkmode);\n}\n\nhtml.dark-mode img {\n    opacity: 0.9;\n}\n\nhtml.dark-mode .post-card,\nhtml.dark-mode .post-card:hover {\n    border-bottom-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .post-card-byline-content a {\n    color: rgba(255, 255, 255, 0.75);\n}\n\nhtml.dark-mode .post-card-byline-content a:hover {\n    color: #fff;\n}\n\nhtml.dark-mode .post-card-image {\n    background: var(--color-darkmode);\n}\n\nhtml.dark-mode .post-card-title {\n    color: rgba(255, 255, 255, 0.85);\n}\n\nhtml.dark-mode .post-card-excerpt {\n    color: color-mod(var(--color-midgrey) l(+10%));\n}\n\nhtml.dark-mode .post-full-content {\n    background: var(--color-darkmode);\n}\n\nhtml.dark-mode .article-title {\n    color: rgba(255, 255, 255, 0.9);\n}\n\nhtml.dark-mode .article-excerpt {\n    color: color-mod(var(--color-midgrey) l(+10%));\n}\n\nhtml.dark-mode .post-full-image {\n    background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .article-byline {\n    border-top-color: color-mod(var(--color-darkmode) l(+15%));\n}\n\nhtml.dark-mode .article-byline-meta h4 a {\n    color: rgba(255, 255, 255, 0.75);\n}\n\nhtml.dark-mode .article-byline-meta h4 a:hover {\n    color: #fff;\n}\n\nhtml.dark-mode .no-image .author-social-link a {\n    color: rgba(255, 255, 255, 0.75);\n}\n\nhtml.dark-mode .gh-content h1,\nhtml.dark-mode .gh-content h2,\nhtml.dark-mode .gh-content h3,\nhtml.dark-mode .gh-content h4,\nhtml.dark-mode .gh-content h5,\nhtml.dark-mode .gh-content h6 {\n    color: rgba(255, 255, 255, 0.9);\n}\n\nhtml.dark-mode .gh-content pre {\n    background: color-mod(var(--color-darkgrey) l(-8%));\n}\n\nhtml.dark-mode .gh-content :not(pre) > code {\n    background: color-mod(var(--color-darkgrey) l(+6%));\n    border-color: color-mod(var(--color-darkmode) l(+8%));\n    color: var(--color-wash);\n}\n\nhtml.dark-mode .post-full-content a {\n    color: #fff;\n    box-shadow: inset 0 -1px 0 #fff;\n}\n\nhtml.dark-mode .post-full-content strong {\n    color: #fff;\n}\n\nhtml.dark-mode .post-full-content em {\n    color: #fff;\n}\n\nhtml.dark-mode .post-full-content code {\n    color: #fff;\n    background: #000;\n}\n\nhtml.dark-mode hr {\n    border-top-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .post-full-content hr:after {\n    background: color-mod(var(--color-darkmode) l(+8%));\n    box-shadow: var(--color-darkmode) 0 0 0 5px;\n}\n\nhtml.dark-mode .gh-content figcaption {\n    color: rgba(255, 255, 255, 0.6);\n}\n\nhtml.dark-mode .post-full-content table td:first-child {\n    background-image: linear-gradient(to right, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n}\n\nhtml.dark-mode .post-full-content table td:last-child {\n    background-image: linear-gradient(to left, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n}\n\nhtml.dark-mode .post-full-content table th {\n    color: rgba(255, 255, 255, 0.85);\n    background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .post-full-content table th,\nhtml.dark-mode .post-full-content table td {\n    border: color-mod(var(--color-darkmode) l(+8%)) 1px solid;\n}\n\nhtml.dark-mode .post-full-content .kg-bookmark-container,\nhtml.dark-mode .post-full-content .kg-bookmark-container:hover {\n    color: rgba(255, 255, 255, 0.75);\n    box-shadow: 0 0 1px rgba(255,255,255,0.9);\n}\n\nhtml.dark-mode .post-full-content input {\n    color: color-mod(var(--color-midgrey) l(-30%));\n}\n\nhtml.dark-mode .kg-bookmark-title {\n    color: #fff;\n}\n\nhtml.dark-mode .kg-bookmark-description {\n    color: rgba(255, 255, 255, 0.75);\n}\n\nhtml.dark-mode .kg-bookmark-metadata {\n    color: rgba(255, 255, 255, 0.75);\n}\n\nhtml.dark-mode .site-archive-header .no-image {\n    color: rgba(255, 255, 255, 0.9);\n    background: var(--color-darkmode);\n}\n\nhtml.dark-mode .subscribe-form {\n    border: none;\n    background: linear-gradient(color-mod(var(--color-darkmode) l(-6%)), color-mod(var(--color-darkmode) l(-3%)));\n}\n\nhtml.dark-mode .subscribe-form-title {\n    color: rgba(255, 255, 255, 0.9);\n}\n\nhtml.dark-mode .subscribe-form p {\n    color: rgba(255, 255, 255, 0.7);\n}\n\nhtml.dark-mode .subscribe-email {\n    border-color: color-mod(var(--color-darkmode) l(+6%));\n    color: rgba(255, 255, 255, 0.9);\n    background: color-mod(var(--color-darkmode) l(+3%));\n}\n\nhtml.dark-mode .subscribe-email:focus {\n    border-color: color-mod(var(--color-darkmode) l(+25%));\n}\n\nhtml.dark-mode .subscribe-form button {\n    opacity: 0.9;\n}\n\nhtml.dark-mode .subscribe-form .invalid .message-error,\nhtml.dark-mode .subscribe-form .error .message-error {\n    color: color-mod(var(--color-red) l(+5%) s(-5%));\n}\n\nhtml.dark-mode .subscribe-form .success .message-success {\n    color: color-mod(var(--color-green) l(+5%) s(-5%));\n}\n\n/*\n\nHey! You reached the end.\n\nHope you enjoyed this CSS file, if you have any suggestions\nfor improvements that might be useful for everyone who uses\nthis theme, you can find the open source repository for it\nhere: https://github.com/tryghost/casper\n\nOr, if you've just scrolled all the way to the bottom of the\nfile to add some of your own styles. Well, you've come to\nthe right place. Onward!\n\n */\n"]}
\ No newline at end of file
diff --git a/assets/css/global.css b/assets/css/global.css
index a207870..f7df10a 100644
--- a/assets/css/global.css
+++ b/assets/css/global.css
@@ -1,22 +1,3 @@
-/* Variables
-/* ---------------------------------------------------------- */
-
-:root {
-    /* Colours */
-    --blue: #3eb0ef;
-    --green: #a4d037;
-    --purple: #ad26b4;
-    --yellow: #fecd35;
-    --red: #f05230;
-    --darkgrey: #15171A;
-    --midgrey: #738a94;
-    --lightgrey: #c5d2d9;
-    --whitegrey: #e5eff5;
-    --pink: #fa3a57;
-    --brown: #a3821a;
-    --darkmode: color-mod(var(--darkgrey) l(+2%));
-}
-
 /* Reset
 /* ---------------------------------------------------------- */
 
@@ -127,7 +108,9 @@ table {
     border-collapse: collapse;
 }
 img {
+    display: block;
     max-width: 100%;
+    height: auto;
 }
 html {
     box-sizing: border-box;
@@ -273,15 +256,12 @@ th {
    ========================================================================== */
 
 html {
-    overflow-x: hidden;
-    overflow-y: scroll;
     font-size: 62.5%;
 
     -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
 }
 body {
-    overflow-x: hidden;
-    color: color-mod(var(--midgrey) l(-30%));
+    color: #35373A;
     font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
     font-size: 1.6rem;
     line-height: 1.6em;
@@ -298,7 +278,7 @@ body {
 
 ::selection {
     text-shadow: none;
-    background: color-mod(var(--blue) lightness(+30%));
+    background: #daf2fd;
 }
 
 hr {
@@ -309,7 +289,7 @@ hr {
     padding: 0;
     height: 1px;
     border: 0;
-    border-top: 1px solid color-mod(var(--lightgrey) l(+10%));
+    border-top: 1px solid #f0f0f0;
 }
 
 audio,
@@ -331,11 +311,11 @@ textarea {
     resize: vertical;
 }
 
-p,
-ul,
-ol,
-dl,
-blockquote {
+::not(.gh-content) p,
+::not(.gh-content) ul,
+::not(.gh-content) ol,
+::not(.gh-content) dl,
+::not(.gh-content) blockquote {
     margin: 0 0 1.5em 0;
 }
 
@@ -366,16 +346,19 @@ ol {
 }
 
 li {
-    margin: 0.5em 0;
     padding-left: 0.3em;
     line-height: 1.6em;
 }
 
+li + li {
+    margin-top: 0.5em;
+}
+
 dt {
     float: left;
     margin: 0 20px 0 0;
     width: 120px;
-    color: var(--darkgrey);
+    color: #daf2fd;
     font-weight: 500;
     text-align: right;
 }
@@ -388,7 +371,7 @@ dd {
 blockquote {
     margin: 1.5em 0;
     padding: 0 1.6em 0 1.6em;
-    border-left: var(--whitegrey) 0.5em solid;
+    border-left: #daf2fd;
 }
 
 blockquote p {
@@ -416,14 +399,10 @@ blockquote cite a {
 }
 
 a {
-    color: color-mod(var(--blue) l(-5%));
+    color: #15171A;
     text-decoration: none;
 }
 
-a:hover {
-    text-decoration: underline;
-}
-
 h1,
 h2,
 h3,
@@ -434,35 +413,38 @@ h6 {
     line-height: 1.15;
     font-weight: 600;
     text-rendering: optimizeLegibility;
+    letter-spacing: -0.01em;
 }
 
 h1 {
     margin: 0 0 0.5em 0;
-    font-size: 5.5rem;
-    font-weight: 600;
+    font-size: 4.8rem;
+    font-weight: 700;
+    letter-spacing: -0.015em;
 }
-@media (max-width: 500px) {
+@media (max-width: 600px) {
     h1 {
-        font-size: 2.2rem;
+        font-size: 2.8rem;
     }
 }
 
 h2 {
     margin: 1.5em 0 0.5em 0;
-    font-size: 2.2rem;
+    font-size: 2.8rem;
+    font-weight: 700;
 }
-@media (max-width: 500px) {
+@media (max-width: 600px) {
     h2 {
-        font-size: 1.8rem;
+        font-size: 2.3rem;
     }
 }
 
 h3 {
     margin: 1.5em 0 0.5em 0;
-    font-size: 1.8rem;
-    font-weight: 500;
+    font-size: 2.4rem;
+    font-weight: 600;
 }
-@media (max-width: 500px) {
+@media (max-width: 600px) {
     h3 {
         font-size: 1.7rem;
     }
@@ -470,18 +452,15 @@ h3 {
 
 h4 {
     margin: 1.5em 0 0.5em 0;
-    font-size: 1.6rem;
-    font-weight: 500;
+    font-size: 2.2rem;
 }
 
 h5 {
     margin: 1.5em 0 0.5em 0;
-    font-size: 1.4rem;
-    font-weight: 500;
+    font-size: 2rem;
 }
 
 h6 {
     margin: 1.5em 0 0.5em 0;
-    font-size: 1.4rem;
-    font-weight: 500;
+    font-size: 1.8rem;
 }
diff --git a/assets/css/screen.css b/assets/css/screen.css
index 12bb20e..b778734 100644
--- a/assets/css/screen.css
+++ b/assets/css/screen.css
@@ -15,140 +15,95 @@ production stylesheet in assets/built/screen.css
 7.  Single Post
   7.1. Post Byline
   7.2. Members Subscribe Form
-  7.3. Comments
   7.4. Related Posts
   7.5. Koenig Styles
 8.  Author Template
 9.  Error Template
-10. Subscribe Overlay
 11. Site Footer
 12. Dark Mode
 
 */
 
-
 /* 1. Global - Set up the things
 /* ---------------------------------------------------------- */
+
+/* Import CSS reset and base styles */
 @import "global.css";
 
-body {
-    background: #fff;
-}
+:root {
 
-.img {
-    display: block;
-    width: 100%;
-    height: 100%;
-    background-position: center center;
-    background-size: cover;
-    border-radius: 100%;
-}
+    /* Colours */
+    --color-green: #a4d037;
+    --color-yellow: #fecd35;
+    --color-red: #f05230;
+    --color-darkgrey: #15171A;
+    --color-midgrey: #738a94;
+    --color-lightgrey: #c5d2d9;
+    --color-wash: #e5eff5;
+    --color-darkmode: #151719;
+
+    /*
+    An accent color is also set by Ghost itself in
+    Ghost Admin > Settings > Brand
+
+    --ghost-accent-color: {value};
+
+    You can use this variale throughout your styles
+     */
+
+    /* Fonts */
+    --font-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
+    --font-serif: Georgia, Times, serif;
+    --font-mono: Menlo, Courier, monospace;
 
-.hidden {
-    visibility: hidden;
-    position: absolute;
-    text-indent: -9999px;
 }
 
 
 /* 2. Layout - Page building blocks
 /* ---------------------------------------------------------- */
 
-.site-wrapper {
+.viewport {
     display: flex;
     flex-direction: column;
     min-height: 100vh;
 }
 
-.site-main {
-    z-index: 100;
-    flex-grow: 1;
-}
-
 /* Full width page blocks */
 .outer {
     position: relative;
-    padding: 0 5vw;
+    padding: 0 4vmin;
 }
 
 /* Centered content container blocks */
 .inner {
     margin: 0 auto;
-    max-width: 1040px;
+    max-width: 1200px;
     width: 100%;
 }
 
-/* Usage:
-
-
-
- Centered content -
-
- -*/ - -/* 3. Special Template Styles -/* ---------------------------------------------------------- */ - -@media (min-width: 900px) { - .home-template .post-feed, - .tag-template .post-feed, - .author-template .post-feed { - padding: 40px 0 5vw; - border-top-left-radius: 3px; - border-top-right-radius: 3px; - } - - .home-template .site-nav { - position: relative; - } -} - /* 4. Site Header /* ---------------------------------------------------------- */ -.site-header-background { +.site-header { position: relative; - margin-top: 64px; - padding-bottom: 12px; color: #fff; - background: color-mod(var(--darkgrey) l(-5%)) no-repeat center center; - background-size: cover; + background: var(--ghost-accent-color); } -.site-header-background:before { - content: ""; +.site-header-cover { position: absolute; top: 0; right: 0; bottom: 0; left: 0; - z-index: 10; - display: block; - background: rgba(0,0,0,0.18); -} - -.site-header-background:after { - content: ""; - position: absolute; - top: 0; - right: 0; - bottom: auto; - left: 0; - z-index: 10; - display: block; - height: 140px; - background: linear-gradient(rgba(0,0,0,0.15),rgba(0,0,0,0)); -} - -.site-header-background.no-image:before, -.site-header-background.no-image:after { - display: none; + width: 100%; + height: 100%; + object-fit: cover; } .site-header-content { + position: relative; z-index: 100; display: flex; flex-direction: column; @@ -157,462 +112,424 @@ body { padding: 6vw 3vw; min-height: 200px; max-height: 340px; + text-align: center; } .site-title { z-index: 10; - margin: 0 0 0 -2px; + margin: 0 0 0.15em; padding: 0; - font-size: 5.0rem; - line-height: 1em; - font-weight: 600; } .site-logo { max-height: 55px; } -.site-description { +.site-header-content p { z-index: 10; - margin: 0; - padding: 5px 0; - font-size: 2.1rem; - line-height: 1.4em; - font-weight: 400; + max-width: 600px; + margin: 0 auto; + line-height: 1.2em; opacity: 0.8; } +@media (max-width: 600px) { + .site-header-content p { + max-width: 80vmin; + font-size: 1.8rem; + } +} + /* 4.1 Home header /* ---------------------------------------------------------- */ .site-home-header { - z-index: 1000; -} - -.site-home-header .site-header-background { - margin-top: 0; -} - -.site-home-header .site-header-content { - padding: 5vw 3vw 6vw; -} - -.site-home-header .site-title { - font-size: 5.5rem; - text-align: center; -} - -.site-home-header .site-description { - font-size: 2.2rem; - font-weight: 300; - text-align: center; -} - - -/* 4.2 Archive header (tag and author post lists) -/* ---------------------------------------------------------- */ - -.site-archive-header .site-header-content { position: relative; - align-items: stretch; - padding: 12vw 0 20px; - min-height: 200px; - max-height: 600px; + z-index: 1000; + overflow: hidden; } -.site-archive-header .no-image { - padding-top: 0; - padding-bottom: 0; - color: var(--darkgrey); - background: #fff; - opacity: 1.0; +.site-header-content { + padding: 18vmin 4vmin; + font-size: 2.5rem; + font-weight: 400; + color: #fff; + background: var(--ghost-accent-color); } -.site-archive-header .no-image .site-description { - color: var(--midgrey); - opacity: 1.0; -} - - -.site-archive-header .no-image .site-header-content { - padding: 5vw 0 10px; - border-bottom: 1px solid color-mod(var(--lightgrey) l(+12%)); -} - - -/* Special header styles for smaller screens */ - -@media (max-width: 900px) { - .site-header-content { - padding-bottom: 9vw; - } -} - -@media (max-width: 500px) { - .site-home-header .site-title { - font-size: 4.2rem; - } - - .site-home-header .site-description { - font-size: 1.8rem; - } - - .site-archive-header .site-header-content { - flex-direction: column; - align-items: center; - min-height: unset; - } - - .site-archive-header .site-title { - font-size: 4.2rem; - text-align: center; - } - - .site-archive-header .no-image .site-header-content { - padding: 12vw 0 20px; - } -} /* 5. Site Navigation /* ---------------------------------------------------------- */ -.site-nav-main { - position: fixed; - top: 0; - right: 0; - left: 0; - z-index: 1000; - background: color-mod(var(--darkgrey) l(-5%)); -} - -.site-nav { - position: relative; - z-index: 100; - display: flex; - justify-content: space-between; - align-items: flex-start; - overflow: hidden; - height: 64px; - font-size: 1.3rem; -} - -.site-nav-left-wrapper { - position: relative; - flex: 1 0 auto; - display: flex; -} - -.site-header-background:not(.responsive-header-img) .site-nav-left-wrapper:after, -.site-nav-main .site-nav-left-wrapper:after { - content: ""; - position: absolute; - top: 0; - z-index: 1000; - width: 40px; - height: 100%; -} - -.site-header-background:not(.responsive-header-img) .site-nav-left-wrapper:after, -.site-nav-main .site-nav-left-wrapper:after { - right: 0; - background: linear-gradient(to right, color-mod(var(--darkgrey) l(-5%) a(0)) 0%,color-mod(var(--darkgrey) l(-5%)) 100%); -} - -.site-nav-left { - flex: 1 0 auto; - display: flex; - align-items: center; - overflow-x: auto; - overflow-y: hidden; - -webkit-overflow-scrolling: touch; - margin-right: 10px; - padding: 10px 0 80px; - font-weight: 500; - letter-spacing: 0.2px; - text-transform: uppercase; - white-space: nowrap; - - -ms-overflow-scrolling: touch; -} - -.site-nav-left .nav li:last-of-type { - padding-right: 20px; -} - -/* Site Nav Hack Explanation (above): - -What's happening above is .site-nav-left is set to overflow-x and allow sideways scrolling, so that when there isn't enough space for all nav items (either due to lots of nav items, or a small viewport), you can still scroll side-to-side to reach them. Also, there is a small gradient on the left and right side covering the menu so that the menu goes offscreen smoothly. - -The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px of padding-bottom and a 40px fixed height parent (.site-nav) hides that entirely. Slightly hacky code. But nice clean end-result. - -*/ - -.site-nav-logo { - position: relative; - z-index: 100; - flex-shrink: 0; - display: inline-block; - margin-right: 32px; - padding: 12px 0; +.gh-head { + padding: 1vmin 4vmin; + font-size: 1.6rem; + line-height: 1.3em; color: #fff; - font-size: 1.7rem; - line-height: 1.8rem; - font-weight: bold; - letter-spacing: -0.5px; - text-transform: none; + background: var(--ghost-accent-color); } -.site-nav-logo:hover { +.gh-head a { + color: inherit; text-decoration: none; } -.site-nav-logo img { - display: block; - width: auto; - height: 21px; +.gh-head-inner { + display: grid; + grid-gap: 2.5vmin; + grid-template-columns: auto auto 1fr; + grid-auto-flow: row dense; } -.site-home-header .site-nav-logo { - display: none; -} -.site-nav-content { - position: relative; - align-self: flex-start; -} +/* Brand +/* ---------------------------------------------------------- */ -.nav { - position: absolute; - z-index: 1000; +.gh-head-brand { display: flex; - margin: 0 0 0 -12px; - padding: 0; - list-style: none; - transition: all 1.0s cubic-bezier(0.19, 1, 0.22, 1); + align-items: center; + height: 40px; + max-width: 200px; + text-align: center; + word-break: break-all; } -.nav li { +.gh-head-logo { display: block; + padding: 10px 0; + font-weight: 700; + font-size: 2rem; + line-height: 1.2em; + letter-spacing: -0.02em; +} + +.gh-head-logo img { + max-height: 26px; +} + + +/* Primary Navigation +/* ---------------------------------------------------------- */ + +.gh-head-menu { + display: flex; + align-items: center; + font-weight: 500; +} + +.gh-head-menu .nav { + display: inline-flex; + flex-wrap: wrap; + align-items: center; + list-style: none; margin: 0; padding: 0; } -.nav li a { - position: relative; - display: block; - padding: 12px 12px; - color: #fff; - opacity: 0.8; - transition: opacity 0.35s ease-in-out; +.gh-head-menu .nav li { + margin: 0 2.5vmin 0 0; + padding: 0; } -.nav li a:hover { - text-decoration: none; +.gh-head-menu .nav a { + display: inline-block; + padding: 5px 0; + opacity: 0.8 +} + +.gh-head-menu .nav a:hover { opacity: 1; } -.nav li a:before { - content: ""; - position: absolute; - right: 100%; - bottom: 8px; - left: 12px; - height: 1px; - background: #fff; - opacity: 0.25; - transition: all 0.35s ease-in-out; -} -.nav li a:hover:before { - right: 12px; - opacity: 0.5; -} +/* Secondary Navigation +/* ---------------------------------------------------------- */ -.nav-post-title-active .nav { - visibility: hidden; - opacity: 0; - transform: translateY(-175%); -} - -.nav-post-title { - visibility: hidden; - position: absolute; - top: 9px; - color: #fff; - font-size: 1.7rem; - font-weight: 400; - text-transform: none; - opacity: 0; - transition: all 1.0s cubic-bezier(0.19, 1, 0.22, 1); - transform: translateY(175%); -} - -.nav-post-title.dash { - left: -25px; -} - -.nav-post-title.dash:before { - content: "– "; - opacity: 0.5; -} - -.nav-post-title-active .nav-post-title { - visibility: visible; - opacity: 1; - transform: translateY(0); -} - -.site-nav-right { - flex: 0 1 auto; +.gh-head-actions { display: flex; justify-content: flex-end; align-items: center; - padding: 10px 0; - height: 64px; + list-style: none; + text-align: right; } -.site-nav-right .nav { - position: relative; - margin: 0; -} - -.site-nav-right .nav a { - white-space: nowrap; -} - -.site-nav-right .nav a:before { - display: none; -} - -.site-nav-right .nav li:last-of-type a { - margin-right: -12px; -} - -.social-links { - flex-shrink: 0; - display: flex; +.gh-head-actions-list { + display: inline-flex; + flex-wrap: wrap; + justify-content: flex-end; align-items: center; } -.social-link { +.gh-head-actions-list a:not([class]) { display: inline-block; - margin: 0; - padding: 10px; - opacity: 0.8; + margin: 0 0 0 1.5vmin; + padding: 5px 0; } -.social-link:hover { - opacity: 1.0; +.gh-social { + margin: 0 1.5vmin 0 0; } -.social-link svg { - height: 1.8rem; +.gh-social a { + opacity: 0.8 +} + +.gh-social a + a { + margin-left: 0.8rem; +} + +.gh-social a:hover { + opacity: 1; +} + +.gh-social svg { + height: 22px; + width: 22px; fill: #fff; } -.social-link-fb svg { - height: 1.6rem; +.gh-social-facebook svg { + height: 20px; + width: 20px; } -.social-link-wb svg { - height: 1.6rem; -} - -.social-link-wb svg path { - stroke: #fff; -} - -.social-link-rss svg { - height: 1.9rem; -} - -.subscribe-button { +a.gh-head-button { display: block; - margin: 0 0 0 10px; - padding: 4px 10px; - border: #fff 1px solid; - color: #fff; + padding: 8px 15px; + color: var(--color-darkgrey); + font-weight: 500; + letter-spacing: -0.015em; + font-size: 1.5rem; line-height: 1em; - border-radius: 10px; - opacity: 0.8; + background: #fff; + border-radius: 30px; } -.subscribe-button:hover { - text-decoration: none; - opacity: 1; + +/* Mobile Menu Trigger +/* ---------------------------------------------------------- */ + +.gh-burger { + position: relative; + display: none; + cursor: pointer; } -.site-nav-right .nav + .subscribe-button { - margin-left: 24px; +.gh-burger-box { + position: relative; + display: flex; + align-items: center; + justify-content: center; + width: 33px; + height: 33px; } -.rss-button { - padding: 10px 8px; - opacity: 0.8; +.gh-burger-inner { + width: 100%; + height: 100%; } -.rss-button:hover { - opacity: 1; +.gh-burger-box::before { + position: absolute; + display: block; + top: 0; + left: 0; + bottom: 0; + margin: auto; + content: ''; + width: 100%; + height: 1px; + background: currentcolor; + transition: transform 300ms cubic-bezier(.2,.6,.3,1), width 300ms cubic-bezier(.2,.6,.3,1); + will-change: transform, width; } -.rss-button svg { - margin-bottom: 1px; - height: 2.1rem; - fill: #fff; +.gh-burger-inner::before, +.gh-burger-inner::after { + position: absolute; + display: block; + top: 0; + left: 0; + bottom: 0; + margin: auto; + content: ''; + width: 100%; + height: 1px; + background: currentcolor; + transition: transform 250ms cubic-bezier(.2,.7,.3,1), width 250ms cubic-bezier(.2,.7,.3,1); + will-change: transform, width; } -/* Special behaviors for home navigation */ - -.home-template .site-nav-main { - z-index: 100; +.gh-burger-inner::before { + transform: translatey(-6px); +} +.gh-burger-inner::after { + transform: translatey(6px); } -.home-template .site-nav-main .site-nav { - opacity: 0; - transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; +body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::before { + transform: translatey(-8px); +} +body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::after { + transform: translatey(8px); } -.home-template .site-nav-main .fixed-nav-active { - opacity: 1; - transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.05s; +.gh-head-open .gh-burger-box::before { + width: 0; + transform: translatex(19px); + transition: transform 200ms cubic-bezier(.2,.7,.3,1), width 200ms cubic-bezier(.2,.7,.3,1); } -@media (max-width: 700px) { - .site-home-header .site-nav { - margin-left: -5vw; +.gh-head-open .gh-burger-inner::before { + width: 26px; + transform: translatex(6px) rotate(135deg); +} + +.gh-head-open .gh-burger-inner::after { + width: 26px; + transform: translatex(6px) rotate(-135deg); +} + + +/* Mobile Menu +/* ---------------------------------------------------------- */ +/* IDs needed to ensure sufficient specificity */ + +@media (max-width: 900px) { + .gh-burger { + display: inline-block; } - - .site-nav-main { - padding-right: 0; - padding-left: 0; + #gh-head { + transition: all 0.4s ease-out; + overflow: hidden; } - - .site-nav-left { - margin-right: 0; - padding-left: 5vw; + #gh-head .gh-head-inner { + height: 100%; + grid-template-columns: 1fr; } - - .site-nav-right { + #gh-head .gh-head-brand { + position: relative; + z-index: 10; + grid-column-start: auto; + max-width: none; + display: flex; + align-items: center; + justify-content: space-between; + user-select: none; + } + .home-template #gh-head .gh-head-brand { + justify-content: flex-end; + } + #gh-head .gh-head-menu { + align-self: center; + display: flex; + flex-direction: column; + align-items: center; + text-align: center; + margin: 0 0 10vh 0; + font-weight: 300; + font-size: 3.6rem; + line-height: 1.1em; + } + #gh-head .gh-head-menu .nav li { + margin: 5px 0; + } + #gh-head .gh-head-menu .nav a { + padding: 8px 0; + } + #gh-head .gh-head-menu .nav { + display: flex; + flex-direction: column; + align-items: center; + } + #gh-head .gh-head-actions { + padding: 20px 0; + justify-content: center; + text-align: left; + } + #gh-head .gh-head-actions a { + margin: 0 10px; + } + /* Hide collapsed content */ + #gh-head .gh-head-actions, + #gh-head .gh-head-menu { display: none; } + /* Open the menu */ + .gh-head-open { + overflow: hidden; + height: 100vh; + } + .gh-head-open #gh-head { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 3999999; + overflow-y: scroll; + } + .gh-head-open #gh-head .gh-head-inner { + grid-template-rows: auto 1fr auto; + } + .gh-head-open #gh-head .gh-head-actions, + .gh-head-open #gh-head .gh-head-menu { + display: flex; + } +} + +@media (max-width: 600px) { + #gh-head .gh-head-menu { + font-size: 6vmin; + } +} + +.home-template .gh-head { + position: absolute; + top: 0; + right: 0; + left: 0; + z-index: 2000; +} + +.home-template .gh-head.has-cover { + background: transparent; +} + +.home-template.gh-head-open .gh-head { + background: var(--ghost-accent-color); +} + +.home-template .gh-head-logo { + display: none; +} +.home-template .gh-head-menu { + margin-left: -2.5vmin; } /* 6. Post Feed /* ---------------------------------------------------------- */ -.posts { - overflow-x: hidden; -} - .post-feed { position: relative; - display: flex; - flex-wrap: wrap; - margin: 0 -20px; - padding: 50px 0 0; - background: #fff; + display: grid; + grid-gap: 4vmin; + grid-template-columns: 1fr 1fr 1fr; + padding: 4vmin 0; +} + +@media (max-width: 1000px) { + .post-feed { + grid-template-columns: 1fr 1fr; + } +} +@media (max-width: 700px) { + .post-feed { + grid-template-columns: 1fr; + grid-gap: 40px; + } } .post-card { @@ -620,12 +537,9 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o flex: 1 1 301px; display: flex; flex-direction: column; - overflow: hidden; - margin: 0 0 40px; - padding: 0 20px 40px; min-height: 220px; - border-bottom: 1px solid color-mod(var(--lightgrey) l(+12%)); background-size: cover; + word-break: break-word; } .post-card-image-link { @@ -638,7 +552,7 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o .post-card-image { width: 100%; height: 200px; - background: var(--lightgrey) no-repeat center center; + background: var(--color-lightgrey) no-repeat center center; object-fit: cover; } @@ -646,7 +560,7 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o .post-card-content-link { position: relative; display: block; - color: var(--darkgrey); + color: var(--color-darkgrey); } .post-card-content-link:hover { @@ -654,7 +568,7 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o } .post-card-header { - margin: 15px 0 0; + margin: 20px 0 0; } .post-feed .no-image .post-card-content-link { @@ -667,7 +581,7 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o .post-card-primary-tag { margin: 0 0 0.2em; - color: var(--blue); + color: var(--ghost-accent-color); font-size: 1.2rem; font-weight: 500; letter-spacing: 0.2px; @@ -676,7 +590,7 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o .post-card-title { margin: 0 0 0.4em; - line-height: 1.15em; + font-size: 2.4rem; transition: color 0.2s ease-in-out; } @@ -692,17 +606,21 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o .post-card-excerpt { max-width: 56em; - color: var(--midgrey); - font-family: Georgia, serif; + color: color-mod(var(--color-midgrey) l(-8%)); } .post-card-excerpt p { margin-bottom: 1em; + display: -webkit-box; + overflow-y: hidden; + -webkit-line-clamp: 3; + -webkit-box-orient: vertical; + word-break: break-word; } .post-card-meta { display: flex; - align-items: flex-start; + align-items: center; padding: 0; } @@ -711,7 +629,7 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o display: block; width: 100%; height: 100%; - background: color-mod(var(--lightgrey) l(+10%)); + background: color-mod(var(--color-lightgrey) l(+10%)); border-radius: 100%; object-fit: cover; @@ -741,53 +659,21 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o display: block; overflow: hidden; margin: 0 0 0 -6px; - width: 34px; - height: 34px; - border: #fff 2px solid; + width: 36px; + height: 36px; border-radius: 100%; -} - -.author-name-tooltip { - position: absolute; - bottom: 105%; - z-index: 999; - display: block; - padding: 2px 8px; - color: white; - font-size: 1.2rem; - letter-spacing: 0.2px; - white-space: nowrap; - background: var(--darkgrey); - border-radius: 3px; - box-shadow: rgba(39,44,49,0.08) 0 12px 26px, rgba(39, 44, 49, 0.03) 1px 3px 8px; - opacity: 0; - transition: all 0.35s cubic-bezier(0.4, 0.01, 0.165, 0.99); - transform: translateY(6px); - pointer-events: none; -} - -.author-list-item:hover .author-name-tooltip { - opacity: 1.0; - transform: translateY(0px); -} - -@media (max-width: 700px) { - .author-name-tooltip { - display: none; - } + box-shadow: 0 0 0 1px rgba(255,255,255,0.2); } .post-card-byline-content { flex: 1 1 50%; display: flex; flex-direction: column; - margin: 2px 0 0 6px; - color: color-mod(var(--midgrey) l(+10%)); - font-size: 1.2rem; - line-height: 1.4em; + margin: 0 0 0 8px; + color: color-mod(var(--color-midgrey) l(+10%)); + font-size: 1.4rem; + line-height: 1.2em; font-weight: 400; - letter-spacing: 0.2px; - text-transform: uppercase; } .post-card-byline-content span { @@ -795,17 +681,18 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o } .post-card-byline-content a { - color: color-mod(var(--darkgrey) l(+20%)); + color: color-mod(var(--color-darkgrey) l(+15%)); font-weight: 600; } .post-card-byline-date { - font-size: 1.2rem; + font-size: 1.3rem; + line-height: 1.5em; } .post-card-byline-date .bull { display: inline-block; - margin: 0 4px; + margin: 0 2px; opacity: 0.6; } @@ -813,7 +700,7 @@ The knock-on effect of this is ugly browser-scroll bars at the bottom, so 80px o display: flex; flex-direction: column; margin-left: 5px; - color: color-mod(var(--midgrey) l(-10%)); + color: color-mod(var(--color-midgrey) l(-10%)); font-size: 1.3rem; line-height: 1.4em; font-weight: 500; @@ -840,26 +727,23 @@ make sure this only happens on large viewports / desktop-ish devices. */ -@media (min-width: 795px) { +@media (min-width: 1001px) { .post-card-large { - flex: 1 1 100%; - flex-direction: row; - padding-bottom: 40px; + grid-column: 1 / span 3; + display: grid; + grid-gap: 4vmin; + grid-template-columns: 1fr 1fr 1fr; min-height: 280px; border-top: 0; } - .post-card-large:hover { - border-bottom-color: color-mod(var(--lightgrey) l(+10%)); - } - .post-card-large:not(.no-image) .post-card-header { margin-top: 0; } .post-card-large .post-card-image-link { position: relative; - flex: 1 1 auto; + grid-column: 1 / span 2; margin-bottom: 0; min-height: 380px; } @@ -871,7 +755,6 @@ make sure this only happens on large viewports / desktop-ish devices. } .post-card-large .post-card-content { - flex: 0 1 361px; justify-content: center; } @@ -880,39 +763,15 @@ make sure this only happens on large viewports / desktop-ish devices. font-size: 3.2rem; } - .post-card-large .post-card-content-link { - padding: 0 0 0 40px; - } - - .post-card-large .post-card-meta { - padding: 0 0 0 40px; - } - .post-card-large .post-card-excerpt p { margin-bottom: 1.5em; - font-size: 1.8rem; - line-height: 1.5em; + font-size: 1.7rem; + line-height: 1.55em; + -webkit-line-clamp: 8; } } -/* Adjust some margins for smaller screens */ -@media (max-width: 1170px) { - .post-card { - margin-bottom: 5vw; - } -} - -@media (max-width: 650px) { - .post-feed { - padding-top: 5vw; - } - - .post-card { - margin-bottom: 5vw; - } -} - @media (max-width: 500px) { .post-card-title { font-size: 1.9rem; @@ -927,453 +786,465 @@ make sure this only happens on large viewports / desktop-ish devices. /* 7. Single Post /* ---------------------------------------------------------- */ -.post-template .site-main, -.page-template .site-main { - margin-top: 64px; - padding-bottom: 4vw; - background: #fff; +.article { + padding: 8vmin 0; + word-break: break-word; } -.post-full-header { - position: relative; - margin: 0 auto; - padding: 70px 170px 50px; - border-top-left-radius: 3px; - border-top-right-radius: 3px; +.article-header { + padding: 0 0 6vmin 0; } -.post-full-tags { +.article-tag { display: flex; justify-content: flex-start; align-items: center; - color: var(--midgrey); + margin: 0 0 0.5rem; + color: var(--color-midgrey); font-size: 1.3rem; line-height: 1.4em; + letter-spacing: 0.02em; font-weight: 600; text-transform: uppercase; } -.post-full-meta-date { - color: var(--midgrey); - font-size: 1.2rem; - font-weight: 400; +.article-tag a { + color: var(--ghost-accent-color); } -@media (max-width: 1170px) { - .post-full-header { - padding: 60px 11vw 50px; - } +.article-title { + color: color-mod(var(--color-darkgrey) l(-5%)); } -@media (max-width: 800px) { - .post-full-header { - padding-right: 5vw; - padding-left: 5vw; - } -} - -@media (max-width: 500px) { - .post-full-header { - padding: 20px 0 35px; - } -} - -.post-full-title { - margin: 0 0 0.2em; - color: color-mod(var(--darkgrey) l(-5%)); -} - -.post-full-custom-excerpt { - margin: 20px 0 0; - color: var(--midgrey); - font-family: Georgia, serif; - font-size: 2.3rem; +.article-excerpt { + margin: 0 0 1rem; + font-size: 2rem; line-height: 1.4em; - font-weight: 300; + opacity: 0.6; } -.date-divider { - display: inline-block; - margin: 0 6px 1px; - font-weight: 300; -} - -.post-full-image { - display: flex; - flex-direction: column; - align-items: center; - overflow: hidden; - margin: 25px 0 50px; - background: color-mod(var(--lightgrey) l(+10%)); - border-radius: 3px; -} - -.post-full-image img { - max-width: 1040px; +.gh-canvas .article-image { + grid-column: wide-start / wide-end; width: 100%; - height: auto; + margin: 6vmin 0 0; } -.post-full-content { - position: relative; - margin: 0 auto; - padding: 0 170px 6vw; - min-height: 230px; - font-family: Georgia, serif; - font-size: 2.0rem; - line-height: 1.6em; - background: #fff; +.gh-canvas .article-image img { + display: block; + margin-left: auto; + margin-right: auto; + width: 100%; } -@media (max-width: 1170px) { - .post-full-content { - padding: 0 11vw; - } -} -@media (max-width: 800px) { - .post-full-content { - padding: 0 5vw; +@media (max-width: 600px) { + .article-excerpt { font-size: 1.8rem; } } -@media (max-width: 500px) { - .post-full-custom-excerpt { - font-size: 1.9rem; - line-height: 1.5em; - } + +/* -------- */ + +/* Content grid +/* ---------------------------------------------------------- */ + +/* Canvas creates a multi-column, centered grid which the post +is laid out on top of. Canvas just defines the grid, we don't +use it for applying any other styles. */ + +.gh-canvas { + display: grid; + grid-template-columns: + [full-start] + minmax(4vmin, auto) + [wide-start] + minmax(auto, 240px) + [main-start] + min(720px, calc(100% - 8vw)) + [main-end] + minmax(auto, 240px) + [wide-end] + minmax(4vmin, auto) + [full-end] + ; } -.no-image .post-full-content { - padding-top: 0; +.gh-canvas > * { + grid-column: main-start / main-end; } -.no-image .post-full-content:before, -.no-image .post-full-content:after { - display: none; +.kg-width-wide { + grid-column: wide-start / wide-end; } -.post-full-content h1, -.post-full-content h2, -.post-full-content h3, -.post-full-content h4, -.post-full-content h5, -.post-full-content h6, -.post-full-content p, -.post-full-content ul, -.post-full-content ol, -.post-full-content dl, -.post-full-content pre, -.post-full-content blockquote, -.post-full-comments, -.footnotes { - margin: 0 0 1.5em 0; - min-width: 100%; -} -@media (max-width: 500px) { - .post-full-content p, - .post-full-content ul, - .post-full-content ol, - .post-full-content dl, - .post-full-content pre, - .post-full-comments, - .footnotes { - margin-bottom: 1.28em; - } +.kg-width-full { + grid-column: full-start / full-end; } -.post-full-content li { - word-break: break-word; -} - -.post-full-content li p { - margin: 0; -} - -.post-full-content a { - color: var(--darkgrey); - word-break: break-word; - box-shadow: var(--darkgrey) 0 -1px 0 inset; - transition: all 0.2s ease-in-out; -} - -.post-full-content a:hover { - color: var(--blue); - text-decoration: none; - box-shadow: var(--blue) 0 -1px 0 inset; -} - -.post-full-content strong, -.post-full-content em { - color: color-mod(var(--darkgrey) l(-5%)); -} - -.post-full-content small { - display: inline-block; - line-height: 1.6em; -} - -.post-full-content li:first-child { - margin-top: 0; -} - -.post-full-content img, -.post-full-content video { - display: block; - margin: 1.5em auto; - max-width: 1040px; - height: auto; -} -@media (max-width: 1040px) { - .post-full-content img, - .post-full-content video { - width: 100%; - } +.kg-width-full img { + width: 100%; } -/* Full bleed images (#full) -Super neat trick courtesy of @JoelDrapper +/* Content +/* ---------------------------------------------------------- */ -Usage (In Ghost edtior): +/* Content refers to styling all page and post content that is +created within the Ghost editor. The main content handles +headings, text, images and lists. We deal with cards lower down. */ -![img](/some/image.jpg#full) - -*/ -.post-full-content img[src$="#full"] { - max-width: none; - width: 100vw; -} - - -/* Image captions - -Usage (In Ghost editor): - -![img](/some/image.jpg) -Your image caption - -*/ -.post-full-content img + br + small { - display: block; - margin-top: -3em; - margin-bottom: 1.5em; - text-align: center; -} - - -/* Override third party iframe styles */ -.post-full-content iframe { - margin: 0 auto !important; -} - -.post-full-content blockquote { - margin: 0 0 1.5em; - padding: 0 1.5em; - border-left: color-mod(var(--blue)) 3px solid; -} -@media (max-width: 500px) { - .post-full-content blockquote { - padding: 0 1.3em; - } -} - -.post-full-content blockquote p { - margin: 0 0 1em 0; - color: inherit; - font-size: inherit; - line-height: inherit; - font-style: italic; -} - -.post-full-content blockquote p:last-child { +/* Default vertical spacing */ +.gh-content > * + * { + margin-top: 4vmin; margin-bottom: 0; } -.post-full-content code { - padding: 0 5px 2px; - font-size: 0.8em; - line-height: 1em; - font-weight: 400!important; - background: var(--whitegrey); - border-radius: 3px; +/* [id] represents all headings h1-h6, reset all margins */ +.gh-content > [id] { + margin: 0; + color: var(--color-darkgrey); } -.post-full-content p code { - word-break: break-all; +/* Add back a top margin to all headings, unless a heading +is the very first element in the post content */ +.gh-content > [id]:not(:first-child) { + margin: 2em 0 0; } -.post-full-content pre { - overflow-x: auto; - margin: 1.5em 0 3em; - padding: 20px; - max-width: 100%; - border: color-mod(var(--darkgrey) l(-10%)) 1px solid; - color: var(--whitegrey); - font-size: 1.4rem; - line-height: 1.5em; - background: color-mod(var(--darkgrey) l(-3%)); - border-radius: 5px; +/* Add a small margin between a heading and anything after it */ +.gh-content > [id] + * { + margin-top: 1.5rem !important; } -.post-full-content pre ::selection { - color: color-mod(var(--midgrey) l(-25%)); +/* A larger margin before/after HRs and blockquotes */ +.gh-content > hr, +.gh-content > blockquote { + position: relative; + margin-top: 6vmin; +} +.gh-content > hr + *, +.gh-content > blockquote + * { + margin-top: 6vmin !important; } -.post-full-content pre code { +/* Now the content typography styles */ +.gh-content a { + color: var(--ghost-accent-color); + text-decoration: underline; + word-break: break-word; +} + +.gh-content > blockquote, +.gh-content > ol, +.gh-content > ul, +.gh-content > dl, +.gh-content > p { + font-family: var(--font-serif); + font-weight: 400; + font-size: 2.1rem; + line-height: 1.6em; +} + +.gh-content > ul, +.gh-content > ol, +.gh-content > dl { + padding-left: 1.9em; +} + +.gh-content > blockquote { + position: relative; + font-style: italic; padding: 0; - font-size: inherit; - line-height: inherit; - background: transparent; } -.post-full-content pre code :not(span) { - color: inherit; -} - -.post-full-content .fluid-width-video-wrapper { - margin: 1.5em 0 3em; -} - -.post-full-content hr { - margin: 2em 0; -} - -.post-full-content hr:after { +.gh-content > blockquote::before { content: ""; position: absolute; - top: -15px; - left: 50%; - display: block; - margin-left: -10px; - width: 1px; - height: 30px; - background: color-mod(var(--lightgrey) l(+10%)); - box-shadow: #fff 0 0 0 5px; - transform: rotate(45deg); + left: -1.5em; + top: 0; + bottom: 0; + width: 0.3rem; + background: var(--ghost-accent-color); } -.post-full-content hr + p { - margin-top: 1.2em; +.gh-content :not(pre) > code { + vertical-align: middle; + padding: 0.15em 0.4em 0.15em; + border: #e1eaef 1px solid; + font-weight: 400 !important; + font-size: 0.9em; + line-height: 1em; + color: #15171A; + background: #f0f6f9; + border-radius: 0.25em; } -.post-full-content h1, -.post-full-content h2, -.post-full-content h3, -.post-full-content h4, -.post-full-content h5, -.post-full-content h6 { - color: color-mod(var(--darkgrey) l(-5%)); - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; +.gh-content pre { + overflow: auto; + padding: 16px 20px; + color: var(--color-wash); + font-size: 1.4rem; + line-height: 1.5em; + background: var(--color-darkgrey); + border-radius: 5px; + box-shadow: 0 2px 6px -2px rgba(0,0,0,.1), 0 0 1px rgba(0,0,0,.4); } -.post-full-content h1 { - margin: 0.5em 0 0.4em; - font-size: 4.2rem; - line-height: 1.25em; - font-weight: 600; -} -.post-full-content p + h1 { - margin-top: 0.8em; -} -@media (max-width: 800px) { - .post-full-content h1 { - font-size: 3.2rem; - line-height: 1.25em; +@media (max-width: 650px) { + .gh-content blockquote, + .gh-content ol, + .gh-content ul, + .gh-content dl, + .gh-content p { + font-size: 1.7rem; + } + + .gh-content blockquote::before { + left: -4vmin; } } -.post-full-content h2 { - margin: 0.5em 0 0.4em; - font-size: 3.2rem; - line-height: 1.25em; - font-weight: 600; + +/* Cards +/* ---------------------------------------------------------- */ + +/* Cards are dynamic blocks of content which appear within Ghost +posts, for example: embedded videos, tweets, galleries, or +specially styled bookmark links. We add extra styling here to +make sure they look good, and are given a bit of extra spacing. */ + +/* Add extra margin before/after any cards, +except for when immediately preceeded by a heading */ +.gh-content :not(.kg-card):not([id]) + .kg-card { + margin-top: 6vmin; + margin-bottom: 0; } -.post-full-content p + h2 { - margin-top: 0.8em; -} -@media (max-width: 800px) { - .post-full-content h2 { - margin-bottom: 0.3em; - font-size: 2.8rem; - line-height: 1.25em; - } +.gh-content .kg-card + :not(.kg-card) { + margin-top: 6vmin; + margin-bottom: 0; } -.post-full-content h3 { - margin: 0.5em 0 0.2em; - font-size: 2.5rem; - line-height: 1.3em; - font-weight: 600; -} -.post-full-content h2 + h3 { - margin-top: 0.7em; -} -@media (max-width: 800px) { - .post-full-content h3 { - margin-bottom: 0.3em; - font-size: 2.4rem; - line-height: 1.3em; - } +/* This keeps small embeds centered */ +.kg-embed-card { + display: flex; + flex-direction: column; + align-items: center; + width: 100%; } -.post-full-content h4 { - margin: 0.5em 0 0.2em; - font-size: 2.5rem; - font-weight: 600; -} -.post-full-content h2 + h4 { - margin-top: 0.7em; -} -.post-full-content h3 + h4 { - margin-top: 0; -} -@media (max-width: 800px) { - .post-full-content h4 { - margin-bottom: 0.3em; - font-size: 2.4rem; - line-height: 1.3em; - } +/* This keeps small iamges centered */ +.kg-image-card img { + margin: auto; } -.post-full-content h5 { - display: block; - margin: 0.5em 0; - padding: 0.4em 1em 0.9em; - border: 0; - color: var(--blue); - font-family: Georgia,serif; - font-size: 3.2rem; - line-height: 1.35em; + +/* Captions */ +.kg-card figcaption { + padding: 1.5rem 1.5rem 0; text-align: center; + color: rgba(0,0,0,0.5); + font-weight: 600; + font-size: 1.3rem; + line-height: 1.4em; } -@media (min-width: 1180px) { - .post-full-content h5 { - max-width: 1060px; - width: 100vw; - } -} -@media (max-width: 800px) { - .post-full-content h5 { - margin-bottom: 1em; - margin-left: 1.3em; - padding: 0 0 0.5em; - font-size: 2.4rem; - text-align: initial; - } +.kg-card figcaption strong { + color: rgba(0,0,0,0.8); } -.post-full-content h6 { - margin: 0.5em 0 0.2em 0; - font-size: 2.0rem; - font-weight: 700; + +/* Highly specific styles for traditional Instagram embeds */ +iframe.instagram-media { + margin-top: 6vmin !important; + margin-left: auto !important; + margin-right: auto !important; + margin-bottom: 0 !important; } -@media (max-width: 800px) { - .post-full-content h6 { - font-size: 1.8rem; - line-height: 1.4em; - } + +iframe.instagram-media + script + :not([id]) { + margin-top: 6vmin; } + +/* Galleries +/* ---------------------------------------------------------- */ + +/* When there galleries are mixed with images, reduce margin +between them, so it looks like 1 big gallery */ +.kg-image-card + .kg-gallery-card, +.kg-gallery-card + .kg-image-card, +.kg-gallery-card + .kg-gallery-card { + margin-top: 0.75em; +} + +.kg-image-card.kg-card-hascaption + .kg-gallery-card, +.kg-gallery-card.kg-card-hascaption + .kg-image-card, +.kg-gallery-card.kg-card-hascaption + .kg-gallery-card { + margin-top: 1.75em; +} + +.kg-gallery-container { + position: relative; +} + +.kg-gallery-row { + display: flex; + flex-direction: row; + justify-content: center; +} + +.kg-gallery-image img { + display: block; + margin: 0; + width: 100%; + height: 100%; +} + +.kg-gallery-row:not(:first-of-type) { + margin: 0.75em 0 0 0; +} + +.kg-gallery-image:not(:first-of-type) { + margin: 0 0 0 0.75em; +} + + +/* Bookmark Cards +/* ---------------------------------------------------------- */ + +/* These are styled links with structured data, similar to a +Twitter card. These styles roughly match what you see in the +Ghost editor. */ + +.kg-bookmark-card, +.kg-bookmark-publisher { + position: relative; + width: 100%; +} + +.kg-bookmark-container, +.kg-bookmark-container:hover { + display: flex; + color: currentColor; + font-family: var(--font-sans-serif); + text-decoration: none !important; + background: rgba(255,255,255,0.6); + border-radius: 5px; + box-shadow: 0 2px 6px -2px rgba(0, 0, 0, 0.1), 0 0 1px rgba(0, 0, 0, 0.4); + overflow: hidden; +} + +.kg-bookmark-content { + display: flex; + flex-direction: column; + flex-grow: 1; + flex-basis: 100%; + align-items: flex-start; + justify-content: flex-start; + padding: 20px; +} + +.kg-bookmark-title { + font-size: 1.5rem; + line-height: 1.4em; + font-weight: 600; + color: #15171A; +} + +.kg-bookmark-description { + display: -webkit-box; + font-size: 1.4rem; + line-height: 1.5em; + margin-top: 3px; + color: #626d79; + font-weight: 400; + max-height: 44px; + overflow-y: hidden; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; +} + +.kg-bookmark-metadata { + display: flex; + align-items: center; + margin-top: 22px; + width: 100%; + color: #394047; + font-size: 1.4rem; + font-weight: 500; +} + +.kg-bookmark-icon { + width: 20px; + height: 20px; + margin-right: 6px; +} + +.kg-bookmark-author, +.kg-bookmark-publisher { + display: inline; +} + +.kg-bookmark-publisher { + text-overflow: ellipsis; + overflow: hidden; + max-width: 240px; + white-space: nowrap; + display: block; + line-height: 1.65em; +} + +.kg-bookmark-metadata > span:nth-of-type(2) { + color: #626d79; + font-weight: 400; +} + +.kg-bookmark-metadata > span:nth-of-type(2):before { + content: "•"; + color: #394047; + margin: 0 6px; +} + +.kg-bookmark-thumbnail { + position: relative; + flex-grow: 1; + min-width: 33%; +} + +.kg-bookmark-thumbnail img { + width: 100%; + height: 100%; + object-fit: cover; + position: absolute; + top: 0; + left: 0; + border-radius: 0 4px 4px 0; +} + + +/* Card captions +/* ---------------------------------------------------------- */ + +.kg-width-full.kg-card-hascaption { + display: grid; + grid-template-columns: inherit; +} + +.kg-width-wide.kg-card-hascaption img { + grid-column: wide-start / wide-end; +} +.kg-width-full.kg-card-hascaption img { + grid-column: 1 / -1; +} + +.kg-width-full.kg-card-hascaption figcaption { + grid-column: main-start / main-end; +} + +.article-comments { + margin: 6vmin 0 0 0; +} + +/* -----old------ */ + .footnotes-sep { margin-bottom: 30px; } @@ -1387,58 +1258,12 @@ Usage (In Ghost editor): } .footnote-backref { - color: var(--blue) !important; font-size: 1.2rem; font-weight: bold; text-decoration: none !important; box-shadow: none !important; } -/* Some grouped styles for smaller viewports */ -@media (max-width: 1170px) { - .post-full-image { - margin: 25px -6vw 50px; - border-radius: 0; - } - - .post-full-image img { - max-width: 1170px; - } -} - -@media (max-width: 700px) { - .post-full-image { - margin: 25px -5vw; - } -} - -@media (max-width: 500px) { - .post-full-meta { - font-size: 1.2rem; - line-height: 1.3em; - } - - .post-full-title { - margin-top: 0.2em; - font-size: 4.2rem; - line-height: 1.05em; - } - - .post-full-image { - margin-top: 5px; - margin-bottom: 5vw; - } - - .post-full-content { - padding: 0; - } - - .post-full-content:before, - .post-full-content:after { - display: none; - } -} - /* Tables */ .post-full-content table { display: inline-block; @@ -1448,7 +1273,7 @@ Usage (In Ghost editor): width: auto; border-spacing: 0; border-collapse: collapse; - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; + font-family: var(--font-sans-serif); font-size: 1.6rem; white-space: nowrap; vertical-align: top; @@ -1476,71 +1301,56 @@ Usage (In Ghost editor): } .post-full-content table th { - color: var(--darkgrey); + color: var(--color-darkgrey); font-size: 1.2rem; font-weight: 700; letter-spacing: 0.2px; text-align: left; text-transform: uppercase; - background-color: color-mod(var(--whitegrey) l(+4%)); + background-color: color-mod(var(--color-wash) l(+4%)); } .post-full-content table th, .post-full-content table td { padding: 6px 12px; - border: color-mod(var(--whitegrey) l(-1%) s(-5%)) 1px solid; + border: color-mod(var(--color-wash) l(-1%) s(-5%)) 1px solid; } /* 7.1. Post Byline /* ---------------------------------------------------------- */ -.post-full-byline { +.article-byline { display: flex; justify-content: space-between; - margin: 35px 0 0; - padding-top: 15px; - border-top: 1px solid color-mod(var(--lightgrey) l(+10%)); + margin: 20px 0 0; } -.post-full-byline-content { +.article-byline-content { flex-grow: 1; display: flex; - align-items: flex-start; + align-items: center; } -.post-full-byline-content .author-list { +.article-byline-content .author-list { justify-content: flex-start; padding: 0 12px 0 0; } -.post-full-byline-meta { - margin: 2px 0 0; - color: color-mod(var(--midgrey) l(+10%)); - font-size: 1.2rem; +.article-byline-meta { + color: color-mod(var(--color-midgrey)); + font-size: 1.4rem; line-height: 1.2em; - letter-spacing: 0.2px; - text-transform: uppercase;; } -.post-full-byline-meta h4 { +.article-byline-meta h4 { margin: 0 0 3px; - font-size: 1.3rem; - line-height: 1.4em; - font-weight: 500; + font-size: 1.6rem; } -.post-full-byline-meta h4 a { - color: color-mod(var(--darkgrey) l(+10%)); -} - -.post-full-byline-meta h4 a:hover { - color: var(--darkgrey); -} - -.post-full-byline-meta .bull { +.article-byline-meta .bull { display: inline-block; - margin: 0 4px; + margin: 0 2px; opacity: 0.6; } @@ -1548,88 +1358,13 @@ Usage (In Ghost editor): display: block; overflow: hidden; margin: 0 -4px; - width: 40px; - height: 40px; + width: 50px; + height: 50px; border: #fff 2px solid; border-radius: 100%; transition: all 0.5s cubic-bezier(0.4, 0.01, 0.165, 0.99) 700ms; } -.author-list-item .author-card { - position: absolute; - bottom: 130%; - left: 50%; - z-index: 600; - display: flex; - justify-content: space-between; - margin-left: -200px; - width: 400px; - font-size: 1.4rem; - line-height: 1.5em; - background: white; - border-radius: 3px; - box-shadow: rgba(39,44,49,0.08) 0 12px 26px, rgba(39, 44, 49, 0.06) 1px 3px 8px; - opacity: 0; - transition: all 0.35s cubic-bezier(0.4, 0.01, 0.165, 0.99); - transform: scale(0.98) translateY(15px); - pointer-events: none; -} - -.author-list-item .author-card:before { - content: ""; - position: absolute; - top: 100%; - left: 50%; - display: block; - margin-left: -8px; - width: 0; - height: 0; - border-top: 8px solid #fff; - border-right: 8px solid transparent; - border-left: 8px solid transparent; -} - -.author-list-item .author-card.hovered { - opacity: 1.0; - transform: scale(1) translateY(0px); - pointer-events: auto; -} - -.author-card { - padding: 20px 20px 22px; -} - -.author-card .author-info { - flex: 1 1 auto; - padding: 0 0 0 20px; -} - -.author-card .author-info h2 { - margin: 8px 0 0; - font-size: 1.6rem; -} - -.author-card .author-info p { - margin: 4px 0 0; - color: color-mod(var(--midgrey) l(-10%)); -} - -.author-card .author-info .bio h2 { - margin-top: 0; -} - -.author-card .author-info .bio p { - margin-top: 0.8em; -} - -.author-card .author-profile-image { - flex: 0 0 60px; - margin: 0; - width: 60px; - height: 60px; - border: none; -} - .basic-info .avatar-wrapper { position: relative; margin: 0; @@ -1646,857 +1381,212 @@ Usage (In Ghost editor): opacity: 0.15; } -@media (max-width: 1170px) { - .author-list-item .author-card { - margin-left: -50px; - width: 430px; - } - - .author-list-item .author-card:before { - left: 50px; - } -} - -@media (max-width: 650px) { - .author-list-item .author-card { - display: none; - } -} - -@media (max-width: 500px) { - .author-avatar { - width: 36px; - height: 36px; - } - - .post-full-byline { - margin-top: 20px; - } - - .post-full-byline-meta { - font-size: 1.2rem; - } - - .post-full-byline-meta h4 { - margin-bottom: 2px; - font-size: 1.2rem; - } +.page-template .article-title { + margin-bottom: 0; } -/* 7.2. Members Subscribe Form +/* 7.3. Subscribe /* ---------------------------------------------------------- */ -.subscribe-form { - margin: 1.5em 0; - padding: 6.5vw 7vw 8vw; - border: color-mod(var(--lightgrey) l(+10%)) 1px solid; + +.footer-cta { + position: relative; + padding: 9vmin 4vmin 10vmin; + color: #fff; text-align: center; - background: linear-gradient(color-mod(var(--whitegrey) l(+6%)), color-mod(var(--whitegrey) l(+4%))); - border-radius: 3px; + background: var(--color-darkgrey); } -.subscribe-form-title { - margin: 0 0 3px 0; - padding: 0; - color: var(--darkgrey); - font-size: 3.5rem; - line-height: 1; - font-weight: 600; +/* Increases the default h2 size by 15%, for small and large screens */ +.footer-cta h2 { + margin: 0 0 30px; + font-size: 3.2rem; } -.subscribe-form-description { - margin-bottom: 0.2em 0 1em; - color: var(--midgrey); - font-size: 2.1rem; - line-height: 1.55em; +@media (max-width: 600px) { + .footer-cta h2 { + font-size: 2.65rem; + } } -.subscribe-form form { - display: flex; - flex-direction: column; - justify-content: center; +.footer-cta-button { + position: relative; + display: inline-flex; align-items: center; - margin: 0 auto; - max-width: 460px; -} - -.subscribe-form .form-group { - align-self: stretch; - display: flex; -} - -.subscribe-email { - display: block; - padding: 10px; + justify-content: space-between; width: 100%; - border: color-mod(var(--lightgrey) l(+7%)) 1px solid; - color: var(--midgrey); + max-width: 500px; + padding: 5px 5px 5px 15px; font-size: 1.8rem; - line-height: 1em; - font-weight: normal; - user-select: text; - border-radius: 5px; - transition: border-color 0.15s linear; - - -webkit-appearance: none; + color: var(--color-midgrey); + background: #fff; + border-radius: 8px; } -.subscribe-email:focus { - outline: 0; - border-color: color-mod(var(--lightgrey) l(-2%)); -} - -.subscribe-form button { - position: relative; +.footer-cta-button span { display: inline-block; - margin: 0 0 0 10px; - padding: 0 20px; - height: 43px; - outline: none; - color: #fff; - font-size: 1.5rem; - line-height: 39px; - font-weight: 400; - text-align: center; - background: linear-gradient( - color-mod(var(--blue) whiteness(+7%)), - color-mod(var(--blue) lightness(-7%) saturation(-10%)) 60%, - color-mod(var(--blue) lightness(-7%) saturation(-10%)) 90%, - color-mod(var(--blue) lightness(-4%) saturation(-10%)) - ); - border-radius: 5px; - - -webkit-font-smoothing: subpixel-antialiased; -} - -.subscribe-form button:active, -.subscribe-form button:focus { - background: color-mod(var(--blue) lightness(-9%) saturation(-10%)); -} - -.subscribe-form .button-loader, -.subscribe-form .message-success, -.subscribe-form .message-error { - display: none; -} - -.subscribe-form .loading .button-content { - visibility: hidden; -} - -.subscribe-form .loading .button-loader { - position: absolute; - top: 0; - left: 50%; - display: inline-block; - margin-left: -19px; - transform: scale(0.7); -} - -.subscribe-form .button-loader svg path, -.subscribe-form .button-loader svg rect { - fill: #fff; -} - -.subscribe-form .success .message-success, -.subscribe-form .invalid .message-error, -.subscribe-form .error .message-error { - margin: 1em auto 0; - max-width: 400px; - color: var(--red); - font-size: 1.6rem; - line-height: 1.5em; - text-align: center; -} - -.subscribe-form .success .message-success { - display: block; - color: color-mod(var(--green) l(-5%)); -} - -.subscribe-form .invalid .message-error, -.subscribe-form .error .message-error { - display: block; -} - - -@media (max-width: 650px) { - .subscribe-form-title { - font-size: 2.4rem; - } - - .subscribe-form-description { - font-size: 1.6rem; - } -} - -@media (max-width: 500px) { - .subscribe-form form { - flex-direction: column; - } - - .subscribe-form .form-group { - flex-direction: column; - width: 100%; - } - - .subscribe-form button { - margin: 10px 0 0 0; - width: 100%; - } -} - - -/* 7.3. Comments -/* ---------------------------------------------------------- */ - -.post-full-comments { - margin: 0 auto; - max-width: 840px; -} - - -/* 7.4. Related posts -/* ---------------------------------------------------------- */ - -.read-next { - border-bottom: 1px solid rgba(255, 255, 255, 0.1); - background: color-mod(var(--darkgrey) l(-5%)); -} - -.read-next-feed { - display: flex; - flex-wrap: wrap; - margin: 0 -25px; - padding: 60px 0 0 0; -} - -.read-next .post-card { - padding-bottom: 0; - border-bottom: none; -} - -.read-next .post-card:after { - display: none; -} - -.read-next .post-card-primary-tag { - color: #fff; - opacity: 0.6; -} - -.read-next .post-card-title { - color: #fff; - opacity: 0.8; - transition: all 0.2s ease-in-out; -} - -.read-next .post-card:hover .post-card-image { - opacity: 1.0; -} - -.read-next .post-card-excerpt { - color: rgba(255, 255, 255, 0.6); -} - -.read-next .static-avatar { - border-color: #000; -} - -.read-next .post-card-byline-content { - color: rgba(255, 255, 255, 0.6); -} - -.read-next .post-card-byline-content a { - color: rgba(255, 255, 255, 0.8); -} - -.read-next-card { - position: relative; - flex: 0 1 326px; - display: flex; - flex-direction: column; - overflow: hidden; - margin: 0 25px 50px; - padding: 25px; - background: linear-gradient(color-mod(var(--darkgrey) l(+2%)), color-mod(var(--darkgrey) l(-5%))); - border-radius: 3px; -} - -.read-next-card a { - transition: all 0.2s ease-in-out; -} - -.read-next-card a:hover { - text-decoration: none; -} - -.read-next-card-header h3 { - margin: 0; - color: rgba(255, 255, 255, 0.6); - font-size: 1.2rem; - line-height: 1em; - font-weight: 300; - letter-spacing: 0.4px; - text-transform: uppercase; -} - -.read-next-card-header h3 a { + padding: 10px 20px; color: #fff; font-weight: 500; - text-decoration: none; - opacity: 0.8; + background: var(--ghost-accent-color); + border-radius: 5px; } -.read-next-card-header h3 a:hover { - opacity: 1; + +/* 7.4. Read more +/* ---------------------------------------------------------- */ + +.read-more-wrap { + width: 100%; + padding: 4vmin; + margin: 0 auto -40px; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); + background: color-mod(var(--color-darkgrey) l(-5%)); } -.read-next-card-content { - font-size: 1.7rem; +.read-more { + display: grid; + grid-template-columns: 1fr 1fr 1fr; + grid-gap: 4vmin; } -.read-next-card-content ul { - display: flex; - flex-direction: column; - margin: 0; - padding: 0; - list-style: none; -} - -.read-next-card-content li { - display: flex; - flex-direction: column; - align-items: flex-start; - margin: 0; - padding: 20px 0; - border-bottom: rgba(255, 255, 255, 0.1); -} - -.read-next-card-content li:last-of-type { - padding-bottom: 5px; - border: none; -} - -.read-next-card-content h4 { - margin: 0; - font-size: 1.6rem; - line-height: 1.35em; - font-weight: 600; -} - -.read-next-card-content li a { - display: block; +.read-more .post-card-title { color: #fff; opacity: 0.8; } -.read-next-card-content li a:hover { - opacity: 1; -} - -.read-next-card-excerpt { - overflow: hidden; - max-width: 100%; - font-size: 1.4rem; - line-height: 1.2em; - text-overflow: ellipsis; -} - -.read-next-card-meta { - margin-top: 2px; - font-size: 1.2rem; - line-height: 1.4em; - font-weight: 400; -} - -.read-next-card-meta p { - margin: 0; +.read-more .post-card-excerpt { color: rgba(255, 255, 255, 0.6); } -.read-next-card-footer { - position: relative; - margin: 40px 0 5px; -} - -.read-next-card-footer a { - padding: 7px 12px 8px 14px; - border: 1px solid rgba(255, 255, 255, 0.6); - color: rgba(255, 255, 255, 0.6); - font-size: 1.3rem; - border-radius: 999px; - transition: all 0.35s ease-in-out; -} - -.read-next-card-footer a:hover { - border-color: var(--yellow); - color: var(--yellow); - text-decoration: none; -} - -@media (max-width: 1170px) { - .read-next-card { - flex: 1 1 261px; - margin-bottom: 5vw; - } -} - -@media (max-width: 650px) { - .read-next-feed { - flex-direction: column; - padding: 25px 0 0; - } - - .read-next-card { - flex: 1 1 auto; - margin: 0 25px; - padding: 0; - background: none; - } - - .read-next .post-card { - flex: 1 1 auto; - margin: 25px; - padding: 25px 0 0; - border-bottom: 1px solid rgba(255, 255, 255, 0.1); - } -} - - -/* 7.5. Koenig Styles -/* ---------------------------------------------------------- */ - -.post-content { - display: flex; - flex-direction: column; - align-items: center; -} - -.post-full-content .kg-image { - margin: 0 auto; - max-width: 100%; -} - -/* Preventing full-width image overlap with post image. */ -.post-full-image + .post-full-content .kg-content *:first-child .kg-image { - width: 100%; -} - -.post-full-content .kg-width-wide .kg-image { - max-width: 1040px; -} - -.post-full-content .kg-width-full .kg-image { - max-width: 100vw; -} - -.post-full-content figure { - margin: 0.8em 0 2.3em; -} - -.post-full-content h1 + figure, -.post-full-content h2 + figure, -.post-full-content h3 + figure, -.post-full-content h4 + figure { - margin-top: 2em; -} - -.post-full-content figure img { - margin: 0; -} - -.post-full-content figcaption { - margin: 1.0em auto 0; - color: color-mod(var(--midgrey) l(-10%)); - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; - font-size: 75%; - line-height: 1.5em; - text-align: center; - max-width: 1040px; -} - -.kg-width-full figcaption { - padding: 0 1.5em; -} - -.kg-embed-card { - display: flex; - flex-direction: column; - align-items: center; - width: 100%; -} - -.kg-embed-card .fluid-width-video-wrapper { - margin: 0; -} - - -@media (max-width: 1040px) { - .post-full-content .kg-width-full .kg-image { - width: 100vw; - } -} - -.kg-gallery-container { - display: flex; - flex-direction: column; - max-width: 1040px; - width: 100vw; -} - -.kg-gallery-row { - display: flex; - flex-direction: row; - justify-content: center; -} - -.kg-gallery-image img { - display: block; - margin: 0; - width: 100%; - height: 100%; -} - -.kg-gallery-row:not(:first-of-type) { - margin: 0.75em 0 0 0; -} - -.kg-gallery-image:not(:first-of-type) { - margin: 0 0 0 0.75em; -} - -.kg-gallery-card + .kg-image-card.kg-width-wide, -.kg-gallery-card + .kg-gallery-card, -.kg-image-card.kg-width-wide + .kg-gallery-card, -.kg-image-card.kg-width-wide + .kg-image-card.kg-width-wide { - margin: -2.25em 0 3em; -} - -/* keep existing
 styles for code cards with captions */
-.kg-code-card {
-    width: 100%;
-}
-
-.kg-code-card pre {
-    margin: 0;
-}
-
-.kg-bookmark-card {
-    width: 100%;
-}
-
-.kg-card + .kg-bookmark-card {
-    margin-top: 0;
-}
-
-.post-full-content .kg-bookmark-container {
-    display: flex;
-    min-height: 148px;
-    color: var(--darkgrey);
-    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
-    text-decoration: none;
-    border-radius: 3px;
-    box-shadow: 0 2px 5px -1px rgba(0, 0, 0, 0.15), 0 0 1px rgba(0, 0, 0, 0.09);
-}
-
-.post-full-content .kg-bookmark-container:hover {
-    color: var(--darkgrey);
-    text-decoration: none;
-    box-shadow: 0 2px 5px -1px rgba(0, 0, 0, 0.15), 0 0 1px rgba(0, 0, 0, 0.09);
-}
-
-.kg-bookmark-content {
-    flex-grow: 1;
-    display: flex;
-    flex-direction: column;
-    justify-content: flex-start;
-    align-items: flex-start;
-    padding: 20px;
-}
-
-.kg-bookmark-title {
-    color: color-mod(var(--midgrey) l(-30%));
-    font-size: 1.6rem;
-    line-height: 1.5em;
-    font-weight: 600;
-    transition: color 0.2s ease-in-out;
-}
-
-.post-full-content .kg-bookmark-container:hover .kg-bookmark-title {
-    color: var(--blue);
-}
-
-.kg-bookmark-description {
-    display: -webkit-box;
-    overflow-y: hidden;
-    margin-top: 12px;
-    max-height: 48px;
-    color: color-mod(var(--midgrey) l(-10%));
-    font-size: 1.5rem;
-    line-height: 1.5em;
-    font-weight: 400;
-
-    -webkit-line-clamp: 2;
-    -webkit-box-orient: vertical;
-}
-
-.kg-bookmark-thumbnail {
-    position: relative;
-    min-width: 33%;
-    max-height: 100%;
-}
-
-.kg-bookmark-thumbnail img {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    height: 100%;
-    border-radius: 0 3px 3px 0;
-
-    object-fit: cover;
-}
-
-.kg-bookmark-metadata {
-    display: flex;
-    flex-wrap: wrap;
-    align-items: center;
-    margin-top: 14px;
-    color: color-mod(var(--midgrey) l(-10%));
-    font-size: 1.5rem;
-    font-weight: 400;
-}
-
-.post-full-content .kg-bookmark-icon {
-    margin-right: 8px;
-    width: 22px;
-    height: 22px;
-}
-
-.kg-bookmark-author {
-    line-height: 1.5em;
-}
-
-.kg-bookmark-author:after {
-    content: "•";
-    margin: 0 6px;
-}
-
-.kg-bookmark-publisher {
-    overflow: hidden;
-    max-width: 240px;
-    line-height: 1.5em;
-    text-overflow: ellipsis;
-    white-space: nowrap;
-}
-
-@media (max-width: 800px) {
-    .post-full-content figure {
-        margin: 0.2em 0 1.3em;
-    }
-
-    .post-full-content h1 + figure,
-    .post-full-content h2 + figure,
-    .post-full-content h3 + figure,
-    .post-full-content h4 + figure {
-        margin-top: 0.9em;
-    }
-}
-
-@media (max-width: 500px) {
-    .post-full-content .kg-width-wide,
-    .post-full-content .kg-width-full {
-        margin-right: -5vw;
-        margin-left: -5vw;
-    }
-
-    .post-full-content figcaption {
-        margin-bottom: 0.4em;
-    }
-
-    .post-full-content .kg-bookmark-container {
-        flex-direction: column;
-    }
-
-    .kg-bookmark-title,
-    .kg-bookmark-description,
-    .kg-bookmark-metadata {
-        font-size: 1.4rem;
-        line-height: 1.5em;
-    }
-
-    .post-full-content .kg-bookmark-icon {
-        width: 18px;
-        height: 18px;
-    }
-
-    .kg-bookmark-thumbnail {
-        order: 1;
-        min-height: 160px;
-        width: 100%;
-    }
-
-    .kg-bookmark-thumbnail img {
-        border-radius: 3px 3px 0 0;
-    }
-
-    .kg-bookmark-content {
-        order: 2;
-    }
-}
-
-/* 8. Author Template
-/* ---------------------------------------------------------- */
-.author-header {
-    display: flex;
-    flex-direction: row;
-    justify-content: flex-start;
-    align-items: flex-start;
-    padding: 10vw 0 10px;
-}
-
-.site-archive-header .author-header {
-    align-items: center;
-}
-
-.site-archive-header .no-image .author-header {
-    padding-bottom: 20px;
-}
-
-.author-header-content {
-    display: flex;
-    flex-direction: column;
-    justify-content: center;
-    margin: 5px 0 0 30px;
-}
-
-.site-header-content .author-profile-image {
-    z-index: 10;
-    flex-shrink: 0;
-    margin: -4px 0 0;
-    width: 110px;
-    height: 110px;
-    box-shadow: rgba(255,255,255,0.1) 0 0 0 6px;
-}
-
-.author-header-content .author-bio {
-    z-index: 10;
-    flex-shrink: 0;
-    margin: 6px 0 0;
-    max-width: 46em;
-    font-size: 2.0rem;
-    line-height: 1.3em;
-    font-weight: 400;
-    opacity: 0.8;
-}
-
-.author-header-content .author-meta {
-    z-index: 10;
-    flex-shrink: 0;
-    display: flex;
-    align-items: center;
-    margin: 0 0 0 1px;
-    font-size: 1.2rem;
-    font-weight: 400;
-    letter-spacing: 0.2px;
-    text-transform: uppercase;
-    white-space: nowrap;
-}
-
-.author-header-content .social-link:first-of-type {
-    padding-left: 4px;
-}
-
-.no-image .author-header-content .author-bio {
-    color: var(--midgrey);
-    opacity: 1.0;
-}
-
-.no-image .author-header-content .author-meta {
-    color: var(--midgrey);
-    opacity: 1.0;
-}
-
-.author-social-link a {
+.read-more .post-card-byline-content a {
     color: #fff;
-    font-weight: 600;
 }
 
-.no-image .author-social-link a {
-    color: var(--darkgrey);
-}
 
-.author-social-link a:hover {
-    opacity: 1;
-}
-
-.author-social-link {
-    display: inline-block;
-    margin: 0;
-    padding: 6px 0;
-}
-
-.author-location + .author-stats:before,
-.author-stats + .author-social-link:before,
-.author-social-link + .author-social-link:before {
-    content: "\2022";
-    display: inline-block;
-    margin: 0 12px;
-    color: #fff;
-    opacity: 0.6;
-}
-
-.no-image .author-location + .author-stats:before,
-.no-image .author-stats + .author-social-link:before,
-.no-image .author-social-link + .author-social-link:before {
-    color: var(--midgrey);
+@media (max-width: 1000px) {
+    .read-more {
+        grid-template-columns: 1fr 1fr;
+    }
+    .read-more article:nth-child(3) {
+        display: none;
+    }
 }
 
 @media (max-width: 700px) {
-    .author-location,
-    .author-stats,
-    .author-stats + .author-social-link:first-of-type:before {
+    .read-more {
+        grid-template-columns: 1fr;
+    }
+    .read-more article:nth-child(2) {
         display: none;
     }
 }
 
-@media (max-width: 500px) {
-    .author-header {
-        padding: 10px 0 0;
-    }
 
-    .no-image .author-header {
-        padding-bottom: 10px;
-    }
+/* 8. Author Template
+/* ---------------------------------------------------------- */
 
-    .author-header-content {
+.author-template .posts {
+    position: relative;
+    height: 100%;
+    display: grid;
+    grid-template-columns: 200px 1fr 1fr;
+    grid-gap: 4vmin;
+}
+
+.author-template .posts .post-feed {
+    grid-column: 2 / 4;
+    grid-template-columns: 1fr 1fr;
+}
+
+.author-profile {
+    padding: 4vmin 0;
+}
+
+.author-profile-content {
+    height: auto;
+    position: sticky;
+    top: 4vmin;
+    font-size: 1.4rem;
+    line-height:  1.4em;
+}
+
+.author-profile-pic {
+    display: block;
+    width: 150px;
+    height: 150px;
+    object-fit: cover;
+    margin: 0 0 2rem;
+    background: color-mod(var(--color-lightgrey) l(+10%));
+    border-radius: 50%;
+}
+
+.author-profile h1 {
+    margin: 0 0 0.3em;
+    font-size: 2rem;
+}
+
+.author-profile p {
+    margin: 0 0 1.5em;
+    color: color-mod(var(--color-midgrey) l(-8%));
+}
+
+.author-profile-location {
+    margin: 0 0 1.5em;
+    font-weight: 700;
+}
+
+.author-profile-social-link {
+    display: block;
+    padding: 0 0 5px;
+    font-size: 1.3rem;
+    color: color-mod(var(--color-midgrey) l(-8%));
+    text-overflow: ellipsis;
+    overflow: hidden;
+    max-width: 100%;
+    white-space: nowrap;
+}
+
+.author-profile-social-link:hover {
+    color: var(--color-darkgrey);
+}
+
+@media (max-width: 900px) {
+    .author-template .posts .post-feed {
+        grid-template-columns: 1fr;
+    }
+}
+
+@media (max-width: 650px) {
+    .author-template .posts {
+        grid-template-columns: 1fr;
+        grid-gap: 0;
+    }
+    .author-template .posts .post-feed {
+        grid-column: 1 / auto;
+    }
+    .author-profile {
+        padding-right: 0;
+    }
+    .author-profile-content {
+        display: flex;
+        flex-direction: column;
         align-items: center;
-        margin: 16px 0 0 0;
-    }
-
-    .site-header-content .author-profile-image {
-        width: 96px;
-        height: 96px;
-    }
-
-    .author-header-content .author-bio {
-        font-size: 1.8rem;
-        line-height: 1.3em;
-        letter-spacing: 0;
         text-align: center;
     }
+}
 
-    .author-header-content .author-meta {
-        margin-top: 8px;
-    }
 
-    .author-location + .author-stats:before,
-    .author-stats + .author-social-link:before,
-    .author-social-link + .author-social-link:before {
-        display: inline;
-        margin: 0 6px;
-    }
+/* 8. Tag Template
+/* ---------------------------------------------------------- */
+
+.tag-template .post-card-large .post-card-image-link {
+    grid-column: 2 / span 2;
+    order: 2;
+}
+
+.tag-template .post-card-large .post-card-content {
+    order: 1;
 }
 
 
@@ -2507,37 +1597,23 @@ Usage (In Ghost editor):
     padding: 14vw 4vw 6vw;
 }
 
-.site-nav-center {
-    display: flex;
-    justify-content: center;
-    align-items: center;
-    padding: 10px 0;
-    text-align: center;
-}
-
-.site-nav-center .site-nav-logo {
-    margin-right: 0;
-}
-
 .error-message {
     padding-bottom: 10vw;
-    border-bottom: 1px solid color-mod(var(--lightgrey) l(+10%));
     text-align: center;
 }
 
 .error-code {
     margin: 0;
-    color: var(--lightgrey);
+    color: var(--ghost-accent-color);
     font-size: 12vw;
     line-height: 1em;
     letter-spacing: -5px;
-    opacity: 0.75;
 }
 
 .error-description {
     margin: 0;
-    color: var(--midgrey);
-    font-size: 3rem;
+    color: var(--color-midgrey);
+    font-size: 3.2rem;
     line-height: 1.3em;
     font-weight: 400;
 }
@@ -2581,499 +1657,311 @@ Usage (In Ghost editor):
 }
 
 
-/* 10. Subscribe Message and Overlay
-/* ---------------------------------------------------------- */
-
-.subscribe-success-message {
-    position: fixed;
-    top: 0;
-    right: 0;
-    left: 0;
-    z-index: 9000;
-    padding: 20px 0;
-    color: #fff;
-    text-align: center;
-    background: var(--green);
-    transition: all 0.35s cubic-bezier(0.19, 1, 0.22, 1) 0.5s;
-    transform: translateY(-175%);
-}
-
-.subscribe-success .subscribe-success-message {
-    visibility: visible;
-    transform: translateY(0);
-}
-
-.subscribe-success-message.close {
-    visibility: hidden;
-    transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
-    transform: translateY(-175%);
-}
-
-.subscribe-close-overlay {
-    position: absolute;
-    top: 0;
-    right: 0;
-    bottom: 0;
-    left: 0;
-    display: block;
-}
-
-.subscribe-close-button {
-    position: absolute;
-    top: 16px;
-    right: 20px;
-    z-index: 2000;
-    display: block;
-    width: 40px;
-    height: 40px;
-}
-
-.subscribe-close-button:before {
-    content: "";
-    position: absolute;
-    top: 20px;
-    right: 4px;
-    display: block;
-    width: 32px;
-    height: 1px;
-    background: #fff;
-    opacity: 0.8;
-    transform: rotate(45deg);
-}
-
-.subscribe-close-button:after {
-    content: "";
-    position: absolute;
-    top: 20px;
-    right: 4px;
-    display: block;
-    width: 32px;
-    height: 1px;
-    background: #fff;
-    opacity: 0.8;
-    transform: rotate(-45deg);
-}
-
-.subscribe-close-overlay:hover,
-.subscribe-close-button:hover {
-    cursor: default;
-}
-
-.subscribe-overlay {
-    position: fixed;
-    top: 0;
-    right: 0;
-    bottom: 0;
-    left: 0;
-    z-index: 2000;
-    display: flex;
-    justify-content: center;
-    align-items: center;
-    background: rgba(9,10,11,0.97);
-    opacity: 0;
-    transition: opacity 0.2s ease-in;
-    pointer-events: none;
-}
-
-.subscribe-overlay:target {
-    z-index: 2001;
-    opacity: 1;
-    pointer-events: auto;
-}
-
-.subscribe-overlay-content {
-    position: relative;
-    margin: 0 0 5vw 0;
-    padding: 4vw;
-    color: #fff;
-    text-align: center;
-}
-
-.subscribe-overlay .subscribe-form {
-    border: none;
-    color: #fff;
-    background: none;
-}
-
-.subscribe-overlay-logo {
-    position: fixed;
-    top: 23px;
-    left: 30px;
-    height: 30px;
-}
-
-.subscribe-overlay-title {
-    display: inline-block;
-    margin: 0 0 10px 0;
-    font-size: 5.2rem;
-    line-height: 1.15em;
-}
-
-.subscribe-overlay-description {
-    margin: 0 auto 50px;
-    max-width: 650px;
-    color: #fff;
-    font-family: Georgia, serif;
-    font-size: 2.4rem;
-    line-height: 1.3em;
-    font-weight: 300;
-    opacity: 0.8;
-}
-
-.subscribe-overlay form {
-    display: flex;
-    justify-content: center;
-    align-items: center;
-    margin: 0 auto;
-    max-width: 540px;
-}
-
-.subscribe-overlay .form-group {
-    flex-grow: 1;
-}
-
-.subscribe-overlay .subscribe-email {
-    display: block;
-    padding: 14px 20px;
-    width: 100%;
-    border: none;
-    color: var(--midgrey);
-    font-size: 2rem;
-    line-height: 1em;
-    font-weight: normal;
-    letter-spacing: 0.5px;
-    user-select: text;
-    border-radius: 8px;
-    transition: border-color 0.15s linear;
-
-    -webkit-appearance: none;
-}
-
-.subscribe-email:focus {
-    outline: 0;
-    border-color: color-mod(var(--lightgrey) l(-2%));
-}
-
-.subscribe-overlay button {
-    display: inline-block;
-    margin: 0 0 0 15px;
-    padding: 0 25px;
-    height: 52px;
-    outline: none;
-    color: #fff;
-    font-size: 1.7rem;
-    line-height: 38px;
-    font-weight: 400;
-    text-align: center;
-    background: linear-gradient(
-    color-mod(var(--blue) whiteness(+7%)),
-    color-mod(var(--blue) lightness(-7%) saturation(-10%)) 60%,
-    color-mod(var(--blue) lightness(-7%) saturation(-10%)) 90%,
-    color-mod(var(--blue) lightness(-4%) saturation(-10%))
-    );
-    border-radius: 8px;
-
-    -webkit-font-smoothing: subpixel-antialiased;
-}
-
-.subscribe-overlay button:active,
-.subscribe-overlay button:focus {
-    background: color-mod(var(--blue) lightness(-9%) saturation(-10%));
-}
-
-.subscribe-overlay .loading .button-loader {
-    top: 5px;
-}
-
-@media (max-width: 500px) {
-    .subscribe-overlay button {
-        margin: 12px 0 0;
-    }
-}
-
-
 /* 11. Site Footer
 /* ---------------------------------------------------------- */
 
 .site-footer {
     position: relative;
-    padding-top: 20px;
-    padding-bottom: 60px;
+    margin: 40px 0 0 0;
+    padding: 40px 4vmin 140px;
     color: #fff;
-    background: color-mod(var(--darkgrey) l(-5%));
+    background: color-mod(var(--color-darkgrey) l(-5%));
 }
 
-.site-footer-content {
-    display: flex;
-    flex-wrap: wrap;
-    justify-content: space-between;
-    align-items: center;
+.site-footer .inner {
+    display: grid;
+    grid-gap: 40px;
+    grid-template-columns: auto 1fr auto;
     color: rgba(255,255,255,0.7);
     font-size: 1.3rem;
 }
 
-.site-footer-content a {
+.site-footer .copyright a {
+    color: #fff;
+    letter-spacing: -0.015em;
+    font-weight: 500;
+}
+
+.site-footer a {
     color: rgba(255,255,255,0.7);
 }
 
-.site-footer-content a:hover {
+.site-footer a:hover {
     color: rgba(255,255,255,1);
     text-decoration: none;
 }
 
-.site-footer-nav {
+.site-footer-nav ul {
     display: flex;
+    justify-content: center;
+    flex-wrap: wrap;
+    margin: 0 0 20px;
+    padding: 0;
+    list-style: none;
+}
+
+.site-footer-nav li {
+    display: inline-flex;
+    align-items: center;
+    padding: 0;
+    margin: 0;
+    line-height: 2em;
 }
 
 .site-footer-nav a {
     position: relative;
-    margin-left: 20px;
+    display: inline-flex;
+    align-items: center;
+    margin-left: 10px;
 }
 
-.site-footer-nav a:before {
+.site-footer-nav li:not(:first-child) a:before {
     content: "";
-    position: absolute;
-    top: 11px;
-    left: -11px;
     display: block;
     width: 2px;
     height: 2px;
+    margin: 0 10px 0 0;
     background: #fff;
     border-radius: 100%;
 }
 
-.site-footer-nav a:first-of-type:before {
-    display: none;
-}
-
-@media (max-width: 650px) {
-    .site-footer-content {
-        flex-direction: column;
+@media (max-width: 800px) {
+    .site-footer .inner {
+        max-width: 500px;
+        grid-template-columns: 1fr;
+        grid-gap: 0;
+        text-align: center;
     }
-
-    .site-footer-nav a:first-child {
-        margin-left: 0;
+    .site-footer .copyright,
+    .site-footer .copyright a {
+        color: #fff;
+        font-size: 1.5rem;
     }
 }
 
 
 /* 12. Dark Mode
 /* ---------------------------------------------------------- */
-@media (prefers-color-scheme: dark) {
-    body {
-        color: rgba(255, 255, 255, 0.75);
-        background: var(--darkmode);
-    }
 
-    img {
-        opacity: 0.9;
-    }
+/* If you prefer a dark color scheme, you can enable dark mode
+by adding the following code to the Head section of "Code Injection"
+settings inside: Ghost Admin > Settings > Advanced
 
-    .site-header-background:before {
-        background: rgba(0,0,0,0.6);
-    }
+
 
-    .post-feed {
-        background: var(--darkmode);
-    }
+Or you can just edit default.hbs and add the .dark-mode class directly
+to the html tag on the very first line of the file.
 
-    .post-card,
-    .post-card:hover {
-        border-bottom-color: color-mod(var(--darkmode) l(+8%));
-    }
+ */
 
-    .author-profile-image {
-        background: var(--darkmode);
-    }
-
-    .post-card-byline-content a {
-        color: rgba(255, 255, 255, 0.75);
-    }
-
-    .post-card-byline-content a:hover {
-        color: #fff;
-    }
-
-    .post-card-image {
-        background: var(--darkmode);
-    }
-
-    .post-card-title {
-        color: rgba(255, 255, 255, 0.85);
-    }
-
-    .post-card-excerpt {
-        color: color-mod(var(--midgrey) l(+10%));
-    }
-
-    .author-avatar,
-    .static-avatar {
-        border-color: color-mod(var(--darkgrey) l(+2%));
-    }
-
-    .site-main,
-    .post-template .site-main,
-    .page-template .site-main {
-        background: var(--darkmode);
-    }
-
-    .post-full-content {
-        background: var(--darkmode);
-    }
-
-    .post-full-title {
-        color: rgba(255, 255, 255, 0.9);
-    }
-
-    .post-full-custom-excerpt {
-        color: color-mod(var(--midgrey) l(+10%));
-    }
-
-    .post-full-image {
-        background-color: color-mod(var(--darkmode) l(+8%));
-    }
-
-    .post-full-byline {
-        border-top-color: color-mod(var(--darkmode) l(+15%));
-    }
-
-    .post-full-byline-meta h4 a {
-        color: rgba(255, 255, 255, 0.75);
-    }
-
-    .post-full-byline-meta h4 a:hover {
-        color: #fff;
-    }
-
-    .author-list-item .author-card {
-        background: color-mod(var(--darkmode) l(+4%));
-        box-shadow: 0 12px 26px rgba(0,0,0,0.4);
-    }
-
-    .author-list-item .author-card:before {
-        border-top-color: color-mod(var(--darkmode) l(+4%));
-    }
-
-    .no-image .author-social-link a {
-        color: rgba(255, 255, 255, 0.75);
-    }
-
-    .post-full-content h1,
-    .post-full-content h2,
-    .post-full-content h3,
-    .post-full-content h4,
-    .post-full-content h6 {
-        color: rgba(255, 255, 255, 0.9);
-    }
-
-    .post-full-content a {
-        color: #fff;
-        box-shadow: inset 0 -1px 0 #fff;
-    }
-
-    .post-full-content strong {
-        color: #fff;
-    }
-
-    .post-full-content em {
-        color: #fff;
-    }
-
-    .post-full-content code {
-        color: #fff;
-        background: #000;
-    }
-
-    hr {
-        border-top-color: color-mod(var(--darkmode) l(+8%));
-    }
-
-    .post-full-content figcaption {
-        color: rgba(255, 255, 255, 0.6);
-    }
-
-    .post-full-content table td:first-child {
-        background-image: linear-gradient(to right, var(--darkmode) 50%, color-mod(var(--darkmode) a(0%)) 100%);
-    }
-
-    .post-full-content table td:last-child {
-        background-image: linear-gradient(to left, var(--darkmode) 50%, color-mod(var(--darkmode) a(0%)) 100%);
-    }
-
-    .post-full-content table th {
-        color: rgba(255, 255, 255, 0.85);
-        background-color: color-mod(var(--darkmode) l(+8%));
-    }
-
-    .post-full-content table th,
-    .post-full-content table td {
-        border: color-mod(var(--darkmode) l(+8%)) 1px solid;
-    }
-
-    .post-full-content .kg-bookmark-container,
-    .post-full-content .kg-bookmark-container:hover {
-        color: rgba(255, 255, 255, 0.75);
-        box-shadow: 0 0 1px rgba(255,255,255,0.9);
-    }
-
-    .kg-bookmark-title {
-        color: #fff;
-    }
-
-    .kg-bookmark-description {
-        color: rgba(255, 255, 255, 0.75);
-    }
-
-    .kg-bookmark-metadata {
-        color: rgba(255, 255, 255, 0.75);
-    }
-
-    .site-archive-header .no-image {
-        color: rgba(255, 255, 255, 0.9);
-        background: var(--darkmode);
-    }
-
-    .site-archive-header .no-image .site-header-content {
-        border-bottom-color: color-mod(var(--darkmode) l(+15%));
-    }
-
-    .site-header-content .author-profile-image {
-        box-shadow: 0 0 0 6px hsla(0,0%,100%,0.04);
-    }
-
-    .subscribe-form {
-        border: none;
-        background: linear-gradient(color-mod(var(--darkmode) l(-6%)), color-mod(var(--darkmode) l(-3%)));
-    }
-
-    .subscribe-form-title {
-        color: rgba(255, 255, 255, 0.9);
-    }
-
-    .subscribe-form p {
-        color: rgba(255, 255, 255, 0.7);
-    }
-
-    .subscribe-email {
-        border-color: color-mod(var(--darkmode) l(+6%));
-        color: rgba(255, 255, 255, 0.9);
-        background: color-mod(var(--darkmode) l(+3%));
-    }
-
-    .subscribe-email:focus {
-        border-color: color-mod(var(--darkmode) l(+25%));
-    }
-
-    .subscribe-form button {
-        opacity: 0.9;
-    }
-
-    .subscribe-form .invalid .message-error,
-    .subscribe-form .error .message-error {
-        color: color-mod(var(--red) l(+5%) s(-5%));
-    }
-
-    .subscribe-form .success .message-success {
-        color: color-mod(var(--green) l(+5%) s(-5%));
-    }
+html.dark-mode body {
+    color: rgba(255, 255, 255, 0.75);
+    background: var(--color-darkmode);
 }
+
+html.dark-mode img {
+    opacity: 0.9;
+}
+
+html.dark-mode .post-card,
+html.dark-mode .post-card:hover {
+    border-bottom-color: color-mod(var(--color-darkmode) l(+8%));
+}
+
+html.dark-mode .post-card-byline-content a {
+    color: rgba(255, 255, 255, 0.75);
+}
+
+html.dark-mode .post-card-byline-content a:hover {
+    color: #fff;
+}
+
+html.dark-mode .post-card-image {
+    background: var(--color-darkmode);
+}
+
+html.dark-mode .post-card-title {
+    color: rgba(255, 255, 255, 0.85);
+}
+
+html.dark-mode .post-card-excerpt {
+    color: color-mod(var(--color-midgrey) l(+10%));
+}
+
+html.dark-mode .post-full-content {
+    background: var(--color-darkmode);
+}
+
+html.dark-mode .article-title {
+    color: rgba(255, 255, 255, 0.9);
+}
+
+html.dark-mode .article-excerpt {
+    color: color-mod(var(--color-midgrey) l(+10%));
+}
+
+html.dark-mode .post-full-image {
+    background-color: color-mod(var(--color-darkmode) l(+8%));
+}
+
+html.dark-mode .article-byline {
+    border-top-color: color-mod(var(--color-darkmode) l(+15%));
+}
+
+html.dark-mode .article-byline-meta h4 a {
+    color: rgba(255, 255, 255, 0.75);
+}
+
+html.dark-mode .article-byline-meta h4 a:hover {
+    color: #fff;
+}
+
+html.dark-mode .no-image .author-social-link a {
+    color: rgba(255, 255, 255, 0.75);
+}
+
+html.dark-mode .gh-content h1,
+html.dark-mode .gh-content h2,
+html.dark-mode .gh-content h3,
+html.dark-mode .gh-content h4,
+html.dark-mode .gh-content h5,
+html.dark-mode .gh-content h6 {
+    color: rgba(255, 255, 255, 0.9);
+}
+
+html.dark-mode .gh-content pre {
+    background: color-mod(var(--color-darkgrey) l(-8%));
+}
+
+html.dark-mode .gh-content :not(pre) > code {
+    background: color-mod(var(--color-darkgrey) l(+6%));
+    border-color: color-mod(var(--color-darkmode) l(+8%));
+    color: var(--color-wash);
+}
+
+html.dark-mode .post-full-content a {
+    color: #fff;
+    box-shadow: inset 0 -1px 0 #fff;
+}
+
+html.dark-mode .post-full-content strong {
+    color: #fff;
+}
+
+html.dark-mode .post-full-content em {
+    color: #fff;
+}
+
+html.dark-mode .post-full-content code {
+    color: #fff;
+    background: #000;
+}
+
+html.dark-mode hr {
+    border-top-color: color-mod(var(--color-darkmode) l(+8%));
+}
+
+html.dark-mode .post-full-content hr:after {
+    background: color-mod(var(--color-darkmode) l(+8%));
+    box-shadow: var(--color-darkmode) 0 0 0 5px;
+}
+
+html.dark-mode .gh-content figcaption {
+    color: rgba(255, 255, 255, 0.6);
+}
+
+html.dark-mode .post-full-content table td:first-child {
+    background-image: linear-gradient(to right, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);
+}
+
+html.dark-mode .post-full-content table td:last-child {
+    background-image: linear-gradient(to left, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);
+}
+
+html.dark-mode .post-full-content table th {
+    color: rgba(255, 255, 255, 0.85);
+    background-color: color-mod(var(--color-darkmode) l(+8%));
+}
+
+html.dark-mode .post-full-content table th,
+html.dark-mode .post-full-content table td {
+    border: color-mod(var(--color-darkmode) l(+8%)) 1px solid;
+}
+
+html.dark-mode .post-full-content .kg-bookmark-container,
+html.dark-mode .post-full-content .kg-bookmark-container:hover {
+    color: rgba(255, 255, 255, 0.75);
+    box-shadow: 0 0 1px rgba(255,255,255,0.9);
+}
+
+html.dark-mode .post-full-content input {
+    color: color-mod(var(--color-midgrey) l(-30%));
+}
+
+html.dark-mode .kg-bookmark-title {
+    color: #fff;
+}
+
+html.dark-mode .kg-bookmark-description {
+    color: rgba(255, 255, 255, 0.75);
+}
+
+html.dark-mode .kg-bookmark-metadata {
+    color: rgba(255, 255, 255, 0.75);
+}
+
+html.dark-mode .site-archive-header .no-image {
+    color: rgba(255, 255, 255, 0.9);
+    background: var(--color-darkmode);
+}
+
+html.dark-mode .subscribe-form {
+    border: none;
+    background: linear-gradient(color-mod(var(--color-darkmode) l(-6%)), color-mod(var(--color-darkmode) l(-3%)));
+}
+
+html.dark-mode .subscribe-form-title {
+    color: rgba(255, 255, 255, 0.9);
+}
+
+html.dark-mode .subscribe-form p {
+    color: rgba(255, 255, 255, 0.7);
+}
+
+html.dark-mode .subscribe-email {
+    border-color: color-mod(var(--color-darkmode) l(+6%));
+    color: rgba(255, 255, 255, 0.9);
+    background: color-mod(var(--color-darkmode) l(+3%));
+}
+
+html.dark-mode .subscribe-email:focus {
+    border-color: color-mod(var(--color-darkmode) l(+25%));
+}
+
+html.dark-mode .subscribe-form button {
+    opacity: 0.9;
+}
+
+html.dark-mode .subscribe-form .invalid .message-error,
+html.dark-mode .subscribe-form .error .message-error {
+    color: color-mod(var(--color-red) l(+5%) s(-5%));
+}
+
+html.dark-mode .subscribe-form .success .message-success {
+    color: color-mod(var(--color-green) l(+5%) s(-5%));
+}
+
+/*
+
+Hey! You reached the end.
+
+Hope you enjoyed this CSS file, if you have any suggestions
+for improvements that might be useful for everyone who uses
+this theme, you can find the open source repository for it
+here: https://github.com/tryghost/casper
+
+Or, if you've just scrolled all the way to the bottom of the
+file to add some of your own styles. Well, you've come to
+the right place. Onward!
+
+ */
diff --git a/assets/js/infinite-scroll.js b/assets/js/infinite-scroll.js
index dd34d41..3e9bd7a 100644
--- a/assets/js/infinite-scroll.js
+++ b/assets/js/infinite-scroll.js
@@ -43,7 +43,7 @@
         }
 
         // append contents
-        var postElements = this.response.querySelectorAll('.post-card');
+        var postElements = this.response.querySelectorAll('article.post-card');
         postElements.forEach(function (item) {
             // document.importNode is important, without it the item's owner
             // document will be different which can break resizing of
diff --git a/assets/js/sticky-nav-title.js b/assets/js/sticky-nav-title.js
deleted file mode 100644
index 6e14bb9..0000000
--- a/assets/js/sticky-nav-title.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/* eslint-env browser */
-
-/**
- * Nav/Title replacement
- * Used on invividual post pages, displays the post title in place of the nav
- * bar when scrolling past the title
- *
- * Usage:
- * ```
- * Casper.stickyTitle({
- *     navSelector: '.site-nav-main',
- *     titleSelector: '.post-full-title',
- *     activeClass: 'nav-post-title-active'
- * });
- * ```
- */
-
-(function (window, document) {
-    // set up Casper as a global object
-    if (!window.Casper) {
-        window.Casper = {};
-    }
-
-    window.Casper.stickyNavTitle = function stickyNavTitle(options) {
-        var nav = document.querySelector(options.navSelector);
-        var title = document.querySelector(options.titleSelector);
-
-        var lastScrollY = window.scrollY;
-        var ticking = false;
-
-        function onScroll() {
-            lastScrollY = window.scrollY;
-            requestTick();
-        }
-
-        function requestTick() {
-            if (!ticking) {
-                requestAnimationFrame(update);
-            }
-            ticking = true;
-        }
-
-        function update() {
-            var trigger = title.getBoundingClientRect().top + window.scrollY;
-            var triggerOffset = title.offsetHeight + 35;
-
-            // show/hide post title
-            if (lastScrollY >= trigger + triggerOffset) {
-                nav.classList.add(options.activeClass);
-            } else {
-                nav.classList.remove(options.activeClass);
-            }
-
-            ticking = false;
-        }
-
-        window.addEventListener('scroll', onScroll, {passive: true});
-
-        update();
-    };
-})(window, document);
diff --git a/author.hbs b/author.hbs
index 002bb5d..cd8c432 100644
--- a/author.hbs
+++ b/author.hbs
@@ -1,61 +1,57 @@
 {{!< default}}
 {{!-- The tag above means - insert everything in this file into the {body} of the default.hbs template --}}
 
-{{#author}}
-{{!-- Everything inside the #author tags pulls data from the author --}}
 
-
-
- {{> site-header}} - {{> header-background background=cover_image}} {{!--Special header-image.hbs partial to generate the background image--}} -
-
- {{#if profile_image}} - {{name}} - {{else}} - {{> "icons/avatar"}} - {{/if}} -
-

{{name}}

- {{#if bio}} -

{{bio}}

- {{/if}} -
- {{#if location}} -
{{location}}
- {{/if}} -
- {{plural ../pagination.total empty='No posts' singular='% post' plural='% posts'}} -
- {{#if website}} - Website - {{/if}} - {{#if twitter}} - Twitter - {{/if}} - {{#if facebook}} - Facebook - {{/if}} -
-
-
-
- -
-{{/author}} - -{{!-- The main content area --}} -
+
+
+ {{#author}} + {{!-- Everything inside the #author tags pulls data from the author --}} + +
+ + {{#if profile_image}} + {{name}} + {{else}} + {{> "icons/avatar"}} + {{/if}} + +

{{name}}

+

+ {{#if bio}} + {{bio}} + {{else}} + {{plural ../pagination.total empty='No posts' singular='% post' plural='% posts'}} published + {{/if}} +

+ +
+ {{#if location}} +
📍 {{location}}
+ {{/if}} + {{#if website}} + {{website}} + {{/if}} + {{#if twitter}} + {{twitter_url}} + {{/if}} + {{#if facebook}} + {{facebook_url}} + {{/if}} +
+ +
+ + {{/author}} +
+
{{#foreach posts}} - {{!-- The tag below includes the markup for each post - partials/post-card.hbs --}} {{> "post-card"}} - {{/foreach}}
-
+ diff --git a/config.example.json b/config.example.json deleted file mode 100644 index d79d2e5..0000000 --- a/config.example.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "github": { - "token": "" - } -} diff --git a/default.hbs b/default.hbs index 0bb9893..bea8c05 100644 --- a/default.hbs +++ b/default.hbs @@ -1,8 +1,9 @@ - + - {{!-- Document Settings --}} + {{!-- Basic meta - advanced meta is output with {ghost_head} below --}} + {{meta_title}} @@ -17,122 +18,100 @@ - {{!-- Styles'n'Scripts --}} + {{!-- Theme assets - use the {asset} helper to reference styles & scripts, + this will take care of caching and cache-busting automatically --}} - {{!-- This tag outputs SEO meta+structured data and other important settings --}} + {{!-- This tag outputs all your advanced SEO meta, structured data, and other important settings, + it should always be the last tag before the closing head tag --}} {{ghost_head}} +
-
+
+ +
+ +
+ {{!-- All other templates get inserted here, index.hbs, post.hbs, etc --}} {{{body}}} +
- {{!-- The footer at the very bottom of the screen --}} - - -
- - {{!-- The big email subscribe modal content --}} - {{#if @labs.members}} - - - +{{!-- /.viewport --}} - {{!-- Scripts for Members subscription --}} - + + + - $(document).ready(function () { - if (action == 'subscribe') { - $('body').addClass("subscribe-success"); - } - - $('.subscribe-success-message .subscribe-close').click(function () { - $('.subscribe-success-message').addClass('close'); - }); - - // Reset form on opening subscrion overlay - $('.subscribe-button').click(function() { - $('.subscribe-overlay form').removeClass(); - $('.subscribe-email').val(''); - }); - }); - - - {{!-- The #block helper will pull in data from the #contentFor other template files. In this case, there's some JavaScript which we only want to use in post.hbs, but it needs to be included down here, after jQuery has already loaded. --}} - {{{block "scripts"}}} - - - {{!-- Ghost outputs important scripts and data with this tag - it should always be the very last thing before the closing body tag --}} - {{ghost_foot}} +{{!-- Ghost outputs required functional scripts with this tag - it should always be the last thing before the closing body tag --}} +{{ghost_foot}} diff --git a/error-404.hbs b/error-404.hbs index b3b4490..d6b498d 100644 --- a/error-404.hbs +++ b/error-404.hbs @@ -1,30 +1,37 @@ +{{!< default}} + {{!-- -This error template is used for all 404 errors, which might occur on your site. -It's a good idea to keep this template as minimal as possible in terms of both file size and complexity. + +There are two error files in this theme, one for 404s and one for all other errors. +This file is the former, and handles all 404 Page Not Found errors. + +The 404 error is the most common error that a visitor might see, for example when +following a broken link + +Keep this template as lightweight as you can! + --}} -{{!< default}} -{{!-- The tag above means: insert everything in this file -into the {body} of the default.hbs template --}} - - - -
+

{{statusCode}}

{{message}}

Go to the front page →
+
+
- {{#get "posts" limit="3" include="authors,tags"}} -
- {{#foreach posts}} - {{> "post-card"}} +{{!-- Given that people landing on this page didn't find what they +were looking for, let's give them some alternative stuff to read. --}} +
-
\ No newline at end of file + \ No newline at end of file diff --git a/error.hbs b/error.hbs index dfa5274..388a35d 100644 --- a/error.hbs +++ b/error.hbs @@ -1,7 +1,15 @@ {{!-- -This error template is used for all 400/500 errors, except 404, which might occur on your site. -It's a good idea to keep this template as minimal as possible in terms of both file size and complexity. -You'll notice that we *don't* use any JavaScript, or ghost_head / ghost_foot in this file. + +There are two error files in this theme, one for 404s and one for all other errors. +This file is the latter, and handle all 400/500 errors that might occur. + +Because 500 errors in particular usuall happen when a server is struggling, this +template is as simple as possible. No template dependencies, no JS, no API calls. +This is to prevent rendering the error-page itself compounding the issue causing +the error in the first place. + +Keep this template as lightweight as you can! + --}} @@ -32,7 +40,7 @@ You'll notice that we *don't* use any JavaScript, or ghost_head / ghost_foot in
-
+
diff --git a/gulpfile.js b/gulpfile.js index 09f5b1b..f134db1 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -96,10 +96,10 @@ exports.build = build; exports.zip = series(build, zipper); exports.default = series(build, serve, watcher); -exports.release = () => { +exports.release = async () => { // @NOTE: https://yarnpkg.com/lang/en/docs/cli/version/ // require(./package.json) can run into caching issues, this re-reads from file everytime on release - var packageJSON = JSON.parse(fs.readFileSync('./package.json')); + let packageJSON = JSON.parse(fs.readFileSync('./package.json')); const newVersion = packageJSON.version; if (!newVersion || newVersion === '') { @@ -109,45 +109,36 @@ exports.release = () => { console.log(`\nCreating release for ${newVersion}...`); - let config; - try { - config = require('./config'); - } catch (err) { - config = null; - } + const githubToken = process.env.GST_TOKEN; - if (!config || !config.github || !config.github.token) { - console.log('Please copy config.example.json and configure Github token.'); + if (!githubToken) { + console.log('Please configure your environment with a GitHub token located in GST_TOKEN'); return; } - let compatibleWithGhost; + try { + const result = await inquirer.prompt([{ + type: 'input', + name: 'compatibleWithGhost', + message: 'Which version of Ghost is it compatible with?', + default: '4.0.0' + }]); - return inquirer.prompt([{ - type: 'input', - name: 'compatibleWithGhost', - message: 'Which version of Ghost is it compatible with?', - default: '3.0.0' - }]) - .then(result => { - compatibleWithGhost = result.compatibleWithGhost; - return Promise.resolve(); - }) - .then(() => releaseUtils.releases.get({ - userAgent: 'Casper', - uri: `https://api.github.com/repos/${REPO_READONLY}/releases` - })) - .then((response) => { - if (!response || !response.length) { + const compatibleWithGhost = result.compatibleWithGhost; + + const releasesResponse = await releaseUtils.releases.get({ + userAgent: 'Casper', + uri: `https://api.github.com/repos/${REPO_READONLY}/releases` + }); + + if (!releasesResponse || !releasesResponse) { console.log('No releases found. Skipping...'); return; } - let previousVersion = response[0].tag_name || response[0].name; + let previousVersion = releasesResponse[0].tag_name || releasesResponse[0].name; console.log(`Previous version: ${previousVersion}`); - return Promise.resolve(previousVersion); - }) - .then((previousVersion) => { + const changelog = new releaseUtils.Changelog({ changelogPath: CHANGELOG_PATH, folder: path.join(process.cwd(), '.') @@ -161,27 +152,22 @@ exports.release = () => { .sort() .clean(); - return Promise.resolve(); - }) - .then(() => releaseUtils.releases.create({ - draft: true, - preRelease: false, - tagName: newVersion, - releaseName: newVersion, - userAgent: 'Casper', - uri: `https://api.github.com/repos/${REPO}/releases`, - github: { - token: config.github.token - }, - content: [`**Compatible with Ghost ≥ ${compatibleWithGhost}**\n\n`], - changelogPath: CHANGELOG_PATH - })) - .then((response) => { - console.log(`\nRelease draft generated: ${response.releaseUrl}\n`); - return Promise.resolve(); - }) - .catch((err) => { + const newReleaseResponse = await releaseUtils.releases.create({ + draft: true, + preRelease: false, + tagName: 'v' + newVersion, + releaseName: newVersion, + userAgent: 'Casper', + uri: `https://api.github.com/repos/${REPO}/releases`, + github: { + token: githubToken + }, + content: [`**Compatible with Ghost ≥ ${compatibleWithGhost}**\n\n`], + changelogPath: CHANGELOG_PATH + }); + console.log(`\nRelease draft generated: ${newReleaseResponse.releaseUrl}\n`); + } catch (err) { console.error(err); process.exit(1); - }); + } }; diff --git a/index.hbs b/index.hbs index 8b85db8..10dddbd 100644 --- a/index.hbs +++ b/index.hbs @@ -2,23 +2,29 @@ {{!-- The tag above means: insert everything in this file into the {body} of the default.hbs template --}} -
- {{> header-background background=@site.cover_image}} {{!--Special header-image.hbs partial to generate the background image--}} -
- {{> "site-nav"}} -
-

- {{#if @site.logo}} - - {{else}} - {{@site.title}} - {{/if}} -

-

{{@site.description}}

-
-
-
- +
+ {{#if @site.cover_image}} + {{!-- This is a responsive image, it loads different sizes depending on device + https://medium.freecodecamp.org/a-guide-to-responsive-images-with-ready-to-use-templates-c400bd65c433 --}} + + {{/if}} +

+ {{#if @site.logo}} + + {{else}} + {{@site.title}} + {{/if}} +

+

{{@site.description}}

+
{{!-- The main content area --}}
@@ -35,64 +41,3 @@ into the {body} of the default.hbs template --}}
- -{{> site-header}} - -{{!-- The #contentFor helper here will send everything inside it up to the matching #block helper found in default.hbs --}} -{{#contentFor "scripts"}} - -{{/contentFor}} \ No newline at end of file diff --git a/package.json b/package.json index bac8d0f..6b29b38 100644 --- a/package.json +++ b/package.json @@ -2,10 +2,10 @@ "name": "vivid-casper", "description": "Minor tweaks from the default personal blogging theme for Ghost. Beautiful, minimal and responsive.", "demo": "https://demo.ghost.io", - "version": "3.1.0", + "version": "4.0.4", "engines": { - "ghost": ">=3.0.0", - "ghost-api": "v3" + "ghost": ">=4.0.0", + "ghost-api": "v4" }, "license": "MIT", "screenshots": { @@ -46,18 +46,19 @@ "bugs": "https://github.com/ViViDboarder/Casper/issues", "contributors": "https://github.com/ViViDboarder/Casper/graphs/contributors", "devDependencies": { - "@tryghost/release-utils": "0.6.3", - "autoprefixer": "9.8.6", - "beeper": "2.0.0", + "@tryghost/release-utils": "0.6.12", + "autoprefixer": "10.2.5", + "beeper": "2.1.0", "cssnano": "4.1.10", - "gscan": "3.5.5", + "gscan": "4.0.0", "gulp": "4.0.2", "gulp-concat": "2.6.1", "gulp-livereload": "4.0.2", - "gulp-postcss": "8.0.0", + "gulp-postcss": "9.0.0", "gulp-uglify": "3.0.2", - "gulp-zip": "5.0.2", - "inquirer": "7.3.3", + "gulp-zip": "5.1.0", + "inquirer": "8.0.0", + "postcss": "8.2.8", "postcss-color-mod-function": "3.0.3", "postcss-easy-import": "3.0.0", "pump": "3.0.0" @@ -87,5 +88,10 @@ "width": 2000 } } + }, + "renovate": { + "extends": [ + "@tryghost:theme" + ] } } diff --git a/page.hbs b/page.hbs index 579ed18..ba781d0 100644 --- a/page.hbs +++ b/page.hbs @@ -1,65 +1,40 @@ {{!< default}} + {{!-- The tag above means: insert everything in this file -into the {body} of the default.hbs template --}} +into the {body} tag of the default.hbs template --}} -{{!-- The big featured header, it uses blog cover image as a BG if available --}} - -{{!-- Everything inside the #post tags pulls data from the post --}} {{#post}} +{{!-- Everything inside the #post block pulls data from the page --}} -
-
+
-
+
+ {{#if feature_image}} +
+ {{!-- This is a responsive image, it loads different sizes depending on device + https://medium.freecodecamp.org/a-guide-to-responsive-images-with-ready-to-use-templates-c400bd65c433 --}} + {{title}} +
+ {{/if}} +
-
-

{{title}}

-
+
- {{#if feature_image}} -
- {{!-- This is a responsive image, it loads different sizes depending on device - https://medium.freecodecamp.org/a-guide-to-responsive-images-with-ready-to-use-templates-c400bd65c433 --}} - {{title}} -
- {{/if}} +

{{title}}

-
-
- {{content}} -
-
+ {{content}} -
+ -
-
+ -{{/post}} - -{{!-- The #contentFor helper here will send everything inside it up to the matching #block helper found in default.hbs --}} -{{#contentFor "scripts"}} - -{{/contentFor}} +{{/post}} \ No newline at end of file diff --git a/partials/header-background.hbs b/partials/header-background.hbs deleted file mode 100644 index 9d78ab6..0000000 --- a/partials/header-background.hbs +++ /dev/null @@ -1,47 +0,0 @@ -{{!-- -Wow what the hell is going on in here even? - -Ok so, several templates use this big header with a giant BG image. Nice idea, but big images -have a heavy impact on performance, so it's a good idea to make them responsive. Because we -can only get the image dynamically using Handlebars, and we can only set the image to properly -be a background image using CSS, we end up with a handful of inline styles. - -If the template in question has a background image, then we render responsive image styles -for it, and apply those styles to the
tag. Else, we just output a
tag -with a `no-image` class so we can style it accordingly. ---}} - -{{#if background}} - - -
- -{{else}} - -
- -{{/if}} \ No newline at end of file diff --git a/partials/post-card.hbs b/partials/post-card.hbs index 50ca508..f7fcb8a 100644 --- a/partials/post-card.hbs +++ b/partials/post-card.hbs @@ -1,4 +1,7 @@ -
+{{!-- This is a partial file used to generate a post "card" +which templates loop over to generate a list of posts. --}} + +
{{#if feature_image}} @@ -9,10 +12,10 @@ {{img_url feature_image size="m"}} 600w, {{img_url feature_image size="l"}} 1000w, {{img_url feature_image size="xl"}} 2000w" - sizes="(max-width: 1000px) 400px, 700px" - loading="lazy" + sizes="(max-width: 1000px) 400px, 800px" src="{{img_url feature_image size="m"}}" alt="{{title}}" + loading="lazy" /> {{/if}} @@ -20,7 +23,6 @@
-
{{#if primary_tag}} {{#primary_tag}} @@ -29,26 +31,15 @@ {{/if}}

{{title}}

-
- {{#if feature_image}} -

{{excerpt words="30"}}

- {{else}} -

{{excerpt words="44"}}

- {{/if}} +

{{excerpt}}

-
diff --git a/partials/site-header.hbs b/partials/site-header.hbs deleted file mode 100644 index 11e06f2..0000000 --- a/partials/site-header.hbs +++ /dev/null @@ -1,5 +0,0 @@ - \ No newline at end of file diff --git a/partials/site-nav.hbs b/partials/site-nav.hbs deleted file mode 100644 index ad53758..0000000 --- a/partials/site-nav.hbs +++ /dev/null @@ -1,40 +0,0 @@ - diff --git a/partials/subscribe-form.hbs b/partials/subscribe-form.hbs deleted file mode 100644 index dc3f8bd..0000000 --- a/partials/subscribe-form.hbs +++ /dev/null @@ -1,19 +0,0 @@ - \ No newline at end of file diff --git a/post.hbs b/post.hbs index f11d4c0..be64aa2 100644 --- a/post.hbs +++ b/post.hbs @@ -1,214 +1,117 @@ {{!< default}} {{!-- The tag above means: insert everything in this file -into the {body} of the default.hbs template --}} +into the {body} tag of the default.hbs template --}} - -{{!-- Everything inside the #post tags pulls data from the post --}} {{#post}} +{{!-- Everything inside the #post block pulls data from the post --}} -
-
+
-
+
-
+ {{#if primary_tag}} + + {{/if}} - {{#if primary_tag}} -
- {{#primary_tag}} - {{name}} - {{/primary_tag}} -
- {{/if}} +

{{title}}

-

{{title}}

+ {{#if custom_excerpt}} +

{{custom_excerpt}}

+ {{/if}} - {{#if custom_excerpt}} -

{{custom_excerpt}}

- {{/if}} - - -
- - {{#if feature_image}} -
- {{!-- This is a responsive image, it loads different sizes depending on device - https://medium.freecodecamp.org/a-guide-to-responsive-images-with-ready-to-use-templates-c400bd65c433 --}} - {{title}} -
- {{/if}} - -
-
- {{content}} -
-
- - {{!-- Email subscribe form at the bottom of the page --}} - {{#if @labs.members}} - {{> subscribe-form}} - {{/if}} - - {{!-- -
- If you want to embed comments, this is a good place to do it! -
- --}} - -
- -
-
- -{{!-- Links to Previous/Next posts --}} -
+ +
+ {{content}} +
+ + {{!-- +
+ If you want to embed comments, this is a good place to paste your code! +
+ --}} + + + +{{!-- A signup call to action is displayed here, unless viewed as a logged-in member --}} +{{#unless @member}} + +{{/unless}} + + +{{!-- Read more links, just above the footer --}} + -{{/post}} - -{{!-- The #contentFor helper here will send everything inside it up to the matching #block helper found in default.hbs --}} -{{#contentFor "scripts"}} - -{{/contentFor}} +{{/post}} \ No newline at end of file diff --git a/renovate.json b/renovate.json deleted file mode 100644 index de57c47..0000000 --- a/renovate.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "extends": [ - "@tryghost:theme" - ] -} diff --git a/tag.hbs b/tag.hbs index 86c5407..cd2d094 100644 --- a/tag.hbs +++ b/tag.hbs @@ -1,32 +1,57 @@ {{!< default}} {{!-- The tag above means - insert everything in this file into the {body} of the default.hbs template --}} -{{#tag}} -
- {{> site-header}} - {{> header-background background=feature_image}} {{!--Special header-image.hbs partial to generate the background image--}} -
-

{{name}}

-

- {{#if description}} - {{description}} - {{else}} - A collection of {{plural ../pagination.total empty='posts' singular='% post' plural='% posts'}} - {{/if}} -

-
- -
-{{/tag}} -{{!-- The main content area --}} -
+
+ + {{#tag}} +
+ {{#if feature_image}} +
+ {{!-- This is a responsive image, it loads different sizes depending on device + https://medium.freecodecamp.org/a-guide-to-responsive-images-with-ready-to-use-templates-c400bd65c433 --}} + {{title}} +
+ {{/if}} +
+
+
+
Tagged
+

{{name}}

+
+
+

+ {{#if description}} + {{description}} + {{else}} + A collection of {{plural ../pagination.total empty='zero posts' singular='% post' plural='% posts'}} + {{/if}} +

+
+
+
{{!--/.post-card-content--}} + +
+ {{/tag}} + {{#foreach posts}} + {{!-- The tag below includes the markup for each post - partials/post-card.hbs --}} {{> "post-card"}} + {{/foreach}} +
-
+ diff --git a/yarn.lock b/yarn.lock index 897b462..939472d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,124 +7,133 @@ resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== -"@sentry/apm@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/apm/-/apm-5.20.0.tgz#14c1900ce83582c988c7620ab41d0d2d95956059" - integrity sha512-6zfMRYXG/9VzsmgQqYqFFvg/5XJYOimY/KIrJAijemMLb0Xhwu3xw/2eelWxkWilTBXUWO+dQel5P7JBA8QsKw== +"@elastic/elasticsearch@^7.10.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@elastic/elasticsearch/-/elasticsearch-7.11.0.tgz#e196243d0ed026742fc160d72cc5b4b5b6c7807d" + integrity sha512-AFVVuANIdbV1qYjuOi4hnsX/DehWYG+bbhQO4amq9K4/NnzU7mpGWOPgVlRQTiX+vBfBkx7SL6h4QEjIlM3ztA== dependencies: - "@sentry/browser" "5.20.0" - "@sentry/hub" "5.20.0" - "@sentry/minimal" "5.20.0" - "@sentry/types" "5.20.0" - "@sentry/utils" "5.20.0" + debug "^4.1.1" + hpagent "^0.1.1" + ms "^2.1.1" + pump "^3.0.0" + secure-json-parse "^2.1.0" + +"@sentry/core@6.2.1": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-6.2.1.tgz#8b177e9bf591e2e7ddcb04f0b1403de3f5aa8755" + integrity sha512-jPqQEtafxxDtLONhCbTHh/Uq8mZRhsfbwJTSVYfPVEe/ELfFZLQK7tP6rOh7zEWKbTkE0mE6XcaoH3ZRAhgrqg== + dependencies: + "@sentry/hub" "6.2.1" + "@sentry/minimal" "6.2.1" + "@sentry/types" "6.2.1" + "@sentry/utils" "6.2.1" tslib "^1.9.3" -"@sentry/browser@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-5.20.0.tgz#010ae9a09060ca1859dcc1dbfa186798db82ef7e" - integrity sha512-xVPL7/RuAPcemfSzXiyPHAt4M+0BfzkdTlN+PZb6frCEo4k6E0UiN6WLsGj/iwa2gXhyfTQXtbTuP+tDuNPEJw== +"@sentry/hub@6.2.1": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.2.1.tgz#35bc6bf841a93f4354b3a17592c938b3dba20b73" + integrity sha512-pG7wCQeRpzeP6t0bT4T0X029R19dbDS3/qswF8BL6bg0AI3afjfjBAZm/fqn1Uwe/uBoMHVVdbxgJDZeQ5d4rQ== dependencies: - "@sentry/core" "5.20.0" - "@sentry/types" "5.20.0" - "@sentry/utils" "5.20.0" + "@sentry/types" "6.2.1" + "@sentry/utils" "6.2.1" tslib "^1.9.3" -"@sentry/core@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/core/-/core-5.20.0.tgz#4c6daad108af94cd0ec5a13fd20b2bfe61ccd586" - integrity sha512-fzzWKEolc0O6H/phdDenzKs7JXDSb0sooxVn0QCUkwWSzACALQh+NR/UciOXyhyuoUiqu4zthYQx02qtGqizeQ== +"@sentry/minimal@6.2.1": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.2.1.tgz#8f01480e1b56bc7dd54adf925e5317f233e19384" + integrity sha512-wuSXB4Ayxv9rBEQ4pm7fnG4UU2ZPtPnnChoEfd4/mw1UthXSvmPFEn6O4pdo2G8fTkl8eqm6wT/Q7uIXMEmw+A== dependencies: - "@sentry/hub" "5.20.0" - "@sentry/minimal" "5.20.0" - "@sentry/types" "5.20.0" - "@sentry/utils" "5.20.0" + "@sentry/hub" "6.2.1" + "@sentry/types" "6.2.1" tslib "^1.9.3" -"@sentry/hub@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-5.20.0.tgz#3c8ceb29debaea4184bca210cfa7fdd4aad639cb" - integrity sha512-DiU8fpjAAMOgSx5tsTekMtHPCAtSNWSNS91FFkDCqPn6fYG+/aK/hB5kTlJwr+GTM1815+WWrtXP6y2ecSmZuA== +"@sentry/node@6.2.1": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@sentry/node/-/node-6.2.1.tgz#111418d2cc2245512bc5e46786c373d7d5202525" + integrity sha512-JlixtJHS6xMzh2G4Pz7oMM8Nd40mGUALQYtuGMwW2QE3IduOaaGsn1+eVpN6PwZetMnvRIn6VVFOc2UmFIzWpA== dependencies: - "@sentry/types" "5.20.0" - "@sentry/utils" "5.20.0" - tslib "^1.9.3" - -"@sentry/minimal@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-5.20.0.tgz#309ab4159b44ce3350698294e47da97903593dad" - integrity sha512-oA+0g7p3bapzjgGKQIkSjcjA85VG1HPmjxBD9wpRvNjmYuVmm80Cl1H/P+xg/hupw/kNmASAX4IOd5Z9pEeboA== - dependencies: - "@sentry/hub" "5.20.0" - "@sentry/types" "5.20.0" - tslib "^1.9.3" - -"@sentry/node@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/node/-/node-5.20.0.tgz#8efd42aa86289c0ba98eca7601b4d5032bcae3a5" - integrity sha512-xOSP+sWptQff1dQR8G9DCpATT99odsnEpg+X/uqW6bUvjfgsabiPN4nc/orwkTNtm4MhffZiXVq48IAgl/x8Uw== - dependencies: - "@sentry/apm" "5.20.0" - "@sentry/core" "5.20.0" - "@sentry/hub" "5.20.0" - "@sentry/types" "5.20.0" - "@sentry/utils" "5.20.0" + "@sentry/core" "6.2.1" + "@sentry/hub" "6.2.1" + "@sentry/tracing" "6.2.1" + "@sentry/types" "6.2.1" + "@sentry/utils" "6.2.1" cookie "^0.4.1" https-proxy-agent "^5.0.0" lru_map "^0.3.3" tslib "^1.9.3" -"@sentry/types@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/types/-/types-5.20.0.tgz#0bccbc96ce6fabd115545ec4e70c78ba6c506644" - integrity sha512-/9tiGiXBRsOKM66HeCpt0iSF0vnAIqHzXgC97icNQIstx/ZA8tcLs9540cHDeaN0cyZUyZF1o8ECqcLXGNODWQ== - -"@sentry/utils@5.20.0": - version "5.20.0" - resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-5.20.0.tgz#d67636d83a3001008ad442e3a13f6cc88d48aaf6" - integrity sha512-w0AeAzWEf35h9U9QL/4lgS9MqaTPjeSmQYNU/n4ef3FKr+u8HP68Ra7NZ0adiKgi67Yxr652kWopOLPl7CxvZg== +"@sentry/tracing@6.2.1": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-6.2.1.tgz#61c18c43c5390c348b35dafe73947ab379252d8f" + integrity sha512-bvStY1SnL08wkSeVK3j9K5rivQQJdKFCPR2VYRFOCaUoleZ6ChPUnBvxQ/E2LXc0hk/y/wo1q4r5B0dfCCY+bQ== dependencies: - "@sentry/types" "5.20.0" + "@sentry/hub" "6.2.1" + "@sentry/minimal" "6.2.1" + "@sentry/types" "6.2.1" + "@sentry/utils" "6.2.1" tslib "^1.9.3" -"@tryghost/pretty-cli@1.2.7": - version "1.2.7" - resolved "https://registry.yarnpkg.com/@tryghost/pretty-cli/-/pretty-cli-1.2.7.tgz#d6fc471b938bf38155f37c23d5ad80c819a34a52" - integrity sha512-oDOThdx9RTYqd8uEHVSCH8i36icpaa4Jj34DbpRAV3bCx2iV0CrFHVr0n6MezHU13JoQofQBTSpUR8RBwX3Sow== +"@sentry/types@6.2.1": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.2.1.tgz#28c946230b2023f72307b65606d32052ad9e5353" + integrity sha512-h0OV1QT+fv5ojfK5/+iEXClu33HirmvbjcQC2jf05IHj9yXIOWy6EB10S8nBjuLiiFqQiAQYj3FN9Ip4eN8NJA== + +"@sentry/utils@6.2.1": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.2.1.tgz#bfcb12c20d44bf2aeb0073b1264703c11c179ebd" + integrity sha512-6kQgM/yBPdXu+3qbJnI6HBcWztN9QfiMkH++ZiKk4ERhg9d2LYWlze478uTU5Fyo/JQYcp+McpjtjpR9QIrr0g== dependencies: - chalk "4.0.0" + "@sentry/types" "6.2.1" + tslib "^1.9.3" + +"@tryghost/bunyan-rotating-filestream@0.0.7": + version "0.0.7" + resolved "https://registry.yarnpkg.com/@tryghost/bunyan-rotating-filestream/-/bunyan-rotating-filestream-0.0.7.tgz#3957de91e4e9b58999f0bbe19242080543dcfc4a" + integrity sha512-dswM+dxG8J7WpVoSjzAdoWXqqB5Dg0C2T7Zh6eoUvl5hkA8yWWJi/fS4jNXlHF700lWQ0g8/t+leJ7SGSWd+aw== + dependencies: + long-timeout "^0.1.1" + +"@tryghost/elasticsearch-bunyan@0.1.1": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@tryghost/elasticsearch-bunyan/-/elasticsearch-bunyan-0.1.1.tgz#5a36d81dd020825dd563b1357ae6c249580c46f5" + integrity sha512-ILhumzdwJNoRG44S0FkgzZQlkCYioTKWEiY+FFFQpTFWwZ3Jd5a6us5k8tEsd+Wf2rZOvul/ehV45j2c2l1BMw== + dependencies: + "@elastic/elasticsearch" "^7.10.0" + +"@tryghost/pretty-cli@1.2.15": + version "1.2.15" + resolved "https://registry.yarnpkg.com/@tryghost/pretty-cli/-/pretty-cli-1.2.15.tgz#ace3c9a185bab54c1652ec5f153226fc466ba4af" + integrity sha512-y3Tq0UYApu7TmUH6/bOQhpuC+CQpEMY9I3Ss9Sy6hVG5tKN/LUFMwtJGWtyaie0YRMHZAfzk+lhFuYNoIxwP4g== + dependencies: + chalk "4.1.0" sywac "1.3.0" -"@tryghost/release-utils@0.6.3": - version "0.6.3" - resolved "https://registry.yarnpkg.com/@tryghost/release-utils/-/release-utils-0.6.3.tgz#df0a6badfa0a265c954cf7753b4b3cc5ad703fd8" - integrity sha512-L9yoEPqDjI+whcaRz4v4zwJYJ4OXC5T11dT7739mWaZqh4yvxo0cgsUCUxdAX7k7SbuWL2MEbLCWGJWmmRehMA== +"@tryghost/release-utils@0.6.12": + version "0.6.12" + resolved "https://registry.yarnpkg.com/@tryghost/release-utils/-/release-utils-0.6.12.tgz#a02c725df910053466d11224e81cec0933f500dd" + integrity sha512-6G9o8jOFhcQRbaXrw8XsIXzaDPuxkUb7j5bZzdV1qhnBK2X1Wg/dg1xDN8+uR8jJ/BgrngwaGKs3NTAGKbqfBA== dependencies: bluebird "3.7.2" - emoji-regex "9.0.0" - execa "1.0.0" - lodash "4.17.15" + emoji-regex "9.2.1" + execa "4.1.0" + lodash "4.17.20" request "2.88.2" - request-promise "4.2.5" + request-promise "4.2.6" -"@tryghost/zip@1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@tryghost/zip/-/zip-1.1.1.tgz#acce62dd451c2914bd61dce003a3ea0a5cf15b32" - integrity sha512-k7U8zy0dFoQmTkbKmlnIOibdoBGWbtEDOvcMWgS8tl2F+DuIHzaaG2naxM39jKBl6PMjqt7D0bOvs+VxwfnPYw== +"@tryghost/zip@1.1.10": + version "1.1.10" + resolved "https://registry.yarnpkg.com/@tryghost/zip/-/zip-1.1.10.tgz#a9002f887b02396a22d5daa9b4ba0082441271e4" + integrity sha512-LaveRosrV8kUG9Kn3XE2EQ0M75MamihfRuGz6ZgOzZylH6NKT0WLJgBPUaLR2Hiwff/3S2IXuNtJVp7SOMOJ4w== dependencies: - archiver "4.0.1" + archiver "4.0.2" bluebird "3.7.2" extract-zip "2.0.0" - fs-extra "9.0.0" - -"@types/color-name@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== + fs-extra "9.1.0" "@types/node@*": - version "14.0.27" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.27.tgz#a151873af5a5e851b51b3b065c9e63390a9e0eb1" - integrity sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g== + version "14.14.22" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.22.tgz#0d29f382472c4ccf3bd96ff0ce47daf5b7b84b18" + integrity sha512-g+f/qj/cNcqKkc3tFqlXOYjrmZA+jNBiDzbP3kH+B+otKFqAdPgVTGP1IeKRdMml/aE69as5S4FqtxAbl+LaMw== "@types/q@^1.5.1": version "1.5.4" @@ -152,16 +161,16 @@ accepts@~1.3.7: negotiator "0.6.2" agent-base@6: - version "6.0.1" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.1.tgz#808007e4e5867decb0ab6ab2f928fbdb5a596db4" - integrity sha512-01q25QQDwLSsyfhrKbn8yuur+JNw0H+0Y4JiGIKd3z9aYk/w/2kxD/Upc+t2ZBBSUNff50VjPsSW2YxM8QYKVg== + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" ajv@^6.12.3: - version "6.12.3" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.3.tgz#18c5af38a111ddeb4f2697bd78d68abc1cabd706" - integrity sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA== + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" @@ -212,11 +221,10 @@ ansi-styles@^3.2.1: color-convert "^1.9.0" ansi-styles@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" - integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: - "@types/color-name" "^1.1.1" color-convert "^2.0.1" ansi-wrap@0.1.0, ansi-wrap@^0.1.0: @@ -260,13 +268,13 @@ archiver-utils@^2.1.0: normalize-path "^3.0.0" readable-stream "^2.0.0" -archiver@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/archiver/-/archiver-4.0.1.tgz#3f722b121777e361ca9fad374ecda38e77e63c7f" - integrity sha512-/YV1pU4Nhpf/rJArM23W6GTUjT0l++VbjykrCRua1TSXrn+yM8Qs7XvtwSiRse0iCe49EPNf7ktXnPsWuSb91Q== +archiver@4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/archiver/-/archiver-4.0.2.tgz#43c72865eadb4ddaaa2fb74852527b6a450d927c" + integrity sha512-B9IZjlGwaxF33UN4oPbfBkyA4V1SxNLeIhR1qY8sRXSsbdUkEHrrOvwlYFPx+8uQeCe9M+FG6KgO+imDmQ79CQ== dependencies: archiver-utils "^2.1.0" - async "^2.6.3" + async "^3.2.0" buffer-crc32 "^0.2.1" glob "^7.1.6" readable-stream "^3.6.0" @@ -414,12 +422,10 @@ async@^1.4.0: resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= -async@^2.6.3: - version "2.6.3" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" - integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== - dependencies: - lodash "^4.17.14" +async@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.0.tgz#b3a2685c5ebb641d3de02d161002c60fc9f85720" + integrity sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw== asynckit@^0.4.0: version "0.4.0" @@ -436,17 +442,16 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -autoprefixer@9.8.6: - version "9.8.6" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz#3b73594ca1bf9266320c5acf1588d74dea74210f" - integrity sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg== +autoprefixer@10.2.5: + version "10.2.5" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.2.5.tgz#096a0337dbc96c0873526d7fef5de4428d05382d" + integrity sha512-7H4AJZXvSsn62SqZyJCP+1AWwOuoYpUfK6ot9vm0e87XD6mT8lDywc9D9OTJPMULyGcvmIxzTAMeG2Cc+YX+fA== dependencies: - browserslist "^4.12.0" - caniuse-lite "^1.0.30001109" - colorette "^1.2.1" + browserslist "^4.16.3" + caniuse-lite "^1.0.30001196" + colorette "^1.2.2" + fraction.js "^4.0.13" normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.32" postcss-value-parser "^4.1.0" aws-sign2@~0.7.0: @@ -455,9 +460,9 @@ aws-sign2@~0.7.0: integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= aws4@^1.8.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" - integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA== + version "1.11.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" + integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== bach@^1.0.0: version "1.2.0" @@ -479,10 +484,10 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -base64-js@^1.0.2: - version "1.3.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" - integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== base@^0.11.1: version "0.11.2" @@ -504,12 +509,12 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -beeper@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/beeper/-/beeper-2.0.0.tgz#ecda02439e3c0539d300c363303e4ffeb2daec70" - integrity sha512-+ShExQEewPvKdTUOtCAJmkUAgEyNF0QqgiAhPRE5xLvoFkIPt8xuHKaz1gMLzSMS73beHWs9gbRBngdH61nVWw== +beeper@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/beeper/-/beeper-2.1.0.tgz#3151990e42de31387909fdcc2c12623eb6eefb16" + integrity sha512-85+CcymhlP0jM4fs4ZMiMRl58VthoN9NRdvi+knXiQpP2UggkSre+A9rOZ0c2g2Vh+pEF5ZAlT+k8dsJNoanAA== dependencies: - delay "^4.1.0" + yoctodelay "^1.1.0" binary-extensions@^1.0.0: version "1.13.1" @@ -523,10 +528,10 @@ bindings@^1.5.0: dependencies: file-uri-to-path "1.0.0" -bl@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-4.0.2.tgz#52b71e9088515d0606d9dd9cc7aa48dc1f98e73a" - integrity sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ== +bl@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.0.3.tgz#12d6287adc29080e22a705e5764b2a9522cdc489" + integrity sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg== dependencies: buffer "^5.5.0" inherits "^2.0.4" @@ -592,15 +597,16 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" -browserslist@^4.0.0, browserslist@^4.12.0: - version "4.13.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.13.0.tgz#42556cba011e1b0a2775b611cba6a8eca18e940d" - integrity sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ== +browserslist@^4.0.0, browserslist@^4.16.3: + version "4.16.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.3.tgz#340aa46940d7db878748567c5dea24a48ddf3717" + integrity sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw== dependencies: - caniuse-lite "^1.0.30001093" - electron-to-chromium "^1.3.488" - escalade "^3.0.1" - node-releases "^1.1.58" + caniuse-lite "^1.0.30001181" + colorette "^1.2.1" + electron-to-chromium "^1.3.649" + escalade "^3.1.1" + node-releases "^1.1.70" buffer-crc32@^0.2.1, buffer-crc32@^0.2.13, buffer-crc32@~0.2.3: version "0.2.13" @@ -618,12 +624,12 @@ buffer-from@^1.0.0: integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== buffer@^5.1.0, buffer@^5.5.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz#a31749dc7d81d84db08abf937b6b8c4033f62786" - integrity sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw== + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" + base64-js "^1.3.1" + ieee754 "^1.1.13" bunyan-loggly@1.4.2: version "1.4.2" @@ -633,13 +639,13 @@ bunyan-loggly@1.4.2: json-stringify-safe "^5.0.1" node-loggly-bulk "^2.2.4" -bunyan@1.8.12: - version "1.8.12" - resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.12.tgz#f150f0f6748abdd72aeae84f04403be2ef113797" - integrity sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c= +bunyan@1.8.15: + version "1.8.15" + resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" + integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== optionalDependencies: dtrace-provider "~0.8" - moment "^2.10.6" + moment "^2.19.3" mv "~2" safe-json-stringify "~1" @@ -676,6 +682,14 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" +call-bind@^1.0.0, call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + caller-callsite@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" @@ -720,28 +734,25 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001093, caniuse-lite@^1.0.30001109: - version "1.0.30001109" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001109.tgz#a9f3f26a0c3753b063d7acbb48dfb9c0e46f2b19" - integrity sha512-4JIXRodHzdS3HdK8nSgIqXYLExOvG+D2/EenSvcub2Kp3QEADjo2v2oUn5g0n0D+UNwG9BtwKOyGcSq2qvQXvQ== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001181: + version "1.0.30001181" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001181.tgz#4f0e5184e1ea7c3bf2727e735cbe7ca9a451d673" + integrity sha512-m5ul/ARCX50JB8BSNM+oiPmQrR5UmngaQ3QThTTp5HcIIQGP/nPBs82BYLE+tigzm3VW+F4BJIhUyaVtEweelQ== + +caniuse-lite@^1.0.30001196: + version "1.0.30001196" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001196.tgz#00518a2044b1abf3e0df31fadbe5ed90b63f4e64" + integrity sha512-CPvObjD3ovWrNBaXlAIGWmg2gQQuJ5YhuciUOjPRox6hIQttu8O+b51dx6VIpIY9ESd2d0Vac1RKpICdG4rGUg== caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= -chalk@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.0.0.tgz#6e98081ed2d17faab615eb52ac66ec1fe6209e72" - integrity sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A== +chalk@4.1.0, chalk@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== dependencies: ansi-styles "^4.1.0" supports-color "^7.1.0" @@ -755,14 +766,6 @@ chalk@^2.4.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" - integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -897,10 +900,10 @@ color-name@^1.0.0, color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.5.2: - version "1.5.3" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" - integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== +color-string@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.4.tgz#dd51cd25cfee953d138fe4002372cc3d0e504cb6" + integrity sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw== dependencies: color-name "^1.0.0" simple-swizzle "^0.2.2" @@ -911,18 +914,23 @@ color-support@^1.1.3: integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== color@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" - integrity sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg== + version "3.1.3" + resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e" + integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ== dependencies: color-convert "^1.9.1" - color-string "^1.5.2" + color-string "^1.5.4" colorette@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b" integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw== +colorette@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" + integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== + colors@^1.1.2: version "1.4.0" resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" @@ -1072,16 +1080,14 @@ crc@^3.4.4: dependencies: buffer "^5.1.0" -cross-spawn@^6.0.0: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== +cross-spawn@^7.0.0: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" css-color-names@0.0.4, css-color-names@^0.0.4: version "0.0.4" @@ -1119,18 +1125,18 @@ css-tree@1.0.0-alpha.37: mdn-data "2.0.4" source-map "^0.6.1" -css-tree@1.0.0-alpha.39: - version "1.0.0-alpha.39" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.39.tgz#2bff3ffe1bb3f776cf7eefd91ee5cba77a149eeb" - integrity sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA== +css-tree@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.2.tgz#9ae393b5dafd7dae8a622475caec78d3d8fbd7b5" + integrity sha512-wCoWush5Aeo48GLhfHPbmvZs59Z+M7k5+B1xDnXbdWNcEF423DoFdqSWE0PM5aNk5nI5cp1q7ms36zGApY/sKQ== dependencies: - mdn-data "2.0.6" + mdn-data "2.0.14" source-map "^0.6.1" css-what@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39" - integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg== + version "3.4.2" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" + integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== cssesc@^3.0.0: version "3.0.0" @@ -1206,11 +1212,11 @@ cssnano@4.1.10: postcss "^7.0.0" csso@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/csso/-/csso-4.0.3.tgz#0d9985dc852c7cc2b2cacfbbe1079014d1a8e903" - integrity sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ== + version "4.2.0" + resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" + integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== dependencies: - css-tree "1.0.0-alpha.39" + css-tree "^1.1.2" d@1, d@^1.0.1: version "1.0.1" @@ -1234,17 +1240,17 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3: dependencies: ms "2.0.0" -debug@4, debug@4.1.1, debug@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== +debug@4, debug@4.3.1, debug@^4.1.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: - ms "^2.1.1" + ms "2.1.2" debug@^3.1.0: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" @@ -1270,7 +1276,7 @@ default-resolution@^2.0.0: resolved "https://registry.yarnpkg.com/default-resolution/-/default-resolution-2.0.0.tgz#bcb82baa72ad79b426a76732f1a81ad6df26d684" integrity sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ= -define-properties@^1.1.2, define-properties@^1.1.3: +define-properties@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== @@ -1299,11 +1305,6 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" -delay@^4.1.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/delay/-/delay-4.4.0.tgz#71abc745f3ce043fe7f450491236541edec4ad0c" - integrity sha512-txgOrJu3OdtOfTiEOT2e76dJVfG/1dz2NZ4F0Pyt4UGZJryssMRp5vdM5wQoLwSOBNdrJv3F9PAhp/heqd7vrA== - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -1346,9 +1347,9 @@ domelementtype@1: integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== domelementtype@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" - integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== + version "2.1.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.1.0.tgz#a851c080a6d1c3d94344aed151d99f669edf585e" + integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== domutils@^1.7.0: version "1.7.0" @@ -1359,9 +1360,9 @@ domutils@^1.7.0: domelementtype "1" dot-prop@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" - integrity sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A== + version "5.3.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== dependencies: is-obj "^2.0.0" @@ -1413,15 +1414,15 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.488: - version "1.3.516" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.516.tgz#03ec071b061e462b786bf7e7ce226fd7ab7cf1f6" - integrity sha512-WDM5AAQdOrvLqSX8g3Zd5AujBXfMxf96oeZkff0U2HF5op3tjShE+on2yay3r1UD4M9I3p0iHpAS4+yV8U8A9A== +electron-to-chromium@^1.3.649: + version "1.3.649" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.649.tgz#3aa8be052d4d268ede45d8e98d0cd60ffefad607" + integrity sha512-ojGDupQ3UMkvPWcTICe4JYe17+o9OLiFMPoduoR72Zp2ILt1mRVeqnxBEd6s/ptekrnsFU+0A4lStfBe/wyG/A== -emoji-regex@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.0.0.tgz#48a2309cc8a1d2e9d23bc6a67c39b63032e76ea4" - integrity sha512-6p1NII1Vm62wni/VR/cUMauVQoxmLVb9csqQlvLz+hO2gk8U2UYDfXHQSUYIBKmZwAKz867IDqG7B+u0mj+M6w== +emoji-regex@9.2.1: + version "9.2.1" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.1.tgz#c9b25604256bb3428964bead3ab63069d736f7ee" + integrity sha512-117l1H6U4X3Krn+MrzYrL57d5H7siRHWraBs7s+LjRuFK7Fe7hJqnJ0skWlinqsycVLU5YAo6L8CsEYQ0V5prg== emoji-regex@^8.0.0: version "8.0.0" @@ -1441,9 +1442,9 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: once "^1.4.0" entities@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" - integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.2" @@ -1459,23 +1460,43 @@ error@^7.0.0: dependencies: string-template "~0.2.1" -es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5: - version "1.17.6" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a" - integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw== +es-abstract@^1.17.2: + version "1.17.7" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c" + integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g== dependencies: es-to-primitive "^1.2.1" function-bind "^1.1.1" has "^1.0.3" has-symbols "^1.0.1" - is-callable "^1.2.0" - is-regex "^1.1.0" - object-inspect "^1.7.0" + is-callable "^1.2.2" + is-regex "^1.1.1" + object-inspect "^1.8.0" object-keys "^1.1.1" - object.assign "^4.1.0" + object.assign "^4.1.1" string.prototype.trimend "^1.0.1" string.prototype.trimstart "^1.0.1" +es-abstract@^1.18.0-next.1: + version "1.18.0-next.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.2.tgz#088101a55f0541f595e7e057199e27ddc8f3a5c2" + integrity sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.2.2" + is-negative-zero "^2.0.1" + is-regex "^1.1.1" + object-inspect "^1.9.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.3" + string.prototype.trimstart "^1.0.3" + es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" @@ -1521,10 +1542,10 @@ es6-weak-map@^2.0.1: es6-iterator "^2.0.3" es6-symbol "^3.1.1" -escalade@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.0.2.tgz#6a580d70edb87880f22b4c91d0d56078df6962c4" - integrity sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ== +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-html@~1.0.3: version "1.0.3" @@ -1546,18 +1567,20 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= -execa@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== +execa@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" expand-brackets@^2.1.4: version "2.1.4" @@ -1698,7 +1721,7 @@ extsprintf@^1.2.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= -fancy-log@^1.3.2: +fancy-log@^1.3.2, fancy-log@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== @@ -1718,6 +1741,11 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== +fast-levenshtein@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz#e6a754cc8f15e58987aa9cbd27af66fd6f4e5af9" + integrity sha1-5qdUzI8V5YmHqpy9J69m/W9OWvk= + faye-websocket@~0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" @@ -1860,6 +1888,11 @@ forwarded@~0.1.2: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= +fraction.js@^4.0.13: + version "4.0.13" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.0.13.tgz#3c1c315fa16b35c85fffa95725a36fa729c69dfe" + integrity sha512-E1fz2Xs9ltlUp+qbiyx9wmt2n9dRzPsS11Jtdb8D2o+cC7wr9xkkKsVKJuBX0ST+LVS+LhLO+SbLJNtfWcJvXA== + fragment-cache@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" @@ -1877,24 +1910,15 @@ fs-constants@^1.0.0: resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -fs-extra@8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" - integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.0.tgz#b6afc31036e247b2466dc99c29ae797d5d4580a3" - integrity sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g== +fs-extra@9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== dependencies: at-least-node "^1.0.0" graceful-fs "^4.2.0" jsonfile "^6.0.1" - universalify "^1.0.0" + universalify "^2.0.0" fs-mkdirp-stream@^1.0.0: version "1.0.0" @@ -1939,17 +1963,19 @@ get-caller-file@^1.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== +get-intrinsic@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.0.tgz#892e62931e6938c8a23ea5aaebcfb67bd97da97e" + integrity sha512-M11rgtQp5GZMZzDL7jLTNxbDfurpzuau5uqRWDPvlHjfvg3TdScAZo96GLvhMjImrmR8uAt0FS2RLoMrfWGKlg== dependencies: - pump "^3.0.0" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" -get-stream@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" - integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== +get-stream@^5.0.0, get-stream@^5.1.0, get-stream@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== dependencies: pump "^3.0.0" @@ -1965,24 +1991,26 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" -ghost-ignition@4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/ghost-ignition/-/ghost-ignition-4.2.1.tgz#6ee646b89d36791862e11c6de9922e638badd01d" - integrity sha512-o75AwIMLae7GBg8qM8m5kM7pg55JcoDqrbcOmuR2scjYwdlsBdJBIadyDO7IddNDVOPxYKU32u8O203Z+lgraw== +ghost-ignition@4.5.4: + version "4.5.4" + resolved "https://registry.yarnpkg.com/ghost-ignition/-/ghost-ignition-4.5.4.tgz#09e90721b6df04af048f89f696a7af92e0ab4dfe" + integrity sha512-Ab9r4zFNqqWmcYoF3sFAY7IJCi5LUTz1KrwfpOEL4BVZEBF2HfzZ8Px2JVxDpmSRMmyHKmN1h/xjXfj+IT2hxA== dependencies: - bunyan "1.8.12" + "@tryghost/bunyan-rotating-filestream" "0.0.7" + "@tryghost/elasticsearch-bunyan" "0.1.1" + bunyan "1.8.15" bunyan-loggly "1.4.2" caller "1.0.1" - debug "4.1.1" + debug "4.3.1" find-root "1.1.0" - fs-extra "9.0.0" + fs-extra "9.1.0" gelf-stream "1.1.1" json-stringify-safe "5.0.1" - lodash "4.17.15" - moment "2.25.1" + lodash "4.17.21" + moment "2.27.0" nconf "0.10.0" prettyjson "1.2.1" - uuid "7.0.3" + uuid "8.3.2" glob-parent@^3.1.0: version "3.1.0" @@ -2087,29 +2115,28 @@ graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== -gscan@3.5.5: - version "3.5.5" - resolved "https://registry.yarnpkg.com/gscan/-/gscan-3.5.5.tgz#f0eb5a69c65ff733434fe62d28484673c257f00d" - integrity sha512-P9suo/paFHf/rcY6M0BzQ11x+9i8IlyGqWGK7H/x07/P8Iqeou/OcdXUCma9BZITTx3YfKBkyHR9Zn0fD5QPUw== +gscan@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/gscan/-/gscan-4.0.0.tgz#0120c78051b6990e0af78df6ef0e63cb30082305" + integrity sha512-YHsuTLbKbzCVAA6oTVYi7e0Y87VUfjCyX7F/VCrp4z+GL3j8Ugxw0qAL3H/FzA8PLihRKrq0yH3y4HsnEGassw== dependencies: - "@sentry/node" "5.20.0" - "@tryghost/pretty-cli" "1.2.7" - "@tryghost/zip" "1.1.1" + "@sentry/node" "6.2.1" + "@tryghost/pretty-cli" "1.2.15" + "@tryghost/zip" "1.1.10" bluebird "3.7.2" - chalk "3.0.0" + chalk "4.1.0" common-tags "1.8.0" express "4.17.1" express-hbs "2.3.4" - fs-extra "8.1.0" - ghost-ignition "4.2.1" + fs-extra "9.1.0" + ghost-ignition "4.5.4" glob "7.1.6" - lodash "4.17.19" + lodash "4.17.21" multer "1.4.2" pluralize "8.0.0" require-dir "1.2.0" - semver "7.3.2" - upath "1.2.0" - uuid "8.2.0" + semver "7.3.4" + uuid "8.3.2" validator "13.0.0" gulp-cli@^2.2.0: @@ -2158,15 +2185,14 @@ gulp-livereload@4.0.2: tiny-lr "^1.1.1" vinyl "^2.2.0" -gulp-postcss@8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/gulp-postcss/-/gulp-postcss-8.0.0.tgz#8d3772cd4d27bca55ec8cb4c8e576e3bde4dc550" - integrity sha512-Wtl6vH7a+8IS/fU5W9IbOpcaLqKxd5L1DUOzaPmlnCbX1CrG0aWdwVnC3Spn8th0m8D59YbysV5zPUe1n/GJYg== +gulp-postcss@9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/gulp-postcss/-/gulp-postcss-9.0.0.tgz#2ade18809ab475dae743a88bd6501af0b04ee54e" + integrity sha512-5mSQ9CK8salSagrXgrVyILfEMy6I5rUGPRiR9rVjgJV9m/rwdZYUhekMr+XxDlApfc5ZdEJ8gXNZrU/TsgT5dQ== dependencies: - fancy-log "^1.3.2" + fancy-log "^1.3.3" plugin-error "^1.0.1" - postcss "^7.0.2" - postcss-load-config "^2.0.0" + postcss-load-config "^2.1.1" vinyl-sourcemaps-apply "^0.2.1" gulp-uglify@3.0.2: @@ -2185,12 +2211,12 @@ gulp-uglify@3.0.2: uglify-js "^3.0.5" vinyl-sourcemaps-apply "^0.2.0" -gulp-zip@5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/gulp-zip/-/gulp-zip-5.0.2.tgz#2edf797ec842e770f4dfde8bef97d139015b1972" - integrity sha512-rZd0Ppuc8Bf7J2/WzcdNaeb+lcEXf1R8mV/PJ9Kdu7PmnInWVeLSmiXIka/2QSe6uhAsGVFAMffWSaMzAPGTBg== +gulp-zip@5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/gulp-zip/-/gulp-zip-5.1.0.tgz#38cc1d4c61bc2ab06b452ce463cbe2adc52b935e" + integrity sha512-XZr/y91IliK/SpR74g3TkZejGkGEmK7CSDjSghT1jXshgO+dFvpLIz9w9fpuwkew6i7k4F+G24TubNgq1ISzEw== dependencies: - get-stream "^5.1.0" + get-stream "^5.2.0" plugin-error "^1.0.1" through2 "^3.0.1" vinyl "^2.1.0" @@ -2255,7 +2281,7 @@ has-gulplog@^0.1.0: dependencies: sparkles "^1.0.0" -has-symbols@^1.0.0, has-symbols@^1.0.1: +has-symbols@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== @@ -2315,6 +2341,11 @@ hosted-git-info@^2.1.4: resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== +hpagent@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/hpagent/-/hpagent-0.1.1.tgz#66f67f16e5c7a8b59a068e40c2658c2c749ad5e2" + integrity sha512-IxJWQiY0vmEjetHdoE9HZjD4Cx+mYTr25tR7JCxXaiI3QxW0YqYyM11KyZbHufoa/piWhMb2+D3FGpMgmA2cFQ== + hsl-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" @@ -2353,9 +2384,9 @@ http-errors@~1.7.2: toidentifier "1.0.0" http-parser-js@>=0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.2.tgz#da2e31d237b393aae72ace43882dd7e270a8ff77" - integrity sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ== + version "0.5.3" + resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.3.tgz#01d2709c79d41698bb01d4decc5e9da4e4a033d9" + integrity sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg== http-signature@~1.2.0: version "1.2.0" @@ -2374,6 +2405,11 @@ https-proxy-agent@^5.0.0: agent-base "6" debug "4" +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -2381,10 +2417,10 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -ieee754@^1.1.4: - version "1.1.13" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" - integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== import-cwd@^2.0.0: version "2.1.0" @@ -2432,14 +2468,14 @@ inherits@2.0.3: integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= ini@^1.3.0, ini@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -inquirer@7.3.3: - version "7.3.3" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" - integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== +inquirer@8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.0.0.tgz#957a46db1abcf0fdd2ab82deb7470e90afc7d0ac" + integrity sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA== dependencies: ansi-escapes "^4.2.1" chalk "^4.1.0" @@ -2447,10 +2483,10 @@ inquirer@7.3.3: cli-width "^3.0.0" external-editor "^3.0.3" figures "^3.0.0" - lodash "^4.17.19" + lodash "^4.17.21" mute-stream "0.0.8" run-async "^2.4.0" - rxjs "^6.6.0" + rxjs "^6.6.6" string-width "^4.1.0" strip-ansi "^6.0.0" through "^2.3.6" @@ -2519,10 +2555,10 @@ is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-callable@^1.1.4, is-callable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb" - integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw== +is-callable@^1.1.4, is-callable@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.3.tgz#8b1e0500b73a1d76c70487636f368e519de8db8e" + integrity sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ== is-color-stop@^1.0.0: version "1.1.0" @@ -2536,6 +2572,13 @@ is-color-stop@^1.0.0: rgb-regex "^1.0.1" rgba-regex "^1.0.0" +is-core-module@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a" + integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== + dependencies: + has "^1.0.3" + is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" @@ -2626,6 +2669,11 @@ is-negated-glob@^1.0.0: resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -2650,10 +2698,10 @@ is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff" - integrity sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw== +is-regex@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.1.tgz#c6f98aacc546f6cec5468a07b7b153ab564a57b9" + integrity sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg== dependencies: has-symbols "^1.0.1" @@ -2669,10 +2717,10 @@ is-resolvable@^1.0.0: resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= +is-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" + integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== is-svg@^3.0.0: version "3.0.0" @@ -2759,9 +2807,9 @@ js-beautify@1.11.0: nopt "^4.0.3" js-yaml@^3.13.1: - version "3.14.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" - integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -2796,19 +2844,12 @@ json-stringify-safe@5.0.1, json-stringify-safe@5.0.x, json-stringify-safe@^5.0.1 resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - jsonfile@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.0.1.tgz#98966cba214378c8c84b82e085907b40bf614179" - integrity sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg== + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: - universalify "^1.0.0" + universalify "^2.0.0" optionalDependencies: graceful-fs "^4.1.6" @@ -2950,16 +2991,26 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@4.17.15: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" - integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== - -lodash@4.17.19, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.4: +lodash@4.17.19: version "4.17.19" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== +lodash@4.17.20, lodash@^4.17.19, lodash@^4.17.4: + version "4.17.20" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" + integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== + +lodash@4.17.21, lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +long-timeout@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/long-timeout/-/long-timeout-0.1.1.tgz#9721d788b47e0bcb5a24c2e2bee1a0da55dab514" + integrity sha1-lyHXiLR+C8taJMLivuGg2lXatRQ= + lru-cache@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" @@ -2968,6 +3019,13 @@ lru-cache@^4.1.5: pseudomap "^1.0.2" yallist "^2.1.2" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + lru_map@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd" @@ -3014,16 +3072,16 @@ matchdep@^2.0.0: resolve "^1.4.0" stack-trace "0.0.10" +mdn-data@2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" + integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== + mdn-data@2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== -mdn-data@2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.6.tgz#852dc60fcaa5daa2e8cf6c9189c440ed3e042978" - integrity sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA== - media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" @@ -3034,6 +3092,11 @@ merge-descriptors@1.0.1: resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" @@ -3058,17 +3121,17 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" -mime-db@1.44.0: - version "1.44.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" - integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== +mime-db@1.45.0: + version "1.45.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea" + integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w== mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24: - version "2.1.27" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" - integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== + version "2.1.28" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.28.tgz#1160c4757eab2c5363888e005273ecf79d2a0ecd" + integrity sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ== dependencies: - mime-db "1.44.0" + mime-db "1.45.0" mime@1.6.0: version "1.6.0" @@ -3112,16 +3175,16 @@ mkdirp@~1.0.3: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -moment@2.25.1: - version "2.25.1" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.25.1.tgz#1cb546dca1eccdd607c9324747842200b683465d" - integrity sha512-nRKMf9wDS4Fkyd0C9LXh2FFXinD+iwbJ5p/lh3CHitW9kZbRbJ8hCruiadiIXZVbeAqKZzqcTvHnK3mRhFjb6w== - -moment@^2.10.6, moment@^2.18.1: +moment@2.27.0: version "2.27.0" resolved "https://registry.yarnpkg.com/moment/-/moment-2.27.0.tgz#8bff4e3e26a236220dfe3e36de756b6ebaa0105d" integrity sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ== +moment@^2.18.1, moment@^2.19.3: + version "2.29.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" + integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== + ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -3132,11 +3195,16 @@ ms@2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== -ms@^2.1.1: +ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + multer@1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.2.tgz#2f1f4d12dbaeeba74cb37e623f234bf4d3d2057a" @@ -3171,9 +3239,14 @@ mv@~2: rimraf "~2.4.0" nan@^2.12.1, nan@^2.14.0: - version "2.14.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" - integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== + version "2.14.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" + integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== + +nanoid@^3.1.20: + version "3.1.20" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788" + integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw== nanomatch@^1.2.9: version "1.2.13" @@ -3222,11 +3295,6 @@ next-tick@~1.0.0: resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - node-loggly-bulk@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/node-loggly-bulk/-/node-loggly-bulk-2.2.4.tgz#bdd8638d97c43ecf1e1831ca98b250968fa6dee9" @@ -3236,10 +3304,10 @@ node-loggly-bulk@^2.2.4: moment "^2.18.1" request ">=2.76.0 <3.0.0" -node-releases@^1.1.58: - version "1.1.60" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.60.tgz#6948bdfce8286f0b5d0e5a88e8384e954dfe7084" - integrity sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA== +node-releases@^1.1.70: + version "1.1.70" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.70.tgz#66e0ed0273aa65666d7fe78febe7634875426a08" + integrity sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw== nopt@^4.0.3: version "4.0.3" @@ -3288,12 +3356,12 @@ now-and-later@^2.0.0: dependencies: once "^1.3.2" -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= +npm-run-path@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: - path-key "^2.0.0" + path-key "^3.0.0" nth-check@^1.0.2: version "1.0.2" @@ -3302,11 +3370,6 @@ nth-check@^1.0.2: dependencies: boolbase "~1.0.0" -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -3331,12 +3394,12 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.7.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0" - integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA== +object-inspect@^1.8.0, object-inspect@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.9.0.tgz#c90521d74e1127b67266ded3394ad6116986533a" + integrity sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw== -object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -3348,15 +3411,15 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.0.4, object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== +object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.1, object.assign@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" + call-bind "^1.0.0" + define-properties "^1.1.3" + has-symbols "^1.0.1" + object-keys "^1.1.1" object.defaults@^1.0.0, object.defaults@^1.1.0: version "1.1.0" @@ -3369,12 +3432,13 @@ object.defaults@^1.0.0, object.defaults@^1.1.0: isobject "^3.0.0" object.getownpropertydescriptors@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== + version "2.1.1" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.1.tgz#0dfda8d108074d9c563e80490c883b6661091544" + integrity sha512-6DtXgZ/lIZ9hqx4GtZETobXLR/ZLaa0aqV0kzbn80Rf8Z2e/XFnhA0I7p07N2wH8bBBltr2xQPi6sbKWAY2Eng== dependencies: + call-bind "^1.0.0" define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" + es-abstract "^1.18.0-next.1" object.map@^1.0.0: version "1.0.1" @@ -3400,13 +3464,13 @@ object.reduce@^1.0.0: make-iterator "^1.0.0" object.values@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e" - integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA== + version "1.1.2" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.2.tgz#7a2015e06fcb0f546bd652486ce8583a4731c731" + integrity sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag== dependencies: + call-bind "^1.0.0" define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - function-bind "^1.1.1" + es-abstract "^1.18.0-next.1" has "^1.0.3" on-finished@^2.3.0, on-finished@~2.3.0: @@ -3424,9 +3488,9 @@ once@^1.3.0, once@^1.3.1, once@^1.3.2, once@^1.4.0: wrappy "1" onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" @@ -3462,11 +3526,6 @@ osenv@^0.1.4: os-homedir "^1.0.0" os-tmpdir "^1.0.0" -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - parse-filepath@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" @@ -3528,10 +3587,10 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-parse@^1.0.6: version "1.0.6" @@ -3622,9 +3681,9 @@ posix-character-classes@^0.1.0: integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= postcss-calc@^7.0.1: - version "7.0.2" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.2.tgz#504efcd008ca0273120568b0792b16cdcde8aac1" - integrity sha512-rofZFHUg6ZIrvRwPeFktv06GdbDYLcGqh9EwiMutZg+a0oePCCw1zHOEiji6LCpyRcjTREtPASuUqeAvYlEVvQ== + version "7.0.5" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e" + integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg== dependencies: postcss "^7.0.27" postcss-selector-parser "^6.0.2" @@ -3711,10 +3770,10 @@ postcss-import@^10.0.0: read-cache "^1.0.0" resolve "^1.1.7" -postcss-load-config@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" - integrity sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q== +postcss-load-config@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a" + integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw== dependencies: cosmiconfig "^5.0.0" import-cwd "^2.0.0" @@ -3901,13 +3960,14 @@ postcss-selector-parser@^3.0.0: uniq "^1.0.1" postcss-selector-parser@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" - integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" + integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== dependencies: cssesc "^3.0.0" indexes-of "^1.0.1" uniq "^1.0.1" + util-deprecate "^1.0.2" postcss-svgo@^4.0.2: version "4.0.2" @@ -3947,6 +4007,15 @@ postcss-values-parser@^2.0.0: indexes-of "^1.0.1" uniq "^1.0.1" +postcss@8.2.8: + version "8.2.8" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.8.tgz#0b90f9382efda424c4f0f69a2ead6f6830d08ece" + integrity sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw== + dependencies: + colorette "^1.2.2" + nanoid "^3.1.20" + source-map "^0.6.1" + postcss@^6.0.1, postcss@^6.0.11: version "6.0.23" resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" @@ -3956,10 +4025,10 @@ postcss@^6.0.1, postcss@^6.0.11: source-map "^0.6.1" supports-color "^5.4.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32: - version "7.0.32" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d" - integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw== +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.2, postcss@^7.0.27: + version "7.0.35" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" + integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== dependencies: chalk "^2.4.2" source-map "^0.6.1" @@ -4047,9 +4116,9 @@ qs@6.7.0: integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== qs@^6.4.0: - version "6.9.4" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.4.tgz#9090b290d1f91728d3c22e54843ca44aea5ab687" - integrity sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ== + version "6.9.6" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.6.tgz#26ed3c8243a431b2924aca84cc90471f35d5a0ee" + integrity sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ== qs@~6.5.2: version "6.5.2" @@ -4212,20 +4281,20 @@ replace-homedir@^1.0.0: is-absolute "^1.0.0" remove-trailing-separator "^1.1.0" -request-promise-core@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9" - integrity sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ== +request-promise-core@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" + integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw== dependencies: - lodash "^4.17.15" + lodash "^4.17.19" -request-promise@4.2.5: - version "4.2.5" - resolved "https://registry.yarnpkg.com/request-promise/-/request-promise-4.2.5.tgz#186222c59ae512f3497dfe4d75a9c8461bd0053c" - integrity sha512-ZgnepCykFdmpq86fKGwqntyTiUrHycALuGggpyCZwMvGaZWgxW6yagT0FHkgo5LzYvOaCNvxYwWYIjevSH1EDg== +request-promise@4.2.6: + version "4.2.6" + resolved "https://registry.yarnpkg.com/request-promise/-/request-promise-4.2.6.tgz#7e7e5b9578630e6f598e3813c0f8eb342a27f0a2" + integrity sha512-HCHI3DJJUakkOr8fNoCc73E5nU5bqITjOYFMDrKHYOXWXrgD/SBaC7LjwuPymUprRyuF06UK7hd/lMHkmUXglQ== dependencies: bluebird "^3.5.0" - request-promise-core "1.1.3" + request-promise-core "1.1.4" stealthy-require "^1.1.1" tough-cookie "^2.3.3" @@ -4296,10 +4365,11 @@ resolve-url@^0.2.1: integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.4.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" - integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== + version "1.19.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.19.0.tgz#1af5bf630409734a067cae29318aac7fa29a267c" + integrity sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg== dependencies: + is-core-module "^2.1.0" path-parse "^1.0.6" restore-cursor@^3.1.0: @@ -4337,10 +4407,10 @@ run-async@^2.4.0: resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== -rxjs@^6.6.0: - version "6.6.2" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.2.tgz#8096a7ac03f2cc4fe5860ef6e572810d9e01c0d2" - integrity sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg== +rxjs@^6.6.6: + version "6.6.6" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.6.tgz#14d8417aa5a07c5e633995b525e1e3c0dec03b70" + integrity sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg== dependencies: tslib "^1.9.0" @@ -4381,6 +4451,11 @@ sax@~1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== +secure-json-parse@^2.1.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.3.1.tgz#908aa5e806e223ff8d179d37ad95c2433f5f147d" + integrity sha512-5uGhQLHSC9tVa7RGPkSwxbZVsJCZvIODOadAimCXkU1aCa1fWdszj2DktcutK8A7dD58PoRdxTYiy0jFl6qjnw== + secure-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/secure-keys/-/secure-keys-1.0.0.tgz#f0c82d98a3b139a8776a8808050b824431087fca" @@ -4393,15 +4468,17 @@ semver-greatest-satisfied-range@^1.1.0: dependencies: sver-compat "^1.5.0" -"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.6.0: +"semver@2 || 3 || 4 || 5", semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.2: - version "7.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" - integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== +semver@7.3.4: + version "7.3.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" + integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== + dependencies: + lru-cache "^6.0.0" send@0.17.1: version "0.17.1" @@ -4452,24 +4529,24 @@ setprototypeof@1.1.1: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: - shebang-regex "^1.0.0" + shebang-regex "^3.0.0" -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== sigmund@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA= -signal-exit@^3.0.0, signal-exit@^3.0.2: +signal-exit@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== @@ -4564,9 +4641,9 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== + version "3.0.7" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65" + integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" @@ -4661,21 +4738,21 @@ string-width@^4.1.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" -string.prototype.trimend@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" - integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== +string.prototype.trimend@^1.0.1, string.prototype.trimend@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz#a22bd53cca5c7cf44d7c9d5c732118873d6cd18b" + integrity sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw== dependencies: + call-bind "^1.0.0" define-properties "^1.1.3" - es-abstract "^1.17.5" -string.prototype.trimstart@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" - integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== +string.prototype.trimstart@^1.0.1, string.prototype.trimstart@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz#9b4cb590e123bb36564401d59824298de50fd5aa" + integrity sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg== dependencies: + call-bind "^1.0.0" define-properties "^1.1.3" - es-abstract "^1.17.5" string_decoder@0.10, string_decoder@~0.10.x: version "0.10.31" @@ -4717,10 +4794,10 @@ strip-bom@^2.0.0: dependencies: is-utf8 "^0.2.0" -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== stylehacks@^4.0.0: version "4.0.3" @@ -4746,9 +4823,9 @@ supports-color@^6.1.0: has-flag "^3.0.0" supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" @@ -4785,11 +4862,11 @@ sywac@1.3.0: integrity sha512-LDt2stNTp4bVPMgd70Jj9PWrSa4batl+bv+Ea5NLNGT7ufc4oQPtRfQ73wbddNV6RilaPqnEt6y1Wkm5FVTNEg== tar-stream@^2.1.2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.1.3.tgz#1e2022559221b7866161660f118255e20fa79e41" - integrity sha512-Z9yri56Dih8IaK8gncVPx4Wqt86NDmQTSh49XLZgjWpGZL9GK9HKParS2scqHCC4w6X9Gh2jwaU45V47XTKwVA== + version "2.2.0" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" + integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== dependencies: - bl "^4.0.1" + bl "^4.0.3" end-of-stream "^1.4.1" fs-constants "^1.0.0" inherits "^2.0.3" @@ -4907,9 +4984,9 @@ tough-cookie@^2.3.3, tough-cookie@~2.5.0: punycode "^2.1.1" tslib@^1.9.0, tslib@^1.9.3: - version "1.13.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" - integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tunnel-agent@^0.6.0: version "0.6.0" @@ -4942,9 +5019,9 @@ type@^1.0.1: integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3" - integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow== + version "2.1.0" + resolved "https://registry.yarnpkg.com/type/-/type-2.1.0.tgz#9bdc22c648cf8cf86dd23d32336a41cfb6475e3f" + integrity sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA== typedarray@^0.0.6: version "0.0.6" @@ -4952,9 +5029,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= uglify-js@^3.0.5, uglify-js@^3.1.4: - version "3.10.0" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.10.0.tgz#397a7e6e31ce820bfd1cb55b804ee140c587a9e7" - integrity sha512-Esj5HG5WAyrLIdYU74Z3JdG2PxdIusvj6IWHMtlyESxc7kcDz7zYlYjpnSokn1UbpV0d/QX9fan7gkCNd/9BQA== + version "3.12.6" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.12.6.tgz#f884584fcc42e10bca70db5cb32e8625c2c42535" + integrity sha512-aqWHe3DfQmZUDGWBbabZ2eQnJlQd1fKlMUu7gV+MiTuDzdgDw31bI3wA2jLLsV/hNcDP26IfyEgSVoft5+0SVw== unc-path-regex@^0.1.2: version "0.1.2" @@ -4967,15 +5044,16 @@ undertaker-registry@^1.0.0: integrity sha1-XkvaMI5KiirlhPm5pDWaSZglzFA= undertaker@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-1.2.1.tgz#701662ff8ce358715324dfd492a4f036055dfe4b" - integrity sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA== + version "1.3.0" + resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-1.3.0.tgz#363a6e541f27954d5791d6fa3c1d321666f86d18" + integrity sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg== dependencies: arr-flatten "^1.0.1" arr-map "^2.0.0" bach "^1.0.0" collection-map "^1.0.0" es6-weak-map "^2.0.1" + fast-levenshtein "^1.0.0" last-run "^1.1.0" object.defaults "^1.0.0" object.reduce "^1.0.0" @@ -5009,15 +5087,10 @@ unique-stream@^2.0.2: json-stable-stringify-without-jsonify "^1.0.1" through2-filter "^3.0.0" -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -universalify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" - integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" @@ -5037,15 +5110,15 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" -upath@1.2.0, upath@^1.1.1: +upath@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" @@ -5059,7 +5132,7 @@ use@^3.1.0: resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== -util-deprecate@^1.0.1, util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= @@ -5079,15 +5152,10 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b" - integrity sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg== - -uuid@8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.2.0.tgz#cb10dd6b118e2dada7d0cd9730ba7417c93d920e" - integrity sha512-CYpGiFTUrmI6OBMkAdjSDM0k5h8SkkiTP4WAjQgDgNB1S3Ou9VBEvr6q0Kv2H1mMk7IWfxYGpMH5sd5AvcIV2Q== +uuid@8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== uuid@^3.3.2: version "3.4.0" @@ -5182,9 +5250,9 @@ vinyl-sourcemaps-apply@^0.2.0, vinyl-sourcemaps-apply@^0.2.1: source-map "^0.5.1" vinyl@^2.0.0, vinyl@^2.1.0, vinyl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.0.tgz#d85b07da96e458d25b2ffe19fece9f2caa13ed86" - integrity sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg== + version "2.2.1" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.1.tgz#23cfb8bbab5ece3803aa2c0a1eb28af7cbba1974" + integrity sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw== dependencies: clone "^2.1.1" clone-buffer "^1.0.0" @@ -5212,13 +5280,20 @@ which-module@^1.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8= -which@^1.2.14, which@^1.2.9: +which@^1.2.14: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + window-size@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" @@ -5248,15 +5323,20 @@ xtend@^4.0.0, xtend@~4.0.0, xtend@~4.0.1: integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^3.2.0, y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= + version "3.2.2" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" + integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yargs-parser@5.0.0-security.0: version "5.0.0-security.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz#4ff7271d25f90ac15643b86076a2ab499ec9ee24" @@ -5312,6 +5392,11 @@ yazl@^2.5.1: dependencies: buffer-crc32 "~0.2.3" +yoctodelay@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/yoctodelay/-/yoctodelay-1.1.0.tgz#4820ab055bb044a582e92d01701ada043f427132" + integrity sha512-iCPt7W3X6SCm5wEnMRCoq+c8XCzscKTT0oWq5TNsIb+PUVtNkt/5O3VGlXXlLBnjTKL+29QyTzqbcJNLaiaJyQ== + zip-stream@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-3.0.1.tgz#cb8db9d324a76c09f9b76b31a12a48638b0b9708"