body{margin:0;padding:0;background-image:url("/theme/white-waves-transparent.png")}main,#footer_inner,#nav_inner{max-width:750px;padding-left:calc(20px + env(safe-area-inset-left));padding-right:calc(20px + env(safe-area-inset-right))}#nav_inner{padding-top:calc(1px + env(safe-area-inset-top))}article,main,#footer_inner{padding-top:1px}#nav_inner,article,main{padding-bottom:1px}#footer_inner{padding-bottom:calc(1px + env(safe-area-inset-bottom))}img,video,svg,iframe,figure,article,main,#footer_inner,#nav_inner{margin-left:auto;margin-right:auto}img.screenshot{border:3px solid #f0f0f0;border-radius:8px}article,main{padding-top:3px;padding-bottom:2em}.dot_list{list-style-type:none;padding-left:0px !important}.dot_list li{display:inline}.dot_list li:not(:first-child)::before{content:" · "}hr{background-color:#f0f0f0;height:1px;border:0px}img,video,figure{max-width:100%;display:block}iframe{display:block}body{font:13pt Georgia,Palatino,"Palatino Linotype",Times,"Times New Roman",serif;line-height:1.5em;color:#202020}a{color:#17823e}a:hover{background:rgba(23,130,62,0.2)}a:visited:not(.novisited){color:#0c411f}a:visited:not(.novisited):hover{background:rgba(12,65,31,0.2)}h1,h2,h3{font-weight:normal}h1,h2{color:#17823e}h1{font-size:2em}h2{margin-top:2em;font-size:1.6em;line-height:1.5em;margin-bottom:0}blockquote{border-left:3px solid #ccc;background-color:rgba(182,182,182,0.09);margin-left:20px;margin-right:20px;padding:1px 17px}blockquote:not(.update) p:not(.text),blockquote li{font-style:italic}@media print{blockquote{color:#202020}}blockquote pre{border-color:#aaa}blockquote em{font-style:normal}@media screen and (max-width: 810px){blockquote{margin-left:0px}}sup,sub{vertical-align:0ex;position:relative}sub{top:0.8ex}sup{bottom:1ex}.footnotes{font-size:.95em;line-height:1.425em}.title{font-size:1.9em;line-height:1.45em;margin-bottom:-6px}.title a{text-decoration:none}.title.linkpost_title{font-size:1.17em;line-height:1.35em;padding-top:12px}.title.linkpost_title a{text-decoration:underline}.title.linkpost_title::after{content:"→";color:#999}.title a:visited{color:#17823e}h2:hover>a.anchor,h3:hover>a.anchor{display:inline-block}a.anchor{display:none;text-decoration:none}a.anchor::after{content:"¶"}a.anchor,a.anchor:visited{color:#999}.visually-hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}a.skip-main{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:-999}nav{background:url("/headers/specktre_17823e.png") #17823e;background-size:auto 100%}@media print{nav{background:none;border-bottom:2px solid #17823e}}nav #nav_inner{color:white}@media print{nav #nav_inner{color:#17823e}}nav #nav_inner a,nav #nav_inner a:visited{color:#fff}nav #nav_inner a:hover,nav #nav_inner a:visited:hover{background:rgba(255,255,255,0.5)}@media print{nav #nav_inner a,nav #nav_inner a:visited{color:#17823e}}nav #nav_inner h1{margin-bottom:-5px;font-weight:normal;font-size:1.7em}nav #nav_inner h1 a{text-decoration:none}nav #nav_inner ul{padding-top:0px;padding-bottom:0px;margin-bottom:10px}footer{border-top:1px solid #f0f0f0;padding-top:15px;padding-bottom:15px}@media print{footer{display:none}}#footer_inner{font-size:.82em;color:#999}#footer_inner a,#footer_inner a:visited{color:#999}#footer_inner a:hover,#footer_inner a:visited:hover{background:rgba(153,153,153,0.2)}#footer_inner p:not(:last-child){margin-bottom:0px}#footer_inner p:not(:first-child){margin-top:0px}#footer_inner #footer__email:hover{color:#17823e}#footer_inner #footer__twitter:hover{color:#55acee}#footer_inner #footer__about:hover{color:#17823e}#footer_inner #footer__licence:hover{color:black}.separator{margin:1.5em;color:#f0f0f0;text-align:center;font-size:2em}@media print{.separator{display:none}}.separator+h2{margin-top:0em}.archive{margin-top:1.2em}.archive .archive__date{width:68px;font-size:0.85em;color:#999;text-align:right;vertical-align:top}.archive .archive__bestof{padding-left:5px;padding-right:5px;width:12px;vertical-align:top}.archive .archive__bestof img{width:12px;display:inline-block}#tag--python{line-height:110%}#tag_cloud{text-align:justify;list-style-type:none;padding-left:0px !important}#tag_cloud li{display:inline}.post__meta,.page__meta{line-height:1.45em;font-size:.82em}.post__meta,.post__meta a,.post__meta a:visited,.page__meta,.page__meta a,.page__meta a:visited{color:#999}@media print{.post__meta,.post__meta a,.post__meta a:visited,.page__meta,.page__meta a,.page__meta a:visited{color:#202020}}.post__meta a:hover,.page__meta a:hover{background:rgba(153,153,153,0.2)}.post__meta .post__permalink a,.post__meta .post__permalink a:visited,.page__meta .post__permalink a,.page__meta .post__permalink a:visited{color:#17823e}.slide{width:450px;margin-left:auto;margin-right:auto}@media screen and (min-width: 790px){.slide{max-width:60%}}.talks{list-style-type:none;padding-left:0px !important;margin-bottom:1.2em}.talks li{margin-bottom:1em}.talks .talk__title .talk__new{font-weight:bold}.talks .talk__date{width:60px;float:left;display:inline-block;text-align:right}.talks .talk__description{margin-left:75px}.talks .talk__description figure{width:400px;margin-left:0}code,pre{background-color:rgba(182,182,182,0.09);font-family:Menlo,Consolas,monospace;overflow-x:auto}pre code{background:none}code{margin:2px;padding:3px 3px;font-size:.88em}code .rustc_error{font-weight:bold;color:#d01c11}code .rustc_warning{color:#11d01c}code .rustc_value{color:#d0a311}code .rustc_lineno{color:#6871ff}.language-console .gp,.language-console .gp+.w{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}pre{padding:10px 17px;line-height:1.4256em;border-left:3px solid rgba(153,153,153,0.6);margin-left:20px;margin-right:20px;-webkit-text-size-adjust:100%}@media screen and (max-width: 810px){pre{margin-left:0px;margin-right:0px}}pre code{margin:0px;padding-left:0px}.highlight{hanging-punctuation:none}figure.highlight>pre,figure.highlight>pre>code{background:none;border-left:none;padding:0px}figure.highlight>pre{font-size:1em}figure.highlight td{margin:0px;padding:0px}figure.highlight td pre{margin-top:0px;margin-bottom:0px}figure.highlight pre.lineno{color:#999;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}figure.highlight td.code{width:100%}figure.highlight td.code pre{border-left:none}pre .hll{background-color:#ffffcc}pre .c{color:#408080;font-style:italic}pre .err{border:1px solid #FF0000}pre .k{color:#008000;font-weight:bold}pre .o{color:#666666}pre .ch{color:#408080;font-style:italic}pre .cm{color:#408080;font-style:italic}pre .cp{color:#BC7A00}pre .cpf{color:#408080;font-style:italic}pre .c1{color:#408080;font-style:italic}pre .cs{color:#408080;font-style:italic}pre .gd{color:#A00000}pre .ge{font-style:italic}pre .gr{color:#FF0000}pre .gh{color:#000080;font-weight:bold}pre .gi{color:#00A000}pre .go{color:#888888}pre .gp{color:#000080;font-weight:bold}pre .gs{font-weight:bold}pre .gu{color:#800080;font-weight:bold}pre .gt{color:#0044DD}pre .kc{color:#008000;font-weight:bold}pre .kd{color:#008000;font-weight:bold}pre .kn{color:#008000;font-weight:bold}pre .kp{color:#008000}pre .kr{color:#008000;font-weight:bold}pre .kt{color:#B00040}pre .m{color:#666666}pre .s{color:#BA2121}pre .na{color:#7D9029}pre .nb{color:#008000}pre .nc{color:#0000FF;font-weight:bold}pre .no{color:#880000}pre .nd{color:#AA22FF}pre .ni{color:#999999;font-weight:bold}pre .ne{color:#D2413A;font-weight:bold}pre .nf{color:#0000FF}pre .nl{color:#A0A000}pre .nn{color:#0000FF;font-weight:bold}pre .nt{color:#008000;font-weight:bold}pre .nv{color:#19177C}pre .ow{color:#AA22FF;font-weight:bold}pre .w{color:#bbbbbb}pre .mb{color:#666666}pre .mf{color:#666666}pre .mh{color:#666666}pre .mi{color:#666666}pre .mo{color:#666666}pre .sa{color:#BA2121}pre .sb{color:#BA2121}pre .sc{color:#BA2121}pre .dl{color:#BA2121}pre .sd{color:#BA2121;font-style:italic}pre .s2{color:#BA2121}pre .se{color:#BB6622;font-weight:bold}pre .sh{color:#BA2121}pre .si{color:#BB6688;font-weight:bold}pre .sx{color:#008000}pre .sr{color:#BB6688}pre .s1{color:#BA2121}pre .ss{color:#19177C}pre .bp{color:#008000}pre .fm{color:#0000FF}pre .vc{color:#19177C}pre .vg{color:#19177C}pre .vi{color:#19177C}pre .vm{color:#19177C}pre .il{color:#666666}@media print{pre .go{color:#555555}}.tweet{display:block;background:0 0;font:normal normal 16px/1.4 Helvetica, Roboto, "Segoe UI", Calibri, sans-serif;color:#1c2022;white-space:normal;white-space:initial;overflow:hidden;cursor:pointer;background-color:#fff;border:1px solid #e1e8ed;border-radius:4px;max-width:496px}.tweet a,.tweet a:visited,.tweet a:active{color:#2b7bb9;text-decoration:none}.tweet a:focus,.tweet a:hover{color:#3b94d9}.tweet a:focus{text-decoration:underline}.tweet a:hover{background:none}.tweet .screen_name{font-size:14px;color:#697882}.tweet .screen_name:before{white-space:pre;content:"\A"}.tweet .name{font-weight:700}.tweet .text+.metadata{margin-top:3.2px}.tweet .metadata{font-size:14px;color:#697882}.tweet .text{white-space:normal;cursor:text}.tweet .header,.tweet .body{padding:20px}.tweet .header{position:relative;padding-left:65px;padding-bottom:0px;white-space:nowrap}.tweet .header .twitter_birb{float:right}.tweet .header .twitter_birb img{height:20px}.tweet .body{margin-top:14px;padding-top:0px;padding-bottom:14px}.tweet .media{border-bottom:1px solid #e1e8ed}.tweet .author{margin-top:2px;line-height:0;max-width:100%;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;word-wrap:normal !important}.tweet .author .link{line-height:1.2}.tweet .author .avatar{position:absolute;display:inline-block;top:20px;left:20px;width:36px;height:36px;overflow:hidden;background-color:transparent;border-radius:50%}.tweet .author .avatar img{max-width:100%;max-height:100%}.tweet:hover{border-color:#ccd6dd}.tweet:hover .media{border-color:#ccd6dd}.tweet .quoted_tweet{border:1px solid #e1e8ed;border-radius:4px;margin-top:0.75em;margin-bottom:0.75em;font-size:90%;color:#1c2022}.tweet .quoted_tweet:hover{border-color:#ccd6dd}.tweet .quoted_tweet .body{margin-top:0;padding:9px;padding-top:4px}.tweet .quoted_tweet .body .text{cursor:pointer}.tweet .quoted_tweet .header{padding:9px;padding-bottom:0}.tweet .quoted_tweet .header .author{line-height:1.2em}.tweet .quoted_tweet .header .screen_name:before{content:""}.tweet .link_blend:not(:focus):not(:hover):not(:active){font-weight:inherit;color:inherit;text-decoration:inherit}.tweet .twemoji{width:1.2em;height:1.2em;display:inline;vertical-align:-20%;margin-right:0.075em;margin-left:0.075em}.tweet blockquote,.tweet p{margin:0;padding:0;list-style:none;border:none}.tweet img.media{margin-left:-20px;margin-top:-20px;margin-bottom:20px;width:calc(100% + 40px);max-width:calc(100% + 40px);border-bottom:1px solid #e1e8ed}blockquote .tweet{margin-bottom:1em}.tweet{margin-left:auto;margin-right:auto}.tweet blockquote{background:none}.update{border-color:#17823e;background:rgba(254,11,0,0.1);padding-top:1px;padding-bottom:1px}.update p,.update li{color:#202020;font-style:normal}.update p em,.update li em{font-style:italic}.tex sub,.latex sub,.latex sup{text-transform:uppercase;top:.1ex;line-height:0.1em}.tex sub,.latex sub{vertical-align:-0.5ex;margin-left:-0.1667em;margin-right:-0.125em}.tex,.latex,.tex sub,.latex sub{font-size:1em}.latex sup{font-size:.77em;vertical-align:0.25em;margin-left:-0.36em;margin-right:-0.15em}figcaption{color:#999;font-size:.82em;margin-top:8px;line-height:1.4145em}figcaption a,figcaption a:visited{color:#999 !important}figcaption a:hover,figcaption a:visited:hover{background:rgba(153,153,153,0.2) !important}@media screen and (min-width: 990px){.wide_img{max-width:calc(100% + 200px);margin-left:-100px;margin-right:-100px}.wide_img figcaption,.fullwidth_img figcaption{padding-left:calc($max-width-image-overflow / 2 + env(safe-area-inset-left));padding-right:calc($max-width-image-overflow / 2 + env(safe-area-inset-right))}}@media screen and (min-width: 790px) and (max-width: 990px){.wide_img{max-width:calc(100vw - 40px);margin-left:calc(20px + 375px - 50vw);margin-right:calc(20px + 375px - 50vw)}.wide_img figcaption,.fullwidth_img figcaption{padding-left:calc(50vw - 20px - 375px + env(safe-area-inset-left));padding-right:calc(50vw - 20px - 375px + env(safe-area-inset-right))}}@media screen and (max-width: 750px){.wide_img,.fullwidth_img{width:calc(100% + 20px * 2 + env(safe-area-inset-left, 0px) + env(safe-area-inset-right, 0px));max-width:calc(100% + 20px * 2 + env(safe-area-inset-left, 0px) + env(safe-area-inset-right, 0px));margin-left:calc(-1 * (20px + env(safe-area-inset-left,  0px)));margin-right:calc(-1 * (20px + env(safe-area-inset-right, 0px)))}.wide_img figcaption,.fullwidth_img figcaption{padding-left:calc(20px + env(safe-area-inset-left));padding-right:calc(20px + env(safe-area-inset-right))}}a.download{border:2px solid #17823e;padding:0.5em;border-radius:.5em;padding-bottom:25px;padding-top:15px;display:inline-block;padding-right:15px;text-decoration:none}@media screen and (max-width: 500px){a.download{padding-bottom:.5em;padding-top:.5em;padding-right:.5em}}a.download img{height:64px;display:inline-block;margin-left:0;margin-right:0;margin-bottom:-25px;margin-top:-5px;padding-bottom:0;padding-right:5px}@media screen and (max-width: 500px){a.download img{display:none}}.post_cards{list-style-type:none;padding-left:0px !important;display:grid;grid-gap:1em;grid-template-columns:repeat(2, minmax(0, 1fr))}.post_cards .card{border:2px solid #17823e;border-radius:14px;overflow:hidden;background:#fafafa}.post_cards .card.best_of{box-shadow:0px 0px 7px rgba(23,130,62,0.6);border-width:4px}.post_cards .card a{color:#202020;text-decoration:none;height:100%}.post_cards .card a .card_title{text-decoration:underline;color:#17823e}.post_cards .card_image{margin-top:0;margin-bottom:0}.post_cards .card_image img{aspect-ratio:2 / 1}.post_cards .card svg{max-width:100%;max-height:50%;display:block}.post_cards .card_metadata,.post_cards .card_posting_date{padding-left:1em;padding-right:1em}.post_cards .card_title{margin-top:1em;margin-bottom:0.5em}.post_cards .card_description{margin-top:0.5em;font-size:85%;line-height:1.45em;margin-bottom:0}.post_cards .card_posting_date p{margin-top:0.5em;font-size:75%;color:#999}.post_cards .card a{display:flex;flex-direction:column}.post_cards .card_posting_date{margin-top:auto}@media screen and (max-width: 500px){.post_cards{grid-template-columns:auto}}@media screen and (min-width: 1000px){.post_cards{grid-template-columns:repeat(3, minmax(0, 1fr));margin-left:-100px;margin-right:-100px}}
