@font-face { font-family: Montserrat; /* declare weights giving two values to specify a range */ font-weight: 400 800; src: url(/static/fonts/Montserrat-VariableFont_wght.ttf); } @font-face { font-family: Montserrat; /* declare weights giving two values to specify a range */ font-weight: 400 800; font-style: italic; src: url(/static/fonts/Montserrat-Italic-VariableFont_wght.ttf); } @font-face { font-family: Proto; /* declare weights giving two values to specify a range */ font-weight: 400 800; src: url(/static/fonts/0xProto-Regular.ttf); } * { font-family: Montserrat, sans-serif; margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; font-weight: 500; } .title { position: sticky; top:0; background-color: white; } html { scroll-behavior: smooth; } .container { position: relative; /* margin: 0 auto; */ padding: 0; display: flex; } .sidebar { width: 390px; float: left; } body, .content, .container { box-sizing: border-box; } body, .container { height: 100%; } .content { width: 800px; } .sidebar { box-sizing: border-box; border-right: 1px solid #DDD; height: 100%; } .scroll { height: 100%; width: 100%; overflow-y: scroll } article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; } body { line-height: 1; } ol, ul { list-style: none; } blockquote, q { quotes: none; } blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; } table { border-collapse: collapse; border-spacing: 0; } body { background: #fff; font: 14px/21px Montserrat; color: #444; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; } h1, h2, h3, h4, h5, h6 { color: #181818; font-family: Montserrat, sans-serif; font-weight: normal; } h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; } h1 { font-size: 46px; line-height: 50px; margin-bottom: 14px; } h2 { font-size: 35px; line-height: 40px; margin-bottom: 10px; } h3 { font-size: 28px; line-height: 34px; margin-bottom: 8px; } h4 { font-size: 21px; line-height: 30px; margin-bottom: 4px; } h5 { font-size: 17px; line-height: 24px; } h6 { font-size: 14px; line-height: 21px; } .subheader { color: #777; } p { margin: 0 0 20px 0; } p img { margin: 0; } p.lead { font-size: 21px; line-height: 27px; color: #777; } em { font-style: italic; } strong { font-weight: bold; color: #333; } small { font-size: 80%; } blockquote, blockquote p { font-size: 17px; line-height: 24px; color: #777; font-style: italic; } blockquote { margin: 0px; padding: 0px 20px 0 15px; border-left: 2px solid #ddd; } blockquote cite { display: block; font-size: 12px; color: #555; } blockquote cite:before { content: "\2014 \0020"; } blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #0060ad; } hr { border: solid #ddd; border-width: 1px 0 0; clear: both; margin: 10px 0 30px; height: 0; } a, a:visited { color: #333; text-decoration: underline; outline: 0; } a:hover, a:focus { color: #000; } p a, p a:visited { line-height: inherit; } ul, ol { margin-bottom: 20px; } ul { list-style: none outside; } ol { list-style: decimal; } ol, ul.square, ul.circle, ul.disc { margin-left: 30px; } ul.square { list-style: square outside; } ul.circle { list-style: circle outside; } ul.disc { list-style: disc outside; } ul ul, ul ol, ol ol, ol ul { margin: 4px 0 5px 30px; font-size: 90%; } ul ul li, ul ol li, ol ol li, ol ul li { margin-bottom: 6px; } li { line-height: 18px; margin-bottom: 12px; } ul.large li { line-height: 21px; } li p { line-height: 21px; } img.scale-with-grid { max-width: 100%; height: auto; } ul.tabs { display: block; margin: 0 0 20px 0; padding: 0; border-bottom: solid 1px #ddd; } ul.tabs li { display: block; width: auto; height: 30px; padding: 0; float: left; margin-bottom: 0; } ul.tabs li a { display: block; text-decoration: none; width: auto; height: 29px; padding: 0px 20px; line-height: 30px; border: solid 1px #ddd; border-width: 1px 1px 0 0; margin: 0; background: #f5f5f5; font-size: 13px; } ul.tabs li a.active { background: #fff; height: 30px; position: relative; top: -4px; padding-top: 4px; border-left-width: 1px; margin: 0 0 0 -1px; color: #111; } ul.tabs-content { margin: 0; display: block; } ul.tabs-content>li { display: none; } ul.tabs-content>li.active { display: block; } ul.tabs:before, ul.tabs:after { content: '\0020'; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; } ul.tabs:after { clear: both; } ul.tabs { zoom: 1; } label span, legend span { font-weight: normal; font-size: 13px; color: #444; } thead { border-bottom: solid #0060ad; font-weight: bold; color: #0060ad; } thead th { padding-left: 20px; padding-right: 20px; padding-top: 5px; padding-bottom: 0px; } tbody td { padding: 5px; } table { margin-left: auto; margin-right: auto; } html, body { height: 100%; } body { font-size: 16px; background-color: white; color: #222222; line-height: 24px; margin: 0; border-top: 7px solid #0060ad; } h1, h2, h3, h4, h5, h6 { color: #181818; font-family: Montserrat, sans-serif; font-weight: 600; } h1.title { font-weight: 800; } h1 { font-size: 32px; line-height: 40px; } h2 { font-size: 24px; line-height: 30px; } h3 { font-size: 21px; line-height: 24px; margin: 1em 0; } ul { margin: 1em 0; list-style: disc; } a { color: #0060ad; text-decoration: none; } a:hover { color: #0060ad; text-decoration: underline; } a:visited { color: #0060ad; } table { font-size: inherit; font: 100%; } img { display: block; margin-left: auto; margin-right: auto; } .posts { padding: 20px; } ul.posts { margin-top: 0; list-style-type: none; margin-bottom: 10px; } ul.posts li { line-height: 22px; font-size: 16px; margin-bottom: 0px; } ul.posts span { font-family: 'Proto', monospace; color: #aaa; padding-right: 5px; font-size: 14px; } .site .footer { font-size: 80%; color: #666; border-top: 4px solid #eee; overflow: hidden; } nav h1, nav h2 { text-align: center; } #post pre { border: 0px solid #ddd; background-color: #005fad06 !important; padding: 0 .4em; margin-bottom: 20px !important; border-color: #005fad43 !important; } #post ul, #post ol { margin-left: 1.35em; } #post code { border: 1px solid #ddd; background-color: #eef; font-size: 85%; padding: 0 .2em; } #post pre code { border: none; } .sidebar { padding-top: 25px; font-family: Montserrat, sans-serif; } .sidebar p { font-weight: 200; } .sidebar a { font-weight: 600; } text { font: 500 12px/22px Montserrat, sans-serif; } /* path, rect { stroke: red; } */ g { font: 500 12px/22px Montserrat, sans-serif; } /* stroke-width="2" */ .content { font: 400 16px/22px Montserrat, sans-serif; padding-left: 40px; padding-top: 25px; min-height: 400px; } #home h2 { color: #0060ad; } #post pre { background-color: white; border-left: 12px solid #eee; padding: 0 .8em; } #post code { background-color: transparent; } #stalker { float: inherit; } .disclaimer { color: #aaa; font-weight: 700; font-size: smaller; text-align: center; padding-top: 40px; padding-bottom: 10px; } .highlight { background-color: white; color: #586e75; font-weight: bold; } .highlight .c { color: #586e75 !important; font-style: italic !important } p:has(img) { background-color: #005fad06; border-left: 12px solid #005fad43; } p > img { display: block; margin: 0 auto; padding-top: 12px; padding-bottom: 12px; } p:has(svg) { background-color: #005fad06; border-left: 12px solid #005fad43; } p > svg { display: block; margin: 0 auto; padding-top: 12px; padding-bottom: 12px; } pre { white-space: pre; overflow: auto; } code, pre { font-family: 'Proto', monospace; } .hljs { padding: 0px !important; }