:root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:0.9}.react-tooltip__tooltip_KtSkBq{visibility:hidden;width:max-content;pointer-events:none;opacity:0;will-change:opacity,visibility;border-radius:3px;padding:8px 16px;font-size:90%;transition:opacity .3s ease-out;position:absolute;top:0;left:0}.react-tooltip__fixed_KtSkBq{position:fixed}.react-tooltip__arrow_KtSkBq{background:inherit;width:8px;height:8px;position:absolute;transform:rotate(45deg)}.react-tooltip__no-arrow_KtSkBq{display:none}.react-tooltip__clickable_KtSkBq{pointer-events:auto}.react-tooltip__show_KtSkBq{visibility:visible;opacity:var(--rt-opacity)}.react-tooltip__dark_KtSkBq{background:var(--rt-color-dark);color:var(--rt-color-white)}.react-tooltip__light_KtSkBq{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.react-tooltip__success_KtSkBq{background-color:var(--rt-color-success);color:var(--rt-color-white)}.react-tooltip__warning_KtSkBq{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.react-tooltip__error_KtSkBq{background-color:var(--rt-color-error);color:var(--rt-color-white)}.react-tooltip__info_KtSkBq{background-color:var(--rt-color-info);color:var(--rt-color-white)}*,:after,:before{box-sizing:border-box}*{margin:0}body,html{height:100%}body{-webkit-font-smoothing:auto;font-smooth:always;text-rendering:optimizeLegibility}canvas,img,picture,svg,video{display:block;max-width:100%}img,video{height:auto}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}ol,ul{padding:0;list-style:none}#__next,#root{isolation:isolate}.visually-hidden{display:none}a#skip-to-main{position:fixed;left:50%;top:-111%;transform:translateX(-50%);background-color:#000;color:#fff;margin:1rem;padding:.5rem 2rem;font-size:var(--step-1);box-shadow:0 0 .5rem 0 rgba(0,0,0,.2)}a#skip-to-main:active,a#skip-to-main:focus{top:0;z-index:200;transition:all .1s ease}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;src:url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300.eot);src:local(""),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300.eot?#iefix) format("embedded-opentype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300.woff2) format("woff2"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300.woff) format("woff"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300.ttf) format("truetype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300.svg#IBMPlexSans) format("svg")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-weight:400;src:url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300italic.eot);src:local(""),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300italic.eot?#iefix) format("embedded-opentype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300italic.woff2) format("woff2"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300italic.woff) format("woff"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300italic.ttf) format("truetype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-300italic.svg#IBMPlexSans) format("svg")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;src:url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500.eot);src:local(""),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500.eot?#iefix) format("embedded-opentype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500.woff2) format("woff2"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500.woff) format("woff"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500.ttf) format("truetype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500.svg#IBMPlexSans) format("svg")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-weight:700;src:url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500italic.eot);src:local(""),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500italic.eot?#iefix) format("embedded-opentype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500italic.woff2) format("woff2"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500italic.woff) format("woff"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500italic.ttf) format("truetype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-500italic.svg#IBMPlexSans) format("svg")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:900;src:url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-700.eot);src:local(""),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-700.eot?#iefix) format("embedded-opentype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-700.woff2) format("woff2"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-700.woff) format("woff"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-700.ttf) format("truetype"),url(/fonts/ibm-plex-sans-v14-latin-ext_latin_greek-700.svg#IBMPlexSans) format("svg")}:root{--color-bg:#fffff1;--color-bg-alt:#fff9d6;--color-bg-code:#fff;--color-fg:#001e4d;--color-surface:#fff}@media(prefers-color-scheme:dark){:root{--color-bg:#001e4d;--color-bg-alt:#0a2a5e;--color-bg-code:#222;--color-fg:#fffff1;--color-surface:#001233}}:root{--step--2:clamp(0.72rem,calc(0.95rem + -0.34vw),0.88rem);--step--1:clamp(0.86rem,calc(0.97rem + -0.16vw),0.94rem);--step-0:clamp(1.00rem,calc(0.99rem + 0.07vw),1.03rem);--step-1:clamp(1.07rem,calc(0.99rem + 0.36vw),1.24rem);--step-2:clamp(1.14rem,calc(0.97rem + 0.73vw),1.49rem);--step-3:clamp(1.22rem,calc(0.95rem + 1.19vw),1.78rem);--step-4:clamp(1.30rem,calc(0.90rem + 1.77vw),2.14rem);--step-5:clamp(1.38rem,calc(0.82rem + 2.49vw),2.57rem);--step-6:clamp(1.48rem,calc(0.72rem + 3.38vw),3.08rem);--step-7:clamp(1.57rem,calc(0.57rem + 4.46vw),3.70rem);--space-2xs:clamp(0.38rem,calc(0.26rem + 0.53vw),0.63rem);--space-xs:clamp(0.50rem,calc(0.32rem + 0.79vw),0.88rem);--space-s:clamp(0.69rem,calc(0.45rem + 1.05vw),1.19rem);--space-m:clamp(1.06rem,calc(0.71rem + 1.58vw),1.81rem);--space-l:clamp(1.38rem,calc(0.90rem + 2.11vw),2.38rem);--space-xl:clamp(2.06rem,calc(1.35rem + 3.16vw),3.56rem);--space-2xl:clamp(2.75rem,calc(1.80rem + 4.21vw),4.75rem);--space-3xl:clamp(4.13rem,calc(2.70rem + 6.32vw),7.13rem);--space-4xl:clamp(5.50rem,calc(3.61rem + 8.42vw),9.50rem);--space-2xs-xs:clamp(0.38rem,calc(0.14rem + 1.05vw),0.88rem);--space-xs-s:clamp(0.50rem,calc(0.17rem + 1.45vw),1.19rem);--space-s-m:clamp(0.69rem,calc(0.15rem + 2.37vw),1.81rem);--space-m-l:clamp(1.06rem,calc(0.44rem + 2.76vw),2.38rem);--space-l-xl:clamp(1.38rem,calc(0.34rem + 4.61vw),3.56rem);--space-xl-2xl:clamp(2.06rem,calc(0.79rem + 5.66vw),4.75rem);--space-2xl-3xl:clamp(2.75rem,calc(0.68rem + 9.21vw),7.13rem);--space-3xl-4xl:clamp(4.13rem,calc(1.58rem + 11.32vw),9.50rem);--space-s-l:clamp(0.69rem,calc(-0.11rem + 3.55vw),2.38rem)}body{font-family:IBM Plex Sans,sans-serif;font-size:var(--step-0);line-height:1.5}::selection{background-color:#ffcf43;color:#000}h1,h2,h3,h4,h5{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}h1.center,h2.center,h3.center,h4.center,h5.center{text-align:center}h1.no-hyphens,h2.no-hyphens,h3.no-hyphens,h4.no-hyphens,h5.no-hyphens{-webkit-hyphens:none;hyphens:none}h1{font-size:var(--step-5);line-height:1.1}h1.bigger{font-size:var(--step-6)}h1.smaller{font-size:var(--step-4)}h1.page-title{margin-bottom:1rem}h1 .subtitle{font-weight:400}h1 .subtitle,h2{font-size:var(--step-3)}h2{line-height:1.2}h2.bigger{font-size:var(--step-4)}h2.smaller,h2.subtitle{font-size:var(--step-2)}h2.subtitle{font-weight:400;line-height:1.4}h3{font-size:var(--step-2);line-height:1.2;max-width:45ch}h3.bigger{font-size:var(--step-3)}.content h3,h3.smaller{font-size:var(--step-1)}h3.smallerer{font-size:var(--step-0)}h4{font-size:var(--step-1);line-height:1.6}.content h4{font-size:var(--step-0)}.align-with-section-title:before{display:block;content:"  ";font-size:var(--step-0);line-height:1.2;margin-bottom:1rem}.flow>*+*{margin-top:1.5em}.flow>*+.flow-2x{margin-top:3em}.flow>*+.flow-3x{margin-top:4.5em}.flow>*+h1{margin-top:1rem}.flow>*+h4{margin-top:2em}.flow>h3+p,.flow>h3+ul,.flow>h4+p,.flow>h4+ul{margin-top:.5em}p{max-width:70ch;page-break-inside:avoid;break-inside:avoid}.introduction>p,p.introduction{font-size:var(--step-2);font-weight:700}.introduction>p.smaller,p.introduction.smaller{font-size:var(--step-1);font-weight:500}p .smaller,p.smaller{font-size:var(--step--1)}p.no-cap{max-width:unset}p a{color:#183896}@media(prefers-color-scheme:dark){p a{color:#cbe5f9}}div.smaller{font-size:var(--step--1)}.strong,strong{font-weight:700}.em,em{font-style:italic}.center{text-align:center;margin-inline:auto}blockquote{font-size:var(--step-2);font-weight:700;line-height:1.2;max-width:40rem;margin:var(--space-l)!important;margin-left:3rem;padding-left:1rem;border-left:4px solid #000}figcaption{font-size:var(--step--1);font-style:italic;margin-top:.25em;margin-left:.25em}time{display:block}hr{border:0;font-size:var(--step-3);margin:2em 0!important;height:2px}.ul{margin-left:0;padding-left:1rem;list-style:none}.ul li{max-width:60ch}.ul li:before{content:"•";display:inline-block;width:1rem;margin-left:-1rem;color:#000}.date{font-size:var(--step--1)}.nowrap{white-space:nowrap}a{color:var(--color-fg);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;cursor:pointer}a:hover{text-underline-offset:4px}a:focus{outline:none}a:focus-visible{outline:2px dotted var(--color-fg);outline-offset:2px}a.smaller{font-size:var(--step--1)}a.center{display:block;text-align:center}@media screen and (min-width:680px){.content a:not(.button){position:relative;padding-bottom:2px}.content a:not(.button):before{position:absolute;left:0;content:attr(href) " →";font-size:var(--step--1);line-height:1.3;background-color:var(--color-bg);color:var(--color-bg);padding:.3em .4em .1em;white-space:nowrap;z-index:100;pointer-events:none;top:100%;opacity:0;transform:translateY(-3px)}.content a:not(.button).external:before{content:attr(href) " ↗"}.content a:not(.button):hover{text-decoration:none}.content a:not(.button):hover:before{transform:translateY(0);opacity:1;transition:all .15s ease .35s;pointer-events:all}}.button,button,input{font-size:1.05rem;line-height:2.3em;padding:.15em 1em .1em;border:none}.button.button-small,button.button-small,input.button-small{font-size:.95rem;padding:.15em .7em .1em}input{position:relative;border-bottom:2px solid transparent;background-color:rgba(0,0,0,.05);line-height:2}@media(prefers-color-scheme:dark){input{background-color:hsla(0,0%,100%,.1)}}input:focus{outline:none;border-bottom:2px solid #ffcf43}select{background-color:rgba(0,0,0,.05);border:none;padding:.5em 1rem .5em .5em}@media(prefers-color-scheme:dark){select{background-color:hsla(0,0%,100%,.1)}}select option{text-transform:capitalize}.button,button{font-weight:700;letter-spacing:.06em;background-color:#ffcf43;color:#000;white-space:nowrap;cursor:pointer;border-radius:1.5em;transform:translate(0);-webkit-user-select:none;-moz-user-select:none;user-select:none}.button:hover,button:hover{transition:all 25ms ease;transform:translate(1px,1px);box-shadow:0 0 .25rem 0 rgba(0,0,0,.1)}.button:focus,button:focus{outline:none}.button:focus-visible,button:focus-visible{outline-offset:3px;outline-width:2px;outline-style:dotted;outline-color:#000;z-index:1}.button.disabled,button.disabled{pointer-events:none;cursor:not-allowed;background-color:#ccc;color:#aaa}a.button{display:inline-block;text-decoration:none}.form{display:grid;grid-template-columns:auto auto;grid-gap:1rem;gap:1rem}.form label{align-self:center}img.drop-shadow{box-shadow:0 0 .25rem 0 rgba(0,0,0,.1)}.side-image{max-height:20rem;width:auto}@media screen and (max-width:640px){.side-image{max-height:15rem}}picture.logo{background-color:var(--color-bg)}picture.logo img{mix-blend-mode:multiply;width:300px;max-height:80px;object-fit:contain}@media(prefers-color-scheme:dark){picture.logo img{filter:invert(100%) sepia(100%);mix-blend-mode:lighten}}html{scroll-behavior:smooth;scroll-padding-top:80px;scroll-padding-bottom:20px}body{overflow-x:hidden}body>div:first-child{display:grid;grid-template-rows:min-content 1fr min-content;min-height:100vh}body,html{background-color:var(--color-bg);color:var(--color-fg)}@media(prefers-color-scheme:dark){html{color-scheme:dark}}main{padding-top:calc(var(--space-s) + 5rem);margin:0 auto var(--space-4xl)!important;min-height:50vh}.wrapper{width:calc(100vw - var(--space-xl));max-width:1200px;margin:0 auto}.pad-2xs{padding:var(--space-2xs)}.pad-xs{padding:var(--space-xs)}.pad-s{padding:var(--space-s)}.pad-m{padding:var(--space-m)}.pad-l{padding:var(--space-l)}.bordered.waag{border-top:3px solid #000}.bordered.code{border-top:3px solid var(--color-code)}.bordered.make{border-top:3px solid var(--color-make)}.bordered.life{border-top:3px solid var(--color-life)}.bordered.learn{border-top:3px solid var(--color-learn)}.flex{display:flex;flex-wrap:wrap;column-gap:1rem;row-gap:.75rem;align-items:center}.flex.center{justify-content:center}.flex-column{display:flex;flex-direction:column;gap:.25rem}.centerer{display:grid;justify-content:center}.list{margin-top:var(--space-s)}.content+.list{margin-top:var(--space-xl)}.image-text{display:flex;gap:1rem;align-items:center}.image-text figure{max-width:30%;width:180px;flex-shrink:0}.row{margin-top:var(--space-3xl)}.row.space-above-none{margin-top:0}.row.space-above-2xs{margin-top:var(--space-2xs)}.row.space-above-xs{margin-top:var(--space-xs)}.row.space-above-s{margin-top:var(--space-s)}.row.space-above-m{margin-top:var(--space-m)}.row.space-above-l{margin-top:var(--space-l)}.row.space-above-xl{margin-top:var(--space-xl)}.row.space-above-2xl{margin-top:var(--space-2xl)}.row:first-child{margin-top:0}.column{display:flex;flex-direction:column}.column.v-center{justify-content:center}.column.v-end{justify-content:flex-end}.column.h-center{align-items:center}.column img.full-width{width:100%}.golden-columns,.main-sidebar-columns{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--space-m)}@supports(-webkit-touch-callout:none) and (not (translate:none)){.golden-columns>*,.main-sidebar-columns>*{-webkit-margin-start:var(--space-m);margin-inline-start:var(--space-m)}.golden-columns>:first-child,.main-sidebar-columns>:first-child{-webkit-margin-start:0;margin-inline-start:0}}.golden-columns,.main-sidebar-columns{--modifier:calc(40rem - 100%)}.golden-columns.wrap-reverse,.main-sidebar-columns.wrap-reverse{flex-wrap:wrap-reverse}.golden-columns.equal-height-columns,.main-sidebar-columns.equal-height-columns{align-items:stretch}.golden-columns>*,.main-sidebar-columns>*{flex-grow:1;flex-basis:calc(var(--modifier)*999);min-width:35%}.golden-columns:not(.reverse)>:nth-child(odd){flex-grow:1.6}.main-sidebar-columns.reverse>:nth-child(2n),.main-sidebar-columns.reverse>:nth-child(odd),.main-sidebar-columns:not(.reverse)>:nth-child(odd){flex-grow:2.5}.main-sidebar-columns.reverse>:nth-child(odd){flex-grow:1}.golden-columns.reverse>:nth-child(2n){flex-grow:1.6}.golden-columns.reverse>:nth-child(odd){flex-grow:1}.grid-columns{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-column-gap:var(--space-l);column-gap:var(--space-l);grid-row-gap:var(--space-xl);row-gap:var(--space-xl)}@media screen and (min-width:880px){.grid-columns.with-featured>:first-child{grid-column:span 2}}@media screen and (max-width:470px){.grid-columns{column-gap:var(--space-m);row-gap:var(--space-l)}}.grid-columns.narrow-columns{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.grid-columns.narrower-columns{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.grid-columns.wide-columns{grid-template-columns:repeat(auto-fill,minmax(min(360px,90vw),1fr))}.grid-columns.wider-columns{grid-template-columns:repeat(auto-fill,minmax(min(420px,90vw),1fr))}.flex-columns{display:flex;flex-wrap:wrap;row-gap:var(--space-m);column-gap:var(--space-m)}@supports(-webkit-touch-callout:none) and (not (translate:none)){.flex-columns>*{-webkit-margin-before:var(--space-m);margin-block-start:var(--space-m)}.flex-columns>:first-child{-webkit-margin-before:0;margin-block-start:0}}.flex-columns{justify-content:flex-start;align-items:flex-start}.flex-columns>*{flex-basis:260px;flex-grow:1}.flex-columns>:last-child{-webkit-margin-after:0;margin-block-end:0}.flex-columns.gap-l{column-gap:var(--space-l)}.flex-columns.gap-xl{column-gap:var(--space-xl)}.flex-columns.narrow-columns>*{flex-basis:220px}.flex-columns.narrower-columns>*{flex-basis:180px}.flex-columns.wide-columns>*{flex-basis:360px}.flex-columns.left{justify-content:flex-start}.flex-columns.left>*{flex-grow:0}.flex-columns.centered{justify-content:center}.flex-columns.centered>*{flex-grow:0}.flex-columns.equal-height-columns{align-items:stretch}.flex-columns.spacing-none{row-gap:0;column-gap:0}@supports(-webkit-touch-callout:none) and (not (translate:none)){.flex-columns.spacing-none>*,.flex-columns.spacing-none>:first-child{-webkit-margin-before:0;margin-block-start:0}}.flex-columns.spacing-xs{row-gap:var(--space-xs);column-gap:var(--space-xs)}@supports(-webkit-touch-callout:none) and (not (translate:none)){.flex-columns.spacing-xs>*{-webkit-margin-before:var(--space-xs);margin-block-start:var(--space-xs)}.flex-columns.spacing-xs>:first-child{-webkit-margin-before:0;margin-block-start:0}}.flex-columns.spacing-xl{row-gap:var(--space-xl);column-gap:var(--space-xl)}@supports(-webkit-touch-callout:none) and (not (translate:none)){.flex-columns.spacing-xl>*{-webkit-margin-before:var(--space-xl);margin-block-start:var(--space-xl)}.flex-columns.spacing-xl>:first-child{-webkit-margin-before:0;margin-block-start:0}}.flex-columns.spacing-2xl{row-gap:var(--space-2xl);column-gap:var(--space-2xl)}@supports(-webkit-touch-callout:none) and (not (translate:none)){.flex-columns.spacing-2xl>*{-webkit-margin-before:var(--space-2xl);margin-block-start:var(--space-2xl)}.flex-columns.spacing-2xl>:first-child{-webkit-margin-before:0;margin-block-start:0}}#site-header{position:-webkit-sticky;position:sticky;top:0;width:100vw;z-index:100;font-size:1.1em;transition:all .15s ease}#site-header .wrapper{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem}@media screen and (max-width:861px){#site-header .wrapper{align-items:center}}#site-header.scrolled{background-color:var(--color-surface);box-shadow:0 0 .5rem 0 rgba(0,0,0,.2)}#site-header #logo{height:2.5rem;width:auto;margin:.75rem 0;transition:all .1s ease}@media(prefers-color-scheme:dark){#site-header #logo path[style*=nonzero]{fill:var(--color-fg)!important}}.scrolled #site-header #logo{height:2rem;margin:.7rem 0}#site-footer{background-color:var(--color-surface);padding:3rem 0}#site-footer .wrapper{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem}@media screen and (max-width:861px){#site-footer .wrapper{align-items:center}}#site-footer .logos{width:100%;display:flex;flex-wrap:wrap;gap:3rem;margin-bottom:3rem;justify-content:center;align-items:center}#site-footer .logos a{height:40px}#site-footer .logos a img,#site-footer .logos a picture{width:100%;height:100%;max-width:200px}#site-footer .logos a img.tu-delft,#site-footer .logos a picture.tu-delft{transform:translateY(-25%)}#site-footer .logos a img{mix-blend-mode:multiply}@media(prefers-color-scheme:dark){#site-footer .logos a img{filter:invert(100%) sepia(100%);mix-blend-mode:screen}}#site-footer .footer-links{width:100%;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;align-items:center}.hamburger{position:relative;margin-right:.5rem;width:20px;height:18px;padding:0;border:none;background:none;z-index:30}.hamburger:hover{box-shadow:none;transform:none}.hamburger .bar{position:absolute;width:100%;height:3px;background-color:var(--color-fg);inset-inline-start:50%;transform:translateX(-50%);transition:all .1s ease}.hamburger .bar:first-child{top:0}.hamburger .bar:nth-child(2),.hamburger .bar:nth-child(3){top:7px}.hamburger .bar:nth-child(4){top:14px}.nav-active .hamburger .bar:first-child{width:0}.nav-active .hamburger .bar:nth-child(2){transform:rotate(45deg);inset-inline-start:0}.nav-active .hamburger .bar:nth-child(3){transform:rotate(-45deg);inset-inline-start:0}.nav-active .hamburger .bar:nth-child(4){width:0}@media screen and (min-width:731px){#menu-toggle{display:none}}#menu{display:grid;grid-template-rows:min-content min-content;grid-template-columns:min-content;grid-template-areas:"secondary" "primary";grid-column-gap:1.5rem;column-gap:1.5rem;grid-row-gap:.4rem;row-gap:.4rem;--nav-item-direction:row;--nav-item-gap:1.5em}@media screen and (max-width:730px){#menu{--nav-item-direction:column;--nav-item-gap:0;grid-template-rows:min-content min-content;grid-template-columns:min-content 1rem;grid-template-areas:"primary primary" "secondary secondary";position:fixed;top:5.25rem;right:.25rem;padding:var(--space-s) var(--space-m);background:#fff;flex-direction:column;box-shadow:0 0 .5rem 0 rgba(0,0,0,.2);z-index:9999;display:none}#menu.active{display:grid}.scrolled #menu{top:3.65rem}}#menu .menu-secondary{font-size:var(--step--1);max-height:7rem;transition:max-height .1s ease}@media screen and (min-width:731px){.scrolled #menu .menu-secondary{max-height:0;overflow:hidden}}#menu nav{display:flex;flex-direction:var(--nav-item-direction);gap:var(--nav-item-gap)}@supports(-webkit-touch-callout:none) and (not (translate:none)){#menu nav>*{-webkit-margin-start:var(--nav-item-gap);margin-inline-start:var(--nav-item-gap)}#menu nav>:first-child{-webkit-margin-start:0;margin-inline-start:0}}#menu nav{justify-content:flex-end}#menu nav a{position:relative;color:var(--color-fg);text-decoration:none;text-transform:lowercase;line-height:1.5;white-space:nowrap}@media screen and (max-width:730px){#menu nav a:hover{text-decoration:underline}}@media screen and (min-width:731px){#menu nav a:after{content:"";position:absolute;left:50%;bottom:0;width:0;height:2px;background-color:var(--color-fg)}#menu nav a:hover:after{left:0;width:100%;transition:all .1s ease}}#menu nav#nav-primary{grid-area:primary;flex-direction:var(--nav-item-direction)}#menu nav#nav-primary a{font-weight:700;line-height:2;padding-bottom:.2rem}#menu nav#nav-primary a:after{height:3px}#menu nav#nav-secondary{margin-top:.25rem;grid-area:secondary;gap:calc(var(--nav-item-gap)*.75)}.chart-bg{--duration:1.5;border-radius:50%;opacity:.075;pointer-events:none;background-image:conic-gradient(var(--color-fg) calc((var(--sunrise) - var(--duration)) * 1%),var(--color-bg) calc((var(--sunrise) + var(--duration)) * 1%) calc((var(--sunset) - var(--duration)) * 1%),var(--color-fg) calc((var(--sunset) + var(--duration)) * 1%))}@media(prefers-color-scheme:dark){.chart-bg{background-image:conic-gradient(var(--color-bg) calc((var(--sunrise) - var(--duration)) * 1%),var(--color-fg) calc((var(--sunrise) + var(--duration)) * 1%) calc((var(--sunset) - var(--duration)) * 1%),var(--color-bg) calc((var(--sunset) + var(--duration)) * 1%));opacity:.125}}.chart-axis-line{fill:none;stroke:var(--color-fg);stroke-width:1;stroke-opacity:.2}@media(prefers-color-scheme:dark){.chart-axis-line{stroke-opacity:.3}}.chart-axis-line.chart-axis-line-secondary{stroke-dasharray:6 3}.chart-data-line-inside{stroke:#111;stroke-width:3.5}.chart-data-line-inside.heat-index-0{stroke:#feb73b}.chart-data-line-inside.heat-index-1{stroke:#f48c3f}.chart-data-line-inside.heat-index-2{stroke:#ee753f}.chart-data-line-inside.heat-index-3{stroke:#e75c3f}.chart-data-line-inside.heat-index-4{stroke:#e03f3f}.chart-data-line-outside{stroke:#111;stroke-width:3.5}.chart-data-line-outside.heat-index-0{stroke:#a7c4f2}.chart-data-line-outside.heat-index-1{stroke:#8ea1eb}.chart-data-line-outside.heat-index-2{stroke:#8090e7}.chart-data-line-outside.heat-index-3{stroke:#717fe3}.chart-data-line-outside.heat-index-4{stroke:#616fde}.chart-data-bar{mix-blend-mode:multiply}.chart-data-bar.chart-data-bar-inside,.chart-data-bar.chart-data-bar-outside{fill:#111}@media(prefers-color-scheme:dark){.chart-data-bar{mix-blend-mode:screen}}.chart-data-point-inside+circle,.chart-data-point-outside+circle{opacity:0}.chart-data-point-inside.heat-index-0{fill:#feb73b}.chart-data-point-inside.heat-index-1{fill:#f48c3f}.chart-data-point-inside.heat-index-2{fill:#ee753f}.chart-data-point-inside.heat-index-3{fill:#e75c3f}.chart-data-point-inside.heat-index-4{fill:#e03f3f}.chart-data-point-outside.heat-index-0{fill:#a7c4f2}.chart-data-point-outside.heat-index-1{fill:#8ea1eb}.chart-data-point-outside.heat-index-2{fill:#8090e7}.chart-data-point-outside.heat-index-3{fill:#717fe3}.chart-data-point-outside.heat-index-4{fill:#616fde}.chart-axis-text{fill:var(--color-fg);opacity:.7}.chart-axis-text,.chart-axis-text-bg{font-size:13px;text-anchor:middle;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chart-axis-text-bg{stroke:var(--color-bg);stroke-width:3}.chart-legend{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr;grid-template-rows:1fr 1fr 1.5fr;max-width:260px;margin:2rem auto 6rem;grid-gap:2px;gap:2px;font-size:.75rem;aspect-ratio:3}.chart-legend>div{display:grid;justify-content:center;align-content:center;position:relative;padding:0 .5em}.chart-legend .span-2{grid-column:1/3}.chart-legend .header{font-weight:700;white-space:nowrap;justify-content:end}.chart-legend .inside,.chart-legend .outside{position:relative}.chart-legend .inside:after,.chart-legend .outside:after{content:" ";width:.75rem;height:.75rem;border-radius:50%}.chart-legend .inside:not(:nth-child(6n)):before,.chart-legend .outside:not(:nth-child(6n)):before{content:" ";position:absolute;left:50%;top:calc(50% - 2px);width:100%;height:0;border-top:4px solid transparent}.chart-legend .inside.heat-index-0:after{background-color:#feb73b}.chart-legend .inside.heat-index-1:after{background-color:#f48c3f}.chart-legend .inside.heat-index-2:after{background-color:#ee753f}.chart-legend .inside.heat-index-3:after{background-color:#e75c3f}.chart-legend .inside.heat-index-4:after{background-color:#e03f3f}.chart-legend .outside.heat-index-0:after{background-color:#a7c4f2}.chart-legend .outside.heat-index-1:after{background-color:#8ea1eb}.chart-legend .outside.heat-index-2:after{background-color:#8090e7}.chart-legend .outside.heat-index-3:after{background-color:#717fe3}.chart-legend .outside.heat-index-4:after{background-color:#616fde}.chart-legend .inside.heat-index-0:before{border-color:#feb73b}.chart-legend .inside.heat-index-1:before{border-color:#f48c3f}.chart-legend .inside.heat-index-2:before{border-color:#ee753f}.chart-legend .inside.heat-index-3:before{border-color:#e75c3f}.chart-legend .inside.heat-index-4:before{border-color:#e03f3f}.chart-legend .outside.heat-index-0:before{border-color:#a7c4f2}.chart-legend .outside.heat-index-1:before{border-color:#8ea1eb}.chart-legend .outside.heat-index-2:before{border-color:#8090e7}.chart-legend .outside.heat-index-3:before{border-color:#717fe3}.chart-legend .outside.heat-index-4:before{border-color:#616fde}.chart-legend .rotate span{position:absolute;top:3px;left:calc(50% + 3px);white-space:nowrap;transform:rotate(45deg);transform-origin:0 0}.react-tooltip{padding:4px 8px;max-width:90vw;background-color:#fff;color:#000;opacity:1;box-shadow:0 0 .75rem 0 rgba(0,0,0,.025);border-radius:0}.react-tooltip td,.react-tooltip th{text-align:left}.sun-icon{fill:none;stroke-width:1.5;stroke:#000;stroke-linecap:round;stroke-linejoin:round}@media(prefers-color-scheme:dark){.sun-icon{stroke:#fff}}.values{display:flex;flex-wrap:wrap;gap:.75ch;justify-content:center}.chart-data-point{display:inline-block;position:relative;height:2em;font-size:1em;background-color:rgba(0,0,0,.075);border-radius:1em;font-weight:700;line-height:2em;text-align:center;cursor:default;white-space:nowrap;text-shadow:-1px -1px 0 hsla(0,0%,100%,.2),1px -1px 0 hsla(0,0%,100%,.2),-1px 1px 0 hsla(0,0%,100%,.2),1px 1px 0 hsla(0,0%,100%,.2)}@media(prefers-color-scheme:dark){.chart-data-point{background-color:hsla(0,0%,100%,.2);text-shadow:-1px -1px 0 rgba(0,0,0,.5),1px -1px 0 rgba(0,0,0,.5),-1px 1px 0 rgba(0,0,0,.5),1px 1px 0 rgba(0,0,0,.5)}}.chart-data-point .prefix{display:inline-block;margin-inline:.5em;line-height:1.75em}svg .chart-data-point{position:fixed}.chart-data-point.inside.heat-index-0 .value{background-color:#feb73b}.chart-data-point.inside.heat-index-1 .value{background-color:#f48c3f}.chart-data-point.inside.heat-index-2 .value{background-color:#ee753f}.chart-data-point.inside.heat-index-3 .value{background-color:#e75c3f}.chart-data-point.inside.heat-index-4 .value{background-color:#e03f3f}.chart-data-point.outside.heat-index-0 .value{background-color:#a7c4f2}.chart-data-point.outside.heat-index-1 .value{background-color:#8ea1eb}.chart-data-point.outside.heat-index-2 .value{background-color:#8090e7}.chart-data-point.outside.heat-index-3 .value{background-color:#717fe3}.chart-data-point.outside.heat-index-4 .value{background-color:#616fde}.chart-data-point .value{display:inline-block;width:2em;height:2em;position:relative;border-radius:1em;background-color:rgba(0,0,0,.075)}@media(prefers-color-scheme:dark){.chart-data-point .value{background-color:hsla(0,0%,100%,.2)}}.chart-data-point .value>span{position:relative;letter-spacing:-.09em;left:-.05em}.chart-data-point.minimum .value>span{top:-.1em}.chart-data-point.maximum .value>span{top:.05em}.chart-data-point.minimum .value:after{bottom:.35em;transform:rotate(45deg)}.chart-data-point.maximum .value:after,.chart-data-point.minimum .value:after{position:absolute;left:calc(50% - .125em);width:.15em;height:.15em;content:" ";border:solid #000;border-width:0 .1em .1em 0;display:inline-block;padding:.1em}.chart-data-point.maximum .value:after{top:.35em;transform:rotate(-135deg)}@media(prefers-color-scheme:dark){.chart-data-point.maximum .value:after,.chart-data-point.minimum .value:after{border-color:#fff}}.chart-data-point .super{font-size:.7em;position:relative;left:-.075em;left:.1em;top:-.225em;letter-spacing:-.09em}.sentence-select,.sentence-select-group{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:.75ch;font-size:var(--step-1)}@media screen and (max-width:840px){.sentence-select-group{width:430px;flex-direction:column;align-items:center}}.sentence-select-group>div{width:25ch}.sentence-select-text{line-height:2.4em}.chart h3{font-size:var(--step-1);text-wrap:balance}.select-wrapper .select__control{border-radius:0;box-shadow:none;background-color:#ede7dd;border:none}@media(prefers-color-scheme:dark){.select-wrapper .select__control{background-color:#1a355f}}.select-wrapper .select__menu{margin-top:0;margin-bottom:0;border-radius:0;background-color:#ede7dd;box-shadow:0 0 .5rem 0 rgba(0,0,0,.2);z-index:2}@media(prefers-color-scheme:dark){.select-wrapper .select__menu{background-color:#1a355f}}.select-wrapper .select__control--menu-is-open+.select__menu{z-index:3}.select-wrapper .select__placeholder{padding:3px 0;color:#000}@media(prefers-color-scheme:dark){.select-wrapper .select__single-value{color:#fff}}.select-wrapper .select__menu-list{padding-top:0;padding-bottom:0;overflow-y:scroll;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.1) transparant}.select-wrapper .select__menu-list::-webkit-scrollbar{width:.8rem}.select-wrapper .select__menu-list::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.25)}.select-wrapper .select__option{padding:6px 10px}.select-wrapper .select__option.select__option--is-selected{background-color:#ffcf43;color:#000}@media(prefers-color-scheme:dark){.select-wrapper .select__option.select__option--is-selected{background-color:#2f5bb5;color:#fff}}.select-wrapper .select__option.select__option--is-focused,.select-wrapper .select__option:hover{background-color:#a7c4f2}@media(prefers-color-scheme:dark){.select-wrapper .select__option.select__option--is-focused,.select-wrapper .select__option:hover{background-color:#616fde}}.select-wrapper .select__value-container{padding:0 8px}.select-wrapper .select__indicator{cursor:pointer}.select-wrapper .select__indicator path{fill:#505050}.select-wrapper .select__indicator:hover path{fill:#000}@media(prefers-color-scheme:dark){.select-wrapper .select__indicator path{fill:#787878}.select-wrapper .select__indicator:hover path{fill:#fff}}.dates-selection{display:flex;align-items:flex-start;justify-content:space-between;margin-top:.25rem}.dates-selection.editable{background-color:rgba(0,0,0,.05);padding:.25em}@media(prefers-color-scheme:dark){.dates-selection.editable{background-color:hsla(0,0%,100%,.15)}}.dates-selection .dates{display:flex;flex-wrap:wrap;gap:.25em;font-size:var(--step--2)}.dates-selection .dates span{background-color:rgba(0,0,0,.075);border-radius:2px;padding:0 .25em;line-height:1.5}@media(prefers-color-scheme:dark){.dates-selection .dates span{background-color:hsla(0,0%,100%,.15)}}.dates-selection .dates span button{background:none;line-height:1;padding:.15em .1em .1em}.dates-selection .dates span button:hover{box-shadow:none}@media(prefers-color-scheme:dark){.dates-selection .dates span button{color:var(--color-fg)}}.dates-selection .dates-selection-edit{padding:0;width:2rem;height:2rem;flex-shrink:0}.dates-selection .dates-selection-edit svg{margin:0 auto}.rmdp-container{width:100%}.calendar.rmdp-wrapper{box-shadow:0 0 .75rem 0 rgba(0,0,0,.1)}.calendar.rmdp-wrapper .rmdp-panel-body li{background-color:#ffcf43;color:#000;box-shadow:0 0 .75rem 0 rgba(0,0,0,.05)}.calendar.rmdp-wrapper .rmdp-panel-body span{line-height:30px}.calendar.rmdp-wrapper .rmdp-day.rmdp-selected span:not(.highlight){background-color:#ffcf43;color:#000;font-weight:700;box-shadow:0 0 .75rem 0 rgba(0,0,0,.05)}.calendar.rmdp-wrapper .rmdp-arrow{border-color:#000;margin-top:7px}.calendar.rmdp-wrapper .rmdp-arrow-container:hover{background-color:#ffcf43}.calendar.rmdp-wrapper .rmdp-arrow-container:hover .rmdp-arrow{border-color:#000}.calendar.rmdp-wrapper .rmdp-week-day{color:#000;font-weight:700}.calendar.rmdp-wrapper .rmdp-day:not(.rmdp-disabled):not(.rmdp-day-hidden) span:hover{background-color:#d6d0c7;color:#000}@media(prefers-color-scheme:dark){.dark-mode-invert{filter:invert(100%)}}.questions .question{margin-bottom:2.5rem}.questions .question .category{background-color:rgba(0,0,0,.075);border-radius:2px;padding:0 .25em;line-height:1.5;font-style:italic}.loading{text-align:center}.loading span{display:inline-block;width:2rem;height:2rem;margin:1rem 1rem 1rem 0;vertical-align:middle;background-color:#ffcf43;border-radius:100%;animation:pulseScaleOut 1.5s ease-in-out infinite;animation-delay:0s;opacity:0}@keyframes pulseScaleOut{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}.flag{width:60px;height:auto;float:left;margin:.2em .5em .3em 0}.download{max-width:760px;margin:0 auto}.download p{max-width:unset}.download ul{margin-left:1.5em;padding-left:0}.download ul li{padding-left:.15em;list-style:disc}.download ul li li{list-style:circle}.download code,.download pre{font-size:var(--step--1);background-color:var(--color-bg-code);color:var(--color-fg);font-family:monospace;padding:.15em}.download pre{overflow-x:auto;padding:.5em}.download .properties{font-size:var(--step--1);background-color:var(--color-bg-code);color:var(--color-fg);font-family:monospace;padding:.5em;line-height:1.5}.download .downloads-list{line-height:1.6}.download .downloads-list .download-meta{color:var(--color-fg-muted,currentColor);opacity:.7}