diff --git a/.gitignore b/.gitignore
index c0c0be14..20742ef2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,4 +3,3 @@ builds/
resources/
.DS_Store
-.vscode/
diff --git a/README.md b/README.md
index 165e76ee..29a70466 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# 🏡 [jarv.is](https://jarv.is/)
-
+  
Personal website of [@jakejarvis](https://github.com/jakejarvis), created and deployed using the following:
diff --git a/assets/style.scss b/assets/style.scss
new file mode 100644
index 00000000..d7ede88f
--- /dev/null
+++ b/assets/style.scss
@@ -0,0 +1,681 @@
+/* JJ SCSS */
+/* Compiled from https://github.com/jakejarvis/jarv.is/blob/master/assets/style.scss */
+
+
+// Main Colors
+$color-text: #202020;
+$color-links: #036e9b;
+$color-light: #666666;
+$color-medium-light: #9e9e9e;
+$color-super-light: #dddddd;
+$color-super-duper-light: #f4f4f4;
+$color-read-more: #0077a7;
+
+// Colorful Homepage
+$colors-home:(
+ boston: #fb4d42,
+ javascript: #f48024,
+ node: #6fbc4e,
+ golang: #566468,
+ react: #4fb3cd,
+ angular: #c3002f,
+ vue: #486491,
+ java: #ab6311,
+ cpp: #865fc5,
+ python: #fea500,
+ php: #8892bf,
+ ruby: #d34135,
+ infosec: #00b81a,
+ server: #0098ec,
+ serverless: #87cef7,
+ devops: #ff6200,
+ containerization: #c48f49,
+ y2k: #4169e1,
+ jbb: #9932cc,
+ github: #8d4eff,
+ linkedin: #0073b1,
+ facebook: #4267b2,
+ twitter: #00acee,
+ instagram: #a37754,
+ mastodon: #6d8ca7,
+ resume: #d54b3d,
+ email: #de0c0c,
+ pgp: #777777,
+ sms: #6fcc01,
+ news-1: #ff1b1b,
+ news-2: #f78200,
+ news-3: #f2b702,
+ news-4: #5ebd3e,
+ news-5: #009cdf,
+ news-6: #3e49bb,
+ news-7: #973999
+);
+$color-fairy: #f23e93;
+
+
+// Global Styles
+
+body {
+ width: 100%;
+ height: 100%;
+ margin: 0 auto;
+ color: $color-text;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
+ "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans",
+ "Droid Sans", "Helvetica Neue", sans-serif,
+ "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
+ font-weight: 300;
+ font-size: 24px;
+ line-height: 1.5em;
+}
+
+* {
+ box-sizing: border-box;
+}
+
+a {
+ background-color: transparent;
+ text-decoration: none;
+ border-bottom: 1px solid transparent;
+}
+
+body {
+ a {
+ color: $color-links;
+ &:hover {
+ border-color: $color-links;
+ border-color: unquote($color-links + '60');
+ }
+ }
+
+ // Home Styles
+ home {
+ max-width: 1070px;
+ padding: 60px;
+
+ img#me {
+ float: right;
+ margin: 0 0 20px 20px;
+ padding: 4px;
+ border: 1px solid $color-super-light;
+ width: 160px;
+ height: 160px;
+ }
+
+ h1 {
+ margin: 0 0 20px 0;
+ font-size: 1.5em;
+ font-weight: 500;
+ line-height: 1em;
+ }
+
+ h2 {
+ margin: 20px 0;
+ font-size: 1.2em;
+ font-weight: 400;
+ line-height: 1.4em;
+ }
+
+ p {
+ margin: 20px 0;
+ font-size: 1em;
+ }
+
+ sup {
+ top: -0.5em;
+ font-size: 0.5em;
+ line-height: 0;
+ position: relative;
+ vertical-align: middle;
+ }
+
+ h1 a {
+ color: inherit;
+ border: none;
+ }
+
+ a {
+ // Loop through $colors-home -- the main reason I'm using SASS :)
+ @each $key, $color in $colors-home {
+ #{$key} {
+ color: $color;
+ &:hover {
+ border-color: $color;
+ border-color: unquote($color + '60');
+ }
+ }
+ }
+ }
+
+ span {
+ shh {
+ color: $color-medium-light;
+ }
+
+ fairy {
+ color: $color-fairy;
+ &:hover {
+ cursor: url(data:image/svg+xml;utf8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzNiIgdmlld3BvcnQ9IjAgMCAxMDAgMTAwIiBzdHlsZT0iZm9udC1zaXplOjE4cHgiPjx0ZXh0IHk9IjUwJSI+8J+nmjwvdGV4dD48L3N2Zz4=) 5 5, auto;
+ }
+ }
+ }
+
+ footer {
+ margin: 0;
+ height: 40px;
+
+ div {
+ float: left;
+ vertical-align: middle;
+ line-height: 40px;
+ height: 100%;
+
+ blog {
+ width: 40%;
+ text-align: left;
+ font-size: 0.9em;
+ }
+
+ panda {
+ width: 20%;
+ text-align: center;
+ font-size: 1em;
+
+ span {
+ text-align: center;
+ width: 12px;
+ }
+ }
+
+ info {
+ width: 40%;
+ font-size: 0.55em;
+ color: $color-light;
+ text-align: right;
+
+ a {
+ color: $color-light;
+
+ source {
+ border-bottom: 1px solid $color-super-light;
+ }
+ }
+ }
+ }
+ }
+
+ h1 span#wave {
+ display: inline-block;
+ animation-name: wave;
+ animation-duration: 2.5s;
+ animation-iteration-count: infinite;
+ transform-origin: 70% 70%;
+ }
+ }
+
+ // Blog Styles
+
+ notes {
+ font-size: 18px;
+ font-weight: 400;
+ max-width: 1010px;
+ padding: 20px 50px;
+
+ header {
+ font-size: 16px;
+ margin-top: 20px;
+ margin-bottom: 40px;
+
+ a {
+ more {
+ border: none;
+ font-size: 18px;
+ font-weight: 400;
+ }
+
+ logo {
+ border: none;
+ margin: 20px auto;
+ display: block;
+
+ img, svg {
+ height: 150px;
+ width: 100px;
+ margin: 0 auto;
+ display: block;
+ border: none;
+ }
+ }
+ }
+ }
+
+ footer {
+ border-top: 1px solid $color-super-light;
+ height: 40px;
+ font-size: 24px;
+ padding-top: 16px;
+ margin-top: 30px;
+ margin-bottom: 20px;
+
+ a {
+ color: $color-light;
+ border: none;
+ }
+
+ div {
+ float: left;
+ vertical-align: middle;
+ line-height: 40px;
+ height: 100%;
+
+ copyright, poweredby {
+ width: 40%;
+ font-size: 0.55em;
+ color: $color-light;
+ }
+
+ copyright {
+ text-align: left;
+ }
+
+ poweredby {
+ text-align: right;
+
+ a#source {
+ border-bottom: 1px solid $color-super-light;
+ }
+ }
+
+ panda {
+ width: 20%;
+ text-align: center;
+ font-size: 1em;
+
+ span {
+ text-align: center;
+ width: 12px;
+ }
+ }
+ }
+ }
+
+ main {
+ single article div {
+ content {
+ font-size: 16px;
+ line-height: 1.7;
+ object-fit: contain;
+
+ p {
+ font-size: 16px;
+ line-height: 1.7;
+ object-fit: contain;
+ }
+ }
+
+ info {
+ text-align: center;
+
+ h1 {
+ margin-top: 0;
+ margin-bottom: 20px;
+ font-size: 32px;
+ line-height: 1.4em;
+
+ a {
+ color: $color-text;
+ border: none;
+ }
+ }
+ }
+
+ content {
+ h1, h2, h3 {
+ margin-top: 18px;
+ margin-bottom: 10px;
+ font-weight: 500;
+ line-height: 1.5em;
+ }
+ }
+
+ &.meta {
+ margin: -5px 0 0 0;
+ color: $color-light;
+ font-size: 13px;
+ line-height: 1.5em;
+ letter-spacing: 1px;
+
+ a {
+ color: $color-light;
+ border: none;
+ }
+
+ div.tags {
+ text-transform: uppercase;
+ line-height: 1.5em;
+ letter-spacing: 2px;
+ margin-top: 5px;
+
+ span.tag {
+ color: $color-light;
+ border: none;
+ margin: 0 7px;
+
+ a {
+ color: $color-light;
+ border: none;
+ }
+ }
+ }
+ }
+
+ content {
+ img {
+ max-width: 100%;
+ margin: 0 auto;
+ display: block;
+ object-fit: scale-down;
+
+ + em {
+ display: block;
+ text-align: center;
+ font-size: 15px;
+ color: $color-light;
+ margin-top: 5px;
+ }
+ }
+
+ figure figcaption {
+ display: block;
+ text-align: center;
+ font-size: 15px;
+ color: $color-light;
+ margin-top: 5px;
+ }
+
+ blockquote {
+ border-left: 6px solid $color-links;
+ margin-left: 6px;
+ padding-left: 15px;
+ }
+
+ ul {
+ list-style-position: inside;
+ list-style-type: square;
+ margin-left: 12px;
+ padding-left: 0;
+ }
+
+ code {
+ font-family: monospace;
+ background: $color-super-duper-light;
+ padding: 0.2em;
+ border: 1px solid $color-super-light;
+ font-size: 16px;
+ }
+
+ pre code {
+ padding: 1em 1.5em;
+ line-height: 1.6;
+ page-break-inside: avoid;
+ border: 1px solid $color-super-light;
+ border-left: 3px solid $color-links;
+ overflow-x: scroll;
+ display: block;
+ max-width: 100%;
+ object-fit: scale-down;
+ }
+
+ hr {
+ width: 60%;
+ margin: 10px auto;
+ border: 1px solid $color-super-light;
+ }
+
+ video.embed {
+ display: block;
+ margin: 0 auto;
+ }
+
+ div.embed.video-player {
+ position: relative;
+ padding-bottom: 56.25%;
+ height: 0;
+ overflow: hidden;
+
+ iframe.youtube-player {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ border: none;
+ margin-bottom: 10px;
+ display: inline-block;
+ }
+ }
+
+ twitter-widget {
+ margin: 0 auto;
+ display: block;
+ }
+ }
+
+ commento {
+ border-top: 1px solid #ccc;
+ padding-top: 20px;
+ margin-top: 20px;
+
+ div#commento-footer {
+ display: none;
+ }
+ }
+ }
+
+ archive section.year {
+ ul {
+ list-style-type: none;
+ padding-left: 0;
+ display: block;
+ }
+
+ li {
+ &::after {
+ content: '';
+ display: block;
+ clear: both;
+ }
+
+ &:last-child {
+ margin-bottom: 20px;
+ }
+
+ + li {
+ padding-top: 20px;
+ }
+ }
+
+ div {
+ &.date {
+ float: left;
+ color: $color-light;
+ width: 100px;
+ font-weight: 400;
+ }
+
+ &.title {
+ float: left;
+ width: calc(100% - 100px);
+ }
+ }
+ }
+ }
+ }
+}
+
+
+// Fancy Waving Hand Emoji (TM) - https://jarv.is/notes/css-waving-hand-emoji/
+
+@keyframes wave {
+ 0% { transform: rotate( 0.0deg); }
+ 10% { transform: rotate(-10.0deg); }
+ 20% { transform: rotate( 12.0deg); }
+ 30% { transform: rotate(-10.0deg); }
+ 40% { transform: rotate( 9.0deg); }
+ 50% { transform: rotate( 0.0deg); }
+100% { transform: rotate( 0.0deg); }
+}
+
+
+// Responsive Awesomeness
+
+@media screen and (max-width: 800px) {
+ // Responsive Home
+ body#home {
+ font-size: 16px;
+ padding: 30px;
+
+ img#me {
+ width: 70px;
+ height: 70px;
+ padding: 2px;
+ margin: 0 0 10px 10px;
+ }
+
+ h1 {
+ margin: 0 0 12px 0;
+ }
+
+ h2 {
+ margin: 12px 0;
+ }
+
+ p {
+ font-size: 1.1em;
+ line-height: 1.5em;
+ margin: 12px 0;
+ }
+
+ footer div {
+ panda {
+ display: none;
+ }
+
+ blog {
+ width: 50%;
+ line-height: 20px;
+ }
+
+ info {
+ width: 50%;
+ line-height: 20px;
+ font-size: 0.7em;
+ }
+
+ blog {
+ font-size: 1em;
+ }
+
+ info span#copyright::after {
+ content: "\A";
+ white-space: pre;
+ }
+ }
+ }
+
+ // Responsive Blog
+ body#notes {
+ padding: 30px;
+ width: 100%;
+ max-width: 100%;
+
+ main#single article {
+ width: 100%;
+ max-width: 100%;
+ }
+
+ header {
+ margin-top: 0;
+ margin-bottom: 20px;
+
+ a#logo {
+ img, svg {
+ height: 75px;
+ width: 50px;
+ }
+ }
+ }
+
+ footer {
+ margin-bottom: 30px;
+
+ div {
+ panda {
+ display: none;
+ }
+
+ copyright {
+ width: 50%;
+ font-size: 14px;
+ line-height: 1.8em;
+ }
+
+ poweredby {
+ width: 50%;
+ font-size: 14px;
+ line-height: 1.8em;
+
+ a#hugo::after {
+ content: "\A";
+ white-space: pre;
+ }
+ }
+ }
+ }
+
+ main#single article div.meta {
+ font-size: 14px;
+ }
+ }
+}
+
+
+// Syntax Highlighting - modified from Monokai Light https://github.com/mlgill/pygments-style-monokailight
+
+div.highlight span {
+ &.k, &.kc, &.kd, &.kp, &.kr, &.kt, &.no {
+ color: #03748a;
+ }
+
+ &.n, &.bp, &.nb, &.ni, &.fm, &.nl, &.nn, &.py, &.nv, &.vc, &.vg, &.vi, &.vm, &.p {
+ color: #111111;
+ }
+
+ &.na, &.nc, &.nd, &.ne, &.nf, &.nx {
+ color: #489c44;
+ }
+
+ &.err, &.nt, &.o, &.ow, &.kn {
+ color: #e8003d;
+ }
+
+ &.l, &.se, &.m, &.mb, &.mf, &.mh, &.mi, &.il, &.mo {
+ color: #8145ec;
+ }
+
+ &.ld, &.s, &.sa, &.sb, &.sc, &.dl, &.sd, &.s2, &.sh, &.si, &.sx, &.sr, &.s1, &.ss {
+ color: #c17005;
+ }
+
+ &.c, &.ch, &.cm, &.c1, &.cs, &.cp, &.cpf {
+ color: #6b6859;
+ }
+
+ &.ge {
+ font-style: italic;
+ }
+
+ &.gs {
+ font-weight: bold;
+ }
+}
\ No newline at end of file
diff --git a/layouts/partials/header.html b/layouts/partials/header.html
index 655f1c32..566743b3 100644
--- a/layouts/partials/header.html
+++ b/layouts/partials/header.html
@@ -30,7 +30,7 @@
-
+ {{ $style := resources.Get "style.scss" | resources.ToCSS }}
diff --git a/static/style.css b/static/style.css
deleted file mode 100644
index f65d30fc..00000000
--- a/static/style.css
+++ /dev/null
@@ -1,924 +0,0 @@
-/*! JJ CSS */
-
-body {
- width: 100%;
- height: 100%;
- margin: 0 auto;
- color: #202020;
- font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
- "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans",
- "Droid Sans", "Helvetica Neue", sans-serif,
- "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
- font-weight: 300;
- font-size: 24px;
- line-height: 1.5em;
-}
-
-* {
- box-sizing: border-box;
-}
-
-a {
- background-color: transparent;
- text-decoration: none;
- border-bottom: 1px solid transparent;
-}
-
-
-
-/*! Home Styles */
-
-body#home {
- max-width: 1070px;
- padding: 60px;
-}
-
-body#home img#me {
- float: right;
- margin: 0 0 20px 20px;
- padding: 4px;
- border: 1px solid #ddd;
- width: 160px;
- height: 160px;
-}
-
-body#home h1 {
- margin: 0 0 20px 0;
- font-size: 1.5em;
- font-weight: 500;
- line-height: 1em;
-}
-
-body#home h2 {
- margin: 20px 0;
- font-size: 1.2em;
- font-weight: 400;
- line-height: 1.4em;
-}
-
-body#home p {
- margin: 20px 0;
- font-size: 1em;
-}
-
-body#home sup {
- top: -0.5em;
- font-size: 0.5em;
- line-height: 0;
- position: relative;
- vertical-align: middle;
-}
-
-body#home h1 a {
- color: inherit;
- border: none;
-}
-
-
-/* Colo[u]rful Links */
-
-body#home a#boston {
- color: #fb4d42;
-}
-body#home a#boston:hover {
- border-color: #fb4d42; /* First color for hex alpha (#RRGGBBAA) backwards compatibility: */
- border-color: #fb4d4260; /* https://meyerweb.com/eric/thoughts/2019/04/01/color-me-face1e55/ */
-}
-
-body#home a#javascript {
- color: #f48024;
-}
-body#home a#javascript:hover {
- border-color: #f48024;
- border-color: #f4802460;
-}
-
-body#home a#node {
- color: #6fbc4e;
-}
-body#home a#node:hover {
- border-color: #6fbc4e;
- border-color: #6fbc4e60;
-}
-
-body#home a#golang {
- color: #00acd7;
-}
-body#home a#golang:hover {
- border-color: #00acd7;
- border-color: #00acd760;
-}
-
-body#home a#react {
- color: #4fb3cd;
-}
-body#home a#react:hover {
- border-color: #4fb3cd;
- border-color: #4fb3cd60;
-}
-
-body#home a#angular {
- color: #c3002f;
-}
-body#home a#angular:hover {
- border-color: #c3002f;
- border-color: #c3002f60;
-}
-
-body#home a#vue {
- color: #486491;
-}
-body#home a#vue:hover {
- border-color: #486491;
- border-color: #48649160;
-}
-
-body#home a#java {
- color: #ab6311;
-}
-body#home a#java:hover {
- border-color: #ab6311;
- border-color: #ab631160;
-}
-
-body#home a#cpp {
- color: #865fc5;
-}
-body#home a#cpp:hover {
- border-color: #865fc5;
- border-color: #865fc560;
-}
-
-body#home a#python {
- color: #fea500;
-}
-body#home a#python:hover {
- border-color: #fea500;
- border-color: #fea50060;
-}
-
-body#home a#php {
- color: #8892bf;
-}
-body#home a#php:hover {
- border-color: #8892bf;
- border-color: #8892bf60;
-}
-
-body#home a#ruby {
- color: #d34135;
-}
-body#home a#ruby:hover {
- border-color: #d34135;
- border-color: #d3413560;
-}
-
-body#home a#infosec {
- color: #00b81a;
-}
-body#home a#infosec:hover {
- border-color: #00b81a;
- border-color: #00b81a60;
-}
-
-body#home a#server {
- color: #0098ec;
-}
-body#home a#server:hover {
- border-color: #0098ec;
- border-color: #0098ec60;
-}
-body#home a#server span#serverless {
- color: #87cef7;
-}
-
-body#home a#devops {
- color: #ff6200;
-}
-body#home a#devops:hover {
- border-color: #ff6200;
- border-color: #ff620060;
-}
-
-body#home a#containerization {
- color: #c48f49;
-}
-body#home a#containerization:hover {
- border-color: #c48f49;
- border-color: #c48f4960;
-}
-
-/* default-ish web colors from the 90s are on purpose :) */
-body#home a#y2k {
- color: #4169e1;
-}
-body#home a#y2k:hover {
- border-color: #4169e1;
- border-color: #4169e160;
-}
-body#home a#jbb {
- color: #9932cc;
-}
-body#home a#jbb:hover {
- border-color: #9932cc;
- border-color: #9932cc60;
-}
-body#home span#shh {
- color: #9e9e9e;
-}
-
-body#home span#fairy {
- color: #f23e93;
-}
-body#home span#fairy:hover {
- cursor: url(data:image/svg+xml;utf8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzNiIgdmlld3BvcnQ9IjAgMCAxMDAgMTAwIiBzdHlsZT0iZm9udC1zaXplOjE4cHgiPjx0ZXh0IHk9IjUwJSI+8J+nmjwvdGV4dD48L3N2Zz4=) 5 5, auto;
-}
-
-body#home a#github {
- color: #8d4eff;
-}
-body#home a#github:hover {
- border-color: #8d4eff;
- border-color: #8d4eff60;
-}
-
-body#home a#linkedin {
- color: #0073b1;
-}
-body#home a#linkedin:hover {
- border-color: #0073b1;
- border-color: #0073b160;
-}
-
-body#home a#facebook {
- color: #4267b2;
-}
-body#home a#facebook:hover {
- border-color: #4267b2;
- border-color: #4267b260;
-}
-
-body#home a.twitter {
- color: #00acee;
-}
-body#home a.twitter:hover {
- border-color: #00acee;
- border-color: #00acee60;
-}
-
-body#home a#instagram {
- color: #a37754;
-}
-body#home a#instagram:hover {
- border-color: #a37754;
- border-color: #a3775460;
-}
-
-body#home a#mastodon {
- color: #6d8ca7;
-}
-body#home a#mastodon:hover {
- border-color: #6d8ca7;
- border-color: #6d8ca760;
-}
-
-body#home a#news-1 {
- color: #ff1b1b;
-}
-body#home a#news-1:hover {
- border-color: #ff1b1b;
- border-color: #ff1b1b60;
-}
-
-body#home a#news-2 {
- color: #f78200;
-}
-body#home a#news-2:hover {
- border-color: #f78200;
- border-color: #f7820060;
-}
-
-body#home a#news-3 {
- color: #f2b702;
-}
-body#home a#news-3:hover {
- border-color: #f2b702;
- border-color: #f2b70260;
-}
-
-body#home a#news-4 {
- color: #5ebd3e;
-}
-body#home a#news-4:hover {
- border-color: #5ebd3e;
- border-color: #5ebd3e60;
-}
-
-body#home a#news-5 {
- color: #009cdf;
-}
-body#home a#news-5:hover {
- border-color: #009cdf;
- border-color: #009cdf60;
-}
-
-body#home a#news-6 {
- color: #3e49bb;
-}
-body#home a#news-6:hover {
- border-color: #3e49bb;
- border-color: #3e49bb60;
-}
-
-body#home a#news-7 {
- color: #973999;
-}
-body#home a#news-7:hover {
- border-color: #973999;
- border-color: #97399960;
-}
-
-body#home a#resume {
- color: #d54b3d;
-}
-body#home a#resume:hover {
- border-color: #d54b3d;
- border-color: #d54b3d60;
-}
-
-body#home a#email {
- color: #de0c0c;
-}
-body#home a#email:hover {
- border-color: #de0c0c;
- border-color: #de0c0c60;
-}
-
-body#home a#pgp {
- color: #777777;
-}
-body#home a#pgp:hover {
- border-color: #777777;
- border-color: #77777760;
-}
-
-body#home a#sms {
- color: #6fcc01;
-}
-body#home a#sms:hover {
- border-color: #6fcc01;
- border-color: #6fcc0160;
-}
-
-
-/* Footer */
-
-body#home footer {
- margin: 0;
- height: 40px;
-}
-
-body#home footer div {
- float: left;
- vertical-align: middle;
- line-height: 40px;
- height: 100%;
-}
-
-body#home footer div#blog {
- width: 40%;
- text-align: left;
- font-size: 0.9em;
-}
-
-body#home footer div#blog a {
- color: #0077a7;
-}
-body#home footer div#blog a:hover {
- border-color: #0077a7;
- border-color: #0077a760;
-}
-
-body#home footer div#panda {
- width: 20%;
- text-align: center;
- font-size: 1em;
-}
-
-body#home footer div#panda span {
- text-align: center;
- width: 12px;
-}
-
-body#home footer div#info {
- width: 40%;
- font-size: 0.55em;
- color: #666;
- text-align: right;
-}
-
-body#home footer div#info a {
- color: #666;
-}
-
-body#home footer div#info a#source {
- border-bottom: 1px solid #ddd;
-}
-
-
-/* Responsive Awesomeness */
-
-@media screen and (max-width: 800px) {
- body#home {
- font-size: 16px;
- padding: 30px;
- }
-
- body#home img#me {
- width: 70px;
- height: 70px;
- padding: 2px;
- margin: 0 0 10px 10px;
- }
-
- body#home h1 {
- margin: 0 0 12px 0;
- }
-
- body#home h2 {
- margin: 12px 0;
- }
-
- body#home p {
- font-size: 1.1em;
- line-height: 1.5em;
- margin: 12px 0;
- }
-
- body#home footer div#panda {
- display: none;
- }
-
- body#home footer div#blog, body#home footer div#info {
- width: 50%;
- line-height: 20px;
- }
-
- body#home footer div#info {
- font-size: 0.7em;
- }
-
- body#home footer div#blog {
- font-size: 1em;
- }
-
- body#home footer div#info span#copyright::after {
- content: "\A";
- white-space: pre;
- }
-}
-
-
-/* Fancy Waving Hand Emoji (TM) - https://jarv.is/notes/css-waving-hand-emoji/ */
-
-@keyframes wave {
- 0% { transform: rotate( 0.0deg); }
- 10% { transform: rotate(-10.0deg); }
- 20% { transform: rotate( 12.0deg); }
- 30% { transform: rotate(-10.0deg); }
- 40% { transform: rotate( 9.0deg); }
- 50% { transform: rotate( 0.0deg); }
- 100% { transform: rotate( 0.0deg); }
-}
-
-body#home h1 span#wave {
- display: inline-block;
- animation-name: wave;
- animation-duration: 2.5s;
- animation-iteration-count: infinite;
- transform-origin: 70% 70%;
-}
-
-
-
-/*! Blog Styles */
-
-body#notes {
- font-size: 18px;
- font-weight: 400;
- max-width: 1010px;
- padding: 20px 50px;
-}
-
-body#notes a {
- color: #036e9b;
-}
-body#notes a:hover {
- border-color: #036e9b;
- border-color: #036e9b60;
-}
-
-
-/* Header */
-
-body#notes header {
- font-size: 16px;
- margin-top: 20px;
- margin-bottom: 40px;
-}
-
-body#notes header a#more {
- border: none;
- font-size: 18px;
- font-weight: 400;
-}
-
-body#notes header a#logo {
- border: none;
- margin: 20px auto;
- display: block;
-}
-
-body#notes header a#logo img, body#notes header a#logo svg {
- height: 150px;
- width: 100px;
- margin: 0 auto;
- display: block;
- border: none;
-}
-
-
-/* Footer */
-
-body#notes footer {
- border-top: 1px solid #ccc;
- height: 40px;
- font-size: 24px;
- padding-top: 16px;
- margin-top: 30px;
- margin-bottom: 20px;
-}
-
-body#notes footer a {
- color: #666;
- border: none;
-}
-
-body#notes footer div {
- float: left;
- vertical-align: middle;
- line-height: 40px;
- height: 100%;
-}
-
-body#notes footer div#copyright, body#notes footer div#poweredby {
- width: 40%;
- font-size: 0.55em;
- color: #666;
-}
-
-body#notes footer div#copyright {
- text-align: left;
-}
-
-body#notes footer div#poweredby {
- text-align: right;
-}
-
-body#notes footer div#poweredby a#source {
- border-bottom: 1px solid #ddd;
-}
-
-body#notes footer div#panda {
- width: 20%;
- text-align: center;
- font-size: 1em;
-}
-
-body#notes footer div#panda span {
- text-align: center;
- width: 12px;
-}
-
-
-/* Single Post */
-
-body#notes main#single article div#content, body#notes main#single article div#content p {
- font-size: 16px;
- line-height: 1.7;
- object-fit: contain;
-}
-
-body#notes main#single article div#info {
- text-align: center;
-}
-
-body#notes main#single article div#info h1 {
- margin-top: 0;
- margin-bottom: 20px;
- color: #222;
- font-size: 32px;
- line-height: 1.4em;
-}
-
-body#notes main#single article div#info h1 a {
- color: #222;
- border: none;
-}
-
-body#notes main#single article div#content h1, body#notes main#single article div#content h2, body#notes main#single article div#content h3 {
- margin-top: 18px;
- margin-bottom: 10px;
- font-weight: 500;
- line-height: 1.5em;
-}
-
-body#notes main#single article div.meta {
- margin: -5px 0 0 0;
- color: #666;
- font-size: 13px;
- line-height: 1.5em;
- letter-spacing: 1px;
-}
-
-body#notes main#single article div.meta a {
- color: #666;
- border: none;
-}
-
-body#notes main#single article div.meta div.tags {
- text-transform: uppercase;
- line-height: 1.5em;
- letter-spacing: 2px;
- margin-top: 5px;
-}
-body#notes main#single article div.meta div.tags span.tag {
- color: #666;
- border: none;
- margin: 0 7px;
-}
-body#notes main#single article div.meta div.tags span.tag a {
- color: #666;
- border: none;
-}
-
-body#notes main#single article div#content img {
- max-width: 100%;
- margin: 0 auto;
- display: block;
- object-fit: scale-down;
-}
-body#notes main#single article div#content img + em,
-body#notes main#single article div#content figure figcaption {
- display: block;
- text-align: center;
- font-size: 15px;
- color: #555;
- margin-top: 5px;
-}
-
-body#notes main#single article div#content blockquote {
- border-left: 6px solid #0087be;
- margin-left: 6px;
- padding-left: 15px;
-}
-
-body#notes main#single article div#content ul {
- list-style-position: inside;
- list-style-type: square;
- margin-left: 12px;
- padding-left: 0;
-}
-
-body#notes main#single article div#content code {
- font-family: monospace;
- background: #f4f4f4;
- padding: 0.2em;
- border: 1px solid #ccc;
- font-size: 16px;
-}
-
-body#notes main#single article div#content pre code {
- padding: 1em 1.5em;
- line-height: 1.6;
- page-break-inside: avoid;
- border: 1px solid #ddd;
- border-left: 3px solid #0087be;
- overflow-x: scroll;
- display: block;
- max-width: 100%;
- object-fit: scale-down;
-}
-
-body#notes main#single article div#content hr {
- width: 60%;
- margin: 10px auto;
- border: 1px solid #ccc;
-}
-
-body#notes main#single article div#content video.embed {
- display: block;
- margin: 0 auto;
-}
-
-body#notes main#single article div#content div.embed.video-player {
- position: relative;
- padding-bottom: 56.25%;
- height: 0;
- overflow: hidden;
-}
-
-body#notes main#single article div#content div.embed.video-player iframe.youtube-player {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
- border: none;
- margin-bottom: 10px;
- display: inline-block;
-}
-
-body#notes main#single article div#content twitter-widget {
- margin: 0 auto;
- display: block;
-}
-
-body#notes main#single article div#commento {
- border-top: 1px solid #ccc;
- padding-top: 20px;
- margin-top: 20px;
-}
-
-body#notes main#single article div#commento div#commento-footer {
- display: none;
-}
-
-
-
-/* Archive List */
-
-body#notes main#archive section.year ul {
- list-style-type: none;
- padding-left: 0;
- display: block;
-}
-
-body#notes main#archive section.year li::after {
- content: '';
- display: block;
- clear: both;
-}
-
-body#notes main#archive section.year li:last-child {
- margin-bottom: 20px;
-}
-
-body#notes main#archive section.year li+li {
- padding-top: 20px;
-}
-
-body#notes main#archive section.year div.date {
- float: left;
- color: #666;
- width: 100px;
- font-weight: 400;
-}
-
-body#notes main#archive section.year div.title {
- float: left;
- width: calc(100% - 100px);
-}
-
-
-/* Responsiveness */
-
-@media screen and (max-width: 800px) {
- body#notes {
- padding: 30px;
- }
-
- body#notes, body#notes main#single article {
- width: 100%;
- max-width: 100%;
- }
-
- body#notes header {
- margin-top: 0;
- margin-bottom: 20px;
- }
-
- body#notes header a#logo img, body#notes header a#logo svg {
- height: 75px;
- width: 50px;
- }
-
- body#notes footer {
- margin-bottom: 30px;
- }
-
- body#notes footer div#panda {
- display: none;
- }
-
- body#notes footer div#copyright, body#notes footer div#poweredby {
- width: 50%;
- font-size: 14px;
- line-height: 1.8em;
- }
-
- body#notes footer div#poweredby a#hugo::after {
- content: "\A";
- white-space: pre;
- }
-
- body#notes main#single article div.meta {
- font-size: 14px;
- }
-}
-
-
-/*! Syntax Highlighting - modified from Monokai Light https://github.com/mlgill/pygments-style-monokailight */
-
-div.highlight span.k,
-div.highlight span.kc,
-div.highlight span.kd,
-div.highlight span.kp,
-div.highlight span.kr,
-div.highlight span.kt,
-div.highlight span.no {
- color: #03748a;
-}
-div.highlight span.n,
-div.highlight span.bp,
-div.highlight span.nb,
-div.highlight span.ni,
-div.highlight span.fm,
-div.highlight span.nl,
-div.highlight span.nn,
-div.highlight span.py,
-div.highlight span.nv,
-div.highlight span.vc,
-div.highlight span.vg,
-div.highlight span.vi,
-div.highlight span.vm,
-div.highlight span.p {
- color: #111111;
-}
-div.highlight span.na,
-div.highlight span.nc,
-div.highlight span.nd,
-div.highlight span.ne,
-div.highlight span.nf,
-div.highlight span.nx {
- color: #489c44;
-}
-div.highlight span.err,
-div.highlight span.nt,
-div.highlight span.o,
-div.highlight span.ow,
-div.highlight span.kn {
- color: #e8003d;
-}
-div.highlight span.l,
-div.highlight span.se,
-div.highlight span.m,
-div.highlight span.mb,
-div.highlight span.mf,
-div.highlight span.mh,
-div.highlight span.mi,
-div.highlight span.il,
-div.highlight span.mo {
- color: #8145ec;
-}
-div.highlight span.ld,
-div.highlight span.s,
-div.highlight span.sa,
-div.highlight span.sb,
-div.highlight span.sc,
-div.highlight span.dl,
-div.highlight span.sd,
-div.highlight span.s2,
-div.highlight span.sh,
-div.highlight span.si,
-div.highlight span.sx,
-div.highlight span.sr,
-div.highlight span.s1,
-div.highlight span.ss {
- color: #c17005;
-}
-div.highlight span.c,
-div.highlight span.ch,
-div.highlight span.cm,
-div.highlight span.c1,
-div.highlight span.cs,
-div.highlight span.cp,
-div.highlight span.cpf {
- color: #6b6859;
-}
-div.highlight span.ge {
- font-style: italic;
-}
-div.highlight span.gs {
- font-weight: bold;
-}