","../../../_main-nav.scss","../../../_mixins.scss","../../../_back-to-top.scss","../../../_footer.scss","../../../_code-blocks.scss","../../../styles.scss"],"names":[],"mappings":"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","file":"styles.min.css","sourcesContent":["@charset \"UTF-8\";\n:root {\n --header-font: \"Gill Sans\", \"Gill Sans MT\", Calibri, sans-serif;\n --body-font: \"Open Sans\", \"Helvetica Neue\", Verdana, sans-serif;\n --code-font: Consolas, monaco, monospace;\n --max-width: 1100px;\n --x-bold-font: 600;\n --bold-font: 500;\n --medium-font: 300;\n --light-font: 250;\n --2xl-font: clamp(30pt, 9.375vw, 35pt);\n --xl-font: clamp(25pt, 7.8125vw, 30pt);\n --l-font: clamp(20pt, 6.25vw, 25pt);\n --m-font: clamp(16pt, 5vw, 18pt);\n --s-font: clamp(13pt, 4.0625vw, 15pt);\n --xs-font: clamp(10pt, 3.125vw, 14pt);\n --2xs-font: clamp(8pt, 3.125vw, 12pt);\n --l-line-height: calc(var(--2xl-font) * 1);\n --m-line-height: calc(var(--s-font) * 1.75);\n --s-line-height: calc(var(--s-font) * 1.25);\n --line-length: 70ch;\n --key: #0A6276;\n --key-light: #5FCAF2;\n --gray-darkest: #030303;\n --gray-darker: #0F2124;\n --gray-lightest: #FCFDFD;\n --red: #B91C00;\n --red-light: #F77E68;\n --green: #0D7220;\n --green-light: #83F598;\n --background-color: var(--gray-lightest);\n --vw-0: 0vw;\n --0-spacer: 0;\n --xl-spacer: 4rem;\n --l-spacer: 2rem;\n --m-spacer: 1rem;\n --s-spacer: 0.75rem;\n --xs-spacer: 0.5rem;\n --2xs-spacer: 0.25rem;\n --3xs-spacer: 0.1rem;\n --1-px: 1px;\n --2-px: 2px;\n --3-px: 3px;\n --400-px: 400px;\n --icon-new-window: \"⧉\";\n --icon-increase: \"◭\";\n --icon-decrease: \"⧩\";\n --icon-hold: \"≅\";\n --icon-lift-spacer: -0.5rem;\n --icon-lift-spacer-2: -0.15rem;\n --margin-centered: var(--0-spacer) var(--auto);\n --smooth: smooth;\n --auto: auto;\n --pointer: pointer;\n --none: none;\n --transition-color: color 0.25s;\n --center: center;\n --left: left;\n --solid: solid;\n --dashed: dashed;\n --transparent: transparent;\n --relative: relative;\n --absolute: absolute;\n --italic: italic;\n --inline-block: inline-block;\n --block: block;\n --both: both;\n --hidden: hidden;\n --scroll: scroll;\n --wavy: wavy;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-top: var(--l-spacer);\n margin-bottom: var(--xs-spacer);\n font-family: var(--head-font);\n font-size: clamp(30pt, 9.375vw, 35pt);\n line-height: var(--l-line-height);\n}\nh1 + ol, h1 + ul, h1 + p,\nh2 + ol,\nh2 + ul,\nh2 + p,\nh3 + ol,\nh3 + ul,\nh3 + p,\nh4 + ol,\nh4 + ul,\nh4 + p,\nh5 + ol,\nh5 + ul,\nh5 + p,\nh6 + ol,\nh6 + ul,\nh6 + p {\n margin-top: var(--0-spacer);\n padding-top: var(--0-spacer);\n}\n\nh1 {\n margin-top: var(--m-spacer);\n}\n\nh2 {\n font-size: var(--xl-font);\n}\n\nh3,\nh4,\nh5,\nh6 {\n font-size: var(--l-font);\n text-align: var(--center);\n}\n\ncode {\n font-family: var(--code-font);\n font-size: var(--xs-font);\n}\n\npre {\n overflow-y: var(--scroll);\n -ms-overflow-style: var(--none); /* IE and Edge */\n scrollbar-width: var(--none); /* Firefox */\n}\npre::-webkit-scrollbar {\n display: var(--none);\n}\n\nblockquote {\n margin: var(--m-spacer);\n font-style: var(--italic);\n}\n\na:hover {\n cursor: var(--pointer);\n}\n\na {\n font-weight: var(--bold-font);\n text-decoration-color: var(--key);\n text-decoration-thickness: var(--2-px);\n text-underline-offset: var(--2-px);\n color: var(--key);\n transition: var(--transition-color);\n}\na:hover {\n color: var(--gray-darker);\n}\n\na[rel~=noreferrer]:after {\n content: var(--icon-new-window);\n display: var(--inline-block);\n margin-left: var(--2xs-spacer);\n position: var(--relative);\n top: var(--icon-lift-spacer);\n font-size: var(--xs-font);\n}\n\nkbd {\n font-size: var(--2xs-font);\n}\n\nkbd.single,\nkbd > kbd {\n padding: var(--0-spacer) var(--3-px);\n font-weight: var(--light-font);\n font-family: var(--code-font);\n font-size: var(--xs-font);\n display: var(--inline-block);\n border-radius: var(--3-px);\n border: var(--1-px) var(--solid) var(--gray-darkest);\n}\n\na#skip-nav {\n display: block;\n position: absolute;\n top: -10rem;\n}\n\nnav[is=main-nav] {\n background-color: var(--background-color);\n}\nnav[is=main-nav] > ul {\n max-width: 1100px;\n margin: var(--margin-centered);\n padding: 0;\n display: grid;\n list-style: none;\n}\nnav[is=main-nav] > ul.col-5 {\n grid-template-columns: 6ch auto auto auto auto;\n}\nnav[is=main-nav] > ul > li {\n margin: 0;\n padding: 0;\n}\nnav[is=main-nav] > ul > li > a {\n text-decoration: none;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n min-height: 44pt;\n color: #000000;\n background-position: center center;\n background-size: auto 20pt;\n background-repeat: no-repeat;\n transition: transform 0.2s ease-in-out;\n font-family: var(--font-header);\n font-size: var(--xs-font);\n}\nnav[is=main-nav] > ul > li > a > span:nth-of-type(1) {\n display: none;\n}\nnav[is=main-nav] > ul > li > a > span:nth-of-type(2) {\n display: inline;\n}\n@media screen and (min-width: 800px) {\n nav[is=main-nav] > ul > li > a > span {\n position: relative;\n left: 0;\n right: 0;\n }\n nav[is=main-nav] > ul > li > a > span:nth-of-type(1) {\n display: inline;\n }\n nav[is=main-nav] > ul > li > a > span:nth-of-type(2) {\n display: none;\n }\n}\nnav[is=main-nav] > ul > li > a:hover:not(.current) {\n transform: scale(1.1, 1.1);\n}\nnav[is=main-nav] > ul > li > a.current {\n background-color: var(--key);\n color: var(--gray-lightest);\n}\n\n@media (prefers-color-scheme: dark) {\n nav[is=main-nav] > ul > li > a {\n color: var(--gray-lightest);\n }\n nav[is=main-nav] {\n background-color: var(--gray-darkest);\n }\n}\na#back-to-top {\n display: flex;\n height: 44pt;\n width: 50vw;\n justify-content: center;\n align-items: center;\n background-color: var(--background-color);\n position: fixed;\n top: calc(100vh - 44pt);\n left: 49.5vw;\n text-decoration: none;\n}\n@media screen and (min-width: 800px) {\n a#back-to-top {\n width: 100vw;\n left: 0;\n }\n}\na#back-to-top > span {\n display: block;\n max-width: var(--max-width);\n}\na#back-to-top > span:before {\n display: var(--inline-block);\n content: var(--icon-increase);\n position: var(--relative);\n right: var(--xs-spacer);\n}\na#back-to-top > span:after {\n display: var(--inline-block);\n content: var(--icon-increase);\n position: var(--relative);\n left: var(--xs-spacer);\n}\n\n@media (prefers-color-scheme: dark) {\n a#back-to-top {\n background-color: var(--gray-darkest);\n }\n}\nfooter {\n padding-top: 40pt;\n padding-bottom: 60pt;\n text-align: center;\n font-size: var(--xs-font);\n line-height: 1.5rem;\n}\nfooter > ul {\n display: block;\n margin: var(--m-spacer) auto;\n padding: var(--0-spacer);\n list-style: none;\n}\nfooter > ul > li {\n display: inline-block;\n}\nfooter > ul > li > a {\n margin-right: 1rem;\n text-decoration: none;\n}\nfooter > ul > li > a:last-of-type {\n margin-left: 1rem;\n}\nfooter > ul > li:after {\n content: \"|\";\n}\nfooter > ul > li:last-of-type:after {\n content: \"\";\n}\nfooter > p {\n margin: 0;\n}\n\n.shiki {\n padding: 1rem;\n border-radius: 0.5rem;\n}\n\n.shiki.focus .line:not(.focus) {\n transition: all 0.3s ease-in;\n filter: saturate(0) blur(1px);\n}\n\n.shiki.focus:hover .line {\n transition: all 0.3 ease-out;\n filter: saturate(0.7) blur(0);\n}\n\nhtml {\n scroll-padding-top: 44pt;\n}\n@media screen and (min-width: 800px) {\n html {\n scroll-padding-top: 55pt;\n }\n}\n\nbody {\n min-height: var(--vw-0);\n max-width: var(--line-length);\n margin: var(--margin-centered);\n background: var(--gray-lightest);\n color: var(--gray-darkest);\n font-family: var(--body-font);\n font-size: var(--m-font);\n line-height: var(--m-line-height);\n font-weight: var(--light-font);\n margin-bottom: 66pt;\n}\n\n[is=dateblock] {\n margin-bottom: var(--l-spacer);\n}\n[is=dateblock] p {\n margin: var(--0-spacer);\n font-size: var(--xs-font);\n}\n[is=dateblock] p > time {\n font-weight: var(--bold-font);\n}\n\ndiv[is=heading-wrapper] {\n display: flex;\n flex-direction: column-reverse;\n}\ndiv[is=heading-wrapper] > a {\n display: block;\n text-align: center;\n}\ndiv[is=heading-wrapper] > a > span:nth-of-type(1):before, div[is=heading-wrapper] > a > span:nth-of-type(1):after {\n display: inline-block;\n margin: var(--0-spacer) var(--m-spacer);\n content: \"#\";\n font-size: var(--2xs-font);\n position: relative;\n top: var(--3-px);\n}\ndiv[is=heading-wrapper] > a > span:nth-of-type(2) {\n clip: rect(1px, 1px, 1px, 1px) !important;\n border-width: 0 !important;\n height: 1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n white-space: nowrap !important;\n width: 1px !important;\n}\n\nhr {\n width: 33%;\n border: var(--2-px) var(--solid) var(--gray-darkest);\n border-radius: var(--1-px);\n}\n\n.toc {\n padding: var(--none);\n list-style: var(--none);\n}\n.toc li {\n border-bottom: var(--1-px) var(--solid) var(--gray-darker);\n}\n.toc li:last-child {\n border-bottom: var(--none);\n}\n.toc h3 {\n margin: var(--xs-spacer);\n text-align: var(--left);\n font-size: var(--l-font);\n}\n.toc h3 a {\n display: var(--block);\n padding: var(--m-spacer);\n}\n.toc h3 small {\n font-size: var(--s-font);\n display: var(--block);\n color: var(--gray-darker);\n font-weight: var(--light-font);\n}\n\nmain, article {\n padding: var(--0-spacer) var(--m-spacer);\n padding-top: var(--m-spacer);\n}\nmain img,\nmain iframe[src*=\"https://jsfiddle.net\"], article img,\narticle iframe[src*=\"https://jsfiddle.net\"] {\n display: var(--block);\n margin: var(--margin-centered);\n width: 80%;\n border: var(--3-px) var(--solid) var(--gray-darker);\n}\nmain iframe[src*=\"https://jsfiddle.net\"], article iframe[src*=\"https://jsfiddle.net\"] {\n min-height: 300px;\n}\nmain abbr, article abbr {\n text-decoration: var(--none);\n border-bottom: var(--1-px) var(--dashed) var(--gray-darker);\n}\nmain dl > dt, article dl > dt {\n margin-top: var(--m-spacer);\n}\nmain dl > dd, article dl > dd {\n margin-bottom: var(--s-spacer);\n}\nmain details, article details {\n border: var(--1-px) var(--solid) var(--key);\n border-radius: var(--3-px);\n margin-top: var(--m-spacer);\n padding: 0.5em 0.5em 0;\n}\nmain details summary, article details summary {\n font-weight: var(--bold-font);\n color: var(--key);\n cursor: var(--pointer);\n margin: -0.5em -0.5em 0;\n padding: 0.5em;\n}\nmain details + [is=heading-wrapper], article details + [is=heading-wrapper] {\n margin-top: var(--xl-spacer);\n}\n\n/*\nnav > ul {\n margin: var(--0-spacer);\n padding: var(--0-spacer);\n list-style: var(--none);\n\n > li {\n margin-top: var(--m-spacer);\n }\n\n > li:first-of-type {\n margin-bottom: var(--m-spacer);\n }\n\n & ul {\n list-style: var(--none);\n margin: var(--0-spacer) var(--0-spacer);\n padding: var(--0-spacer) var(--0-spacer);\n & a {\n font-size: var(--s-font);\n }\n\n li:last-of-type a {\n padding-bottom: var(--s-spacer);\n }\n }\n\n & a {\n display: var(--block);\n overflow: var(--hidden);\n text-align: var(--center);\n position: var(--relative);\n }\n\n abbr {\n border-color: var(--gray-lightest);\n }\n}\n*/\nul[is=data-list] {\n margin: 0;\n padding: 0;\n list-style: none;\n}\nul[is=data-list] > li {\n margin-bottom: var(--m-spacer);\n border-radius: var(--3-px);\n border-style: var(--solid);\n border-width: var(--1-px);\n border-color: var(--key);\n padding: var(--xs-spacer);\n color: var(--key);\n text-align: var(--center);\n}\nul[is=data-list] > li span:nth-of-type(1) {\n font-weight: var(--bold-font);\n font-size: var(--s-font);\n}\nul[is=data-list] > li span:nth-of-type(2) {\n position: absolute;\n left: -9999px;\n}\nul[is=data-list] > li > ul {\n margin: 0;\n padding: 0;\n list-style: none;\n text-align: left;\n display: grid;\n grid-template-areas: \"c c\" \"min max\" \"meter meter\";\n}\nul[is=data-list] > li > ul > li:nth-of-type(1) {\n margin: var(--m-spacer);\n grid-area: c;\n font-weight: var(--bold-font);\n font-size: var(--l-font);\n text-align: var(--center);\n}\nul[is=data-list] > li > ul > li:nth-of-type(1):after {\n display: var(--inline-block);\n position: var(--relative);\n top: var(--icon-lift-spacer-2);\n margin-left: var(--s-spacer);\n}\nul[is=data-list] > li > ul > li:nth-of-type(1) > b {\n position: absolute;\n left: -9999px;\n}\nul[is=data-list] > li > ul > li:nth-of-type(2), ul[is=data-list] > li > ul > li:nth-of-type(3) {\n text-align: var(--center);\n font-size: var(--xs-font);\n}\nul[is=data-list] > li > ul > li:nth-of-type(2) {\n grid-area: min;\n}\nul[is=data-list] > li > ul > li:nth-of-type(3) {\n grid-area: max;\n}\nul[is=data-list] > li > ul > li:nth-of-type(4) {\n grid-area: meter;\n}\nul[is=data-list] > li > ul > li:nth-of-type(4) meter {\n display: block;\n width: 100%;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\nul[is=data-list] > li[data-icon=hold] > ul > li:nth-of-type(1):after {\n content: var(--icon-hold);\n}\nul[is=data-list] > li[data-icon=increase] {\n color: var(--green);\n border-color: var(--green);\n}\nul[is=data-list] > li[data-icon=increase] > ul > li:nth-of-type(1):after {\n content: var(--icon-increase);\n}\nul[is=data-list] > li[data-icon=decrease] {\n color: var(--red);\n border-color: var(--red);\n}\nul[is=data-list] > li[data-icon=decrease] > ul > li:nth-of-type(1):after {\n content: var(--icon-decrease);\n}\n\n@media (prefers-reduced-motion: no-preference) {\n html {\n scroll-behavior: var(--smooth);\n }\n}\n@media (prefers-color-scheme: dark) {\n body {\n background: var(--gray-darkest);\n color: var(--gray-lightest);\n font-weight: var(--medium-font);\n }\n hr {\n border: 1px solid var(--gray-lightest);\n }\n a {\n color: var(--key-light);\n text-decoration-color: var(--key-light);\n font-weight: var(--x-bold-font);\n }\n a:hover {\n color: var(--gray-lightest);\n }\n [is=dateblock] p > time, b, strong {\n font-weight: var(--x-bold-font);\n }\n nav > ul a:after {\n border-top: var(--1-px) var(--solid) var(--gray-lightest);\n }\n main img,\n main iframe[src*=\"https://jsfiddle.net\"], article img,\n article iframe[src*=\"https://jsfiddle.net\"] {\n border: 3px solid var(--gray-lightest);\n }\n main details summary, article details summary {\n color: var(--key-light);\n }\n ul[is=data-list] > li[data-icon=hold] {\n border-color: var(--key-light);\n color: var(--key-light);\n }\n ul[is=data-list] > li[data-icon=increase] {\n color: var(--green-light);\n border-color: var(--green-light);\n }\n ul[is=data-list] > li[data-icon=decrease] {\n color: var(--red-light);\n border-color: var(--red-light);\n }\n kbd > kbd {\n border: var(--1-px) var(--solid) var(--gray-lightest);\n }\n}\ndiv[is=heading-wrapper] > a {\n text-decoration: none;\n}\n\n@media only screen and (min-width: 600px) {\n ul[is=data-list] {\n display: grid;\n gap: var(--m-spacer);\n grid-template-columns: repeat(3, 1fr);\n }\n ul[is=data-list] > li {\n margin-bottom: var(--0-spacer);\n }\n ul[is=data-list] > li:nth-of-type(3), ul[is=data-list] > li:nth-of-type(5) {\n grid-column-start: 1;\n }\n}\n.heading-permalink {\n display: var(--inline-block);\n margin-right: var(--2xs-spacer);\n}\n\n.notice {\n font-size: var(--xs-font);\n}\n\n/*# sourceMappingURL=file:///Users/alex/Public/joshbruce/site-joshbruce.com/src/assets/sass/styles.scss */",null,null,null,null,null,null,null,null,null]}
\ No newline at end of file
diff --git a/site-root/public/error-404.html b/site-root/public/error-404.html
new file mode 100644
index 0000000..f14af10
--- /dev/null
+++ b/site-root/public/error-404.html
@@ -0,0 +1,104 @@
+
+
+
+ Page not found error
+
+
+
+
+
+
+ 404 : Page not found
+ Woh!
+ Not sure how to find that. Maybe start on the main page .
+ If this error persists, please contact Josh Bruce .
+
+
+
diff --git a/site-root/public/error-405.html b/site-root/public/error-405.html
new file mode 100644
index 0000000..27b667c
--- /dev/null
+++ b/site-root/public/error-405.html
@@ -0,0 +1,104 @@
+
+
+
+ Page not found error
+
+
+
+
+
+
+ 405 : Unsupported method
+ Woh!
+ Donʼt know how to handle that type of request, please try something else.
+ If this error persists, please contact Josh Bruce .
+
+
+
diff --git a/site-root/public/error-500.html b/site-root/public/error-500.html
new file mode 100644
index 0000000..b8b6da1
--- /dev/null
+++ b/site-root/public/error-500.html
@@ -0,0 +1,104 @@
+
+
+
+ Server error
+
+
+
+
+
+
+ 500 : Internal server error
+ Not sure what happened here but weʼre pretty sure itʼs on us.
+ Please try again later.
+ If this error persists, please contact Josh Bruce .
+
+
+
diff --git a/site-root/public/index.html b/site-root/public/index.html
new file mode 100644
index 0000000..65ab189
--- /dev/null
+++ b/site-root/public/index.html
@@ -0,0 +1,45 @@
+
+
+
+ Calling card for Josh Bruce
+
+
+
+
+
+
+
+ Josh Bruceʼs calling card site
+ Hi! Iʼm me. You are you.
+
+ You can usually find me here…
+
+
+ You can follow me on…
+
+
+ You used to be able to find and follow me on…
+
+
+ Note: If itʼs not on this list, chances arenʼt it isnʼt me. If you find something you think is me, let me know via GitHub Discussions for this site or at one of the (active) accounts above. Iʼve been online for a while and might have lost track; itʼs like a treasure hunt!
+
+
diff --git a/site-root/public/robots.txt b/site-root/public/robots.txt
new file mode 100644
index 0000000..2b77c89
--- /dev/null
+++ b/site-root/public/robots.txt
@@ -0,0 +1,25 @@
+User-agent: *
+Disallow: /
+
+User-agent: Bingbot
+Disallow:
+
+User-agent: DuckDuckBot
+Disallow:
+
+User-agent: Exabot
+Disallow:
+
+User-agent: Googlebot
+Disallow:
+
+User-agent: Googlebot-Image
+Disallow:
+
+User-agent: ia_archiver
+Disallow:
+
+User-agent: archive.org_bot
+Disallow:
+
+Sitemap: https://joshbruce.com/sitemap.xml