:root{color-scheme:light;--paper:#f3f4f0;--grid-minor:#e2e5df;--grid-major:#cbd0c8;--sheet:#fff;--sheet-alt:#f6f7f4;--sheet-edge:#bec3bb;--rule:#d5d9d2;--ink:#141514;--ink-hover:#3b3f3a;--ink-soft:#4c504b;--on-ink:#fff;--field:#6a6f69;--red:#c8102e;--red-text:#b00d27;--on-red:#fff;--select:#fae3e5;--hatch:#14151429;--sheet-shadow:#1415141a;--focus:var(--ink);--font-display:"Sofia Sans Extra Condensed", "FYS Display Fallback", "FYS Display Fallback Arial", "Arial Narrow", Arial, sans-serif;--font-text:"Atkinson Hyperlegible Next", "FYS Text Fallback", Arial, sans-serif;--font-mono:"Atkinson Hyperlegible Mono", ui-monospace, Menlo, Consolas, monospace;--fs-answer:clamp(4rem, 2rem + 10vw, 7rem);--fs-hub-h1:clamp(2.5rem, 1.6rem + 4vw, 4.5rem);--fs-h1:clamp(2.25rem, 1.5rem + 3.2vw, 3.75rem);--fs-h2:clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem);--fs-tile:1.5rem;--fs-h3:clamp(1.25rem, 1.15rem + .3vw, 1.375rem);--fs-lead:clamp(1.1875rem, 1rem + .8vw, 1.375rem);--fs-body:clamp(1.0625rem, 1rem + .2vw, 1.125rem);--fs-input:clamp(2rem, 1.6rem + 1.2vw, 2.5rem);--fs-small:.9375rem;--fs-mono:1rem;--fs-label:.8125rem;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:40px;--s-8:48px;--s-9:64px;--s-10:80px;--s-11:120px;--radius-sheet:2px;--radius-control:4px;--radius-chip:2px;--border-control:2px;--border-checked:3px;--offset-sheet:3px 3px 0 var(--sheet-shadow);--container:1200px;--measure:38rem;--gutter:16px;--header-h:48px;--ruler-h:10px;--grid-minor-size:8px;--grid-major-size:40px;--ease-pull:linear;--ease-snap:cubic-bezier(.2, .9, .3, 1);--ease-move:cubic-bezier(.3, 0, .2, 1);--dur-snap:.12s;--dur-ui:.16s}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#0f1110;--grid-minor:#1a1d1b;--grid-major:#272c28;--sheet:#181b19;--sheet-alt:#1f2320;--sheet-edge:#3a403b;--rule:#2f3430;--ink:#ecede8;--ink-hover:#c5c9c1;--ink-soft:#a7ada5;--on-ink:#0f1110;--field:#868d85;--red:#ff5a5f;--red-text:#ff8389;--on-red:#0f1110;--select:#3b1a1d;--hatch:#ecede833;--sheet-shadow:#00000080;--focus:var(--ink)}}:root[data-theme=dark]{color-scheme:dark;--paper:#0f1110;--grid-minor:#1a1d1b;--grid-major:#272c28;--sheet:#181b19;--sheet-alt:#1f2320;--sheet-edge:#3a403b;--rule:#2f3430;--ink:#ecede8;--ink-hover:#c5c9c1;--ink-soft:#a7ada5;--on-ink:#0f1110;--field:#868d85;--red:#ff5a5f;--red-text:#ff8389;--on-red:#0f1110;--select:#3b1a1d;--hatch:#ecede833;--sheet-shadow:#00000080;--focus:var(--ink)}@font-face{font-family:Sofia Sans Extra Condensed;src:url(/_astro/fys-display.C7sFPFdv.woff2)format("woff2");font-weight:600 800;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible Next;src:url(/_astro/fys-text.QpM04Kja.woff2)format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible Mono;src:url(/_astro/fys-mono.B1qNnZw5.woff2)format("woff2");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:FYS Text Fallback;src:local(Arial),local(ArialMT),local(Liberation Sans),local(LiberationSans);size-adjust:100.03%;ascent-override:98.37%;descent-override:31.59%;line-gap-override:0%}@font-face{font-family:FYS Display Fallback;src:local(Arial Narrow Bold),local(ArialNarrow-Bold),local(Liberation Sans Narrow Bold),local(LiberationSansNarrow-Bold);size-adjust:75.16%;ascent-override:119.75%;descent-override:39.92%;line-gap-override:0%}@font-face{font-family:FYS Display Fallback Arial;src:local(Arial Bold),local(Arial-BoldMT),local(Liberation Sans Bold),local(LiberationSans-Bold);size-adjust:61.64%;ascent-override:146.01%;descent-override:48.67%;line-gap-override:0%}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;font-synthesis:none}body{min-height:100vh;font-family:var(--font-text);font-size:var(--fs-body);color:var(--ink);background-color:var(--paper);background-image:linear-gradient(var(--grid-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-major) 1px, transparent 1px), linear-gradient(var(--grid-minor) 1px, transparent 1px), linear-gradient(90deg, var(--grid-minor) 1px, transparent 1px);font-variant-numeric:lining-nums;background-position:0 0,calc(50% - 20px) 0,0 0,calc(50% - 4px) 0;background-size:40px 40px,40px 40px,8px 8px,8px 8px;margin:0;line-height:1.6}img,svg{max-width:100%;display:block}svg{overflow:visible}p,ul,ol,dl,figure,blockquote,table{margin:0}h1,h2,h3,h4{text-wrap:balance;margin:0}h1{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h1);letter-spacing:0;line-height:1.02}h2{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h2);line-height:1.06}h3{font-family:var(--font-text);font-weight:700;font-size:var(--fs-h3);line-height:1.3}p{max-width:var(--measure)}strong,b{font-weight:700}em,i,cite{font-style:normal}small{font-size:var(--fs-small)}.lead{font-size:var(--fs-lead);color:var(--ink);max-width:34rem;line-height:1.45}.small{font-size:var(--fs-small);line-height:1.47}.soft{color:var(--ink-soft)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.label{font-family:var(--font-mono);font-weight:600;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.06em;line-height:1.38}.nowrap{white-space:nowrap}.vh{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}a{color:var(--ink);text-underline-offset:3px;text-decoration-line:underline;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}:focus:not(:focus-visible),[tabindex="-1"]:focus{outline:none}[data-skip-link]{left:var(--s-4);z-index:10;background:var(--ink);color:var(--on-ink);padding:var(--s-3) var(--s-4);border-radius:var(--radius-control);font-weight:700;text-decoration:none;position:absolute;top:-100px}[data-skip-link]:focus{top:var(--s-2)}.wrap{width:100%;max-width:var(--container);margin:0 auto;padding:0}@media (width>=600px){.wrap{padding:0 var(--s-6)}}@media (width>=960px){.wrap{padding:0 var(--s-7)}}@media (width>=1280px){.wrap{padding:0}}main{padding:var(--s-5) 0 var(--s-8);display:block}@media (width<=599px){main{padding-top:0}.page-head{padding-top:var(--s-3);padding-bottom:var(--s-4);border-top:0}.page-head>*+*{margin-top:var(--s-2)}}.page-head .promise{font-size:var(--fs-body);max-width:34rem;line-height:1.5}main:focus{outline:none}.stack>*+*{margin-top:var(--s-5)}@media (width>=960px){.stack>*+*{margin-top:var(--s-7)}}.sheet{background:var(--sheet);border-top:1px solid var(--sheet-edge);border-bottom:1px solid var(--sheet-edge);padding:var(--s-5) var(--s-4);position:relative}.sheet--alt{background:var(--sheet-alt)}@media (width>=600px){.sheet{border:1px solid var(--sheet-edge);border-radius:var(--radius-sheet);box-shadow:var(--offset-sheet);padding:var(--s-5)}}@media (width>=960px){.sheet{padding:var(--s-6)}}.sheet>*+*{margin-top:var(--s-5)}.sheet>h2+*,.sheet>header+*{margin-top:var(--s-3)}.sheet__tab{top:-12px;left:var(--s-4);z-index:1;border:1px solid var(--ink);background:var(--sheet);width:40px;height:24px;font-family:var(--font-mono);font-weight:600;font-size:var(--fs-label);justify-content:center;align-items:center;display:inline-flex;position:absolute}@media (width>=600px){.sheet__tab{left:var(--s-5)}}@media (width>=960px){.sheet__tab{left:var(--s-6)}}.sheet>.sheet__tab+*{margin-top:0}.sheet:has(>.sheet__tab){padding-top:var(--s-6)}.sheet__head{justify-content:space-between;align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.prose>*+*{margin-top:var(--s-4)}.prose h2{margin-top:var(--s-6)}.prose h3{margin-top:var(--s-5)}.prose ul,.prose ol{max-width:var(--measure);padding-left:1.25em}.prose li+li{margin-top:var(--s-2)}.page-head>*+*,.page-head .lead{margin-top:var(--s-3)}.page-head h1{max-width:20ch}.hub-head h1{font-size:var(--fs-hub-h1);max-width:14ch;line-height:1.02}@media (forced-colors:active){body{background-image:none}.sheet{box-shadow:none}}@media (prefers-contrast:more){body{background-image:none}.sheet{box-shadow:none}:root{--field:var(--ink)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}body>header{background:var(--sheet);border-bottom:1px solid var(--sheet-edge)}.site-header{justify-content:space-between;align-items:center;gap:var(--s-3);min-height:var(--header-h);padding:0 var(--s-4);display:flex}@media (width>=600px){.site-header{padding:0}}.lockup{color:var(--ink);align-items:center;gap:9px;padding:6px 0;text-decoration:none;display:inline-flex}.lockup__mark{flex:none;width:25px;height:25px}.lockup__wordmark{flex:none;width:auto;height:30px}@media (width>=960px){.lockup__mark{width:28px;height:28px}.lockup__wordmark{height:33.4px}.lockup{gap:10px}}@media (width<=359px){.lockup__mark{display:none}}.mark-blade,.wm-ink{fill:var(--ink)}.mark-hook,.wm-red{fill:var(--red)}.site-nav{align-items:center;gap:var(--s-1);display:flex}.site-nav a{min-height:44px;padding:0 var(--s-2);font-weight:600;font-size:var(--fs-small);align-items:center;text-decoration-thickness:1px;display:inline-flex}.site-nav__method{display:none!important}@media (width>=960px){.site-nav__method{display:inline-flex!important}}[data-theme-toggle]{border-radius:var(--radius-control);width:44px;height:44px;color:var(--ink);cursor:pointer;transition:background-color var(--dur-ui) linear;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}[data-theme-toggle][hidden]{display:none}[data-theme-toggle]:hover{background:var(--sheet-alt)}[data-theme-toggle] svg{width:20px;height:20px}.theme-ring{fill:none;stroke:currentColor;stroke-width:2px}.theme-half{fill:currentColor}.ruler{height:var(--ruler-h);background-image:repeating-linear-gradient(90deg, var(--field) 0 1px, transparent 1px 80px), repeating-linear-gradient(90deg, var(--field) 0 1px, transparent 1px 40px), repeating-linear-gradient(90deg, var(--field) 0 1px, transparent 1px 8px);background-position:calc(50% - 40px) 0,calc(50% - 20px) 0,calc(50% - 4px) 0;background-repeat:repeat-x;background-size:100% 10px,100% 6px,100% 3px;position:relative}.ruler__zero{width:2px;height:var(--ruler-h);background:var(--red);top:0;left:var(--s-4);position:absolute}@media (width>=600px){.ruler__zero{left:max(var(--s-6), calc((100% - var(--container)) / 2))}}@media (width>=960px){.ruler__zero{left:max(var(--s-7), calc((100% - var(--container)) / 2))}}.ruler--up{background-position:calc(50% - 40px) 100%,calc(50% - 20px) 100%,calc(50% - 4px) 100%}.crumbs ol{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-soft);flex-wrap:wrap;align-items:center;margin:0;padding:0;line-height:1.38;list-style:none;display:flex}.crumbs li{align-items:center;display:inline-flex}.crumbs li+li:before{content:"";background:var(--ink-soft);width:1px;height:14px;margin:0 10px;display:inline-block;transform:skew(-20deg)}.crumbs a{color:var(--ink-soft);align-items:center;min-height:24px;display:inline-flex}.crumbs [aria-current=page]{color:var(--ink)}body>footer{background:var(--sheet-alt);border-top:1px solid var(--sheet-edge);font-size:var(--fs-small);line-height:1.47}.site-footer{padding:var(--s-6) var(--s-4) 0}@media (width>=600px){.site-footer{padding:var(--s-7) 0 0}}body>footer>[data-affiliate-disclosure]{max-width:var(--container);margin:var(--s-5) var(--s-4) 0;padding:var(--s-4) 0 var(--s-6);border-top:1px solid var(--rule)}@media (width>=600px){body>footer>[data-affiliate-disclosure]{margin-inline:var(--s-6)}}@media (width>=960px){body>footer>[data-affiliate-disclosure]{margin-inline:var(--s-7)}}@media (width>=1280px){body>footer>[data-affiliate-disclosure]{margin-inline:auto}}.site-footer__brand svg{width:auto;height:21px}.footer-grid{gap:var(--s-5);margin-top:var(--s-5);grid-template-columns:1fr;display:grid}@media (width>=600px){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.footer-col h2{font-family:var(--font-mono);font-weight:600;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.06em;line-height:1.38}.footer-col ul{margin:var(--s-2) 0 0;padding:0;list-style:none}.footer-col li a{align-items:center;min-height:32px;display:inline-flex}.footer-meta{margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--rule);gap:var(--s-2);display:grid}.print-line{display:none}.d-obj{fill:none;stroke:var(--ink);stroke-width:2px;stroke-linecap:butt;stroke-linejoin:miter}.d-fill{fill:var(--sheet);stroke:var(--ink);stroke-width:2px;stroke-linejoin:miter}.d-figure{fill:var(--sheet-alt);stroke:var(--ink);stroke-width:2px;stroke-linejoin:round}.d-solid{fill:var(--ink);stroke:none}.d-hidden{fill:none;stroke:var(--ink);stroke-width:2px;stroke-dasharray:4 3}.d-centre{fill:none;stroke:var(--ink-soft);stroke-width:1px;stroke-dasharray:8 2 2 2}.d-ext{fill:none;stroke:var(--ink-soft);stroke-width:1px}.d-dim,.d-tick{fill:none;stroke:var(--red);stroke-width:1.5px;stroke-linecap:butt}.d-mark{fill:none;stroke:var(--red);stroke-width:2.5px;stroke-linecap:butt}.d-label{fill:var(--red-text);font-family:var(--font-text);font-size:16px;font-weight:700}.d-label-ink{fill:var(--ink);font-family:var(--font-text);font-size:16px;font-weight:700}.d-not{opacity:.3}.d-strike{fill:none;stroke:var(--ink-soft);stroke-width:1.5px}.d-hatch-line{stroke:var(--hatch);stroke-width:1.5px}.d-screen{fill:var(--sheet-alt);stroke:var(--ink);stroke-width:1.5px}.draw{stroke-dasharray:100 100;stroke-dashoffset:0}.d-grad{fill:none;stroke:var(--ink-soft);stroke-width:4px;stroke-dasharray:1 7}.drawing{width:100%;height:auto}.drawing--wall{max-width:640px}.drawing--range{max-width:480px}.explainer .figure-sheet{justify-items:center;display:grid}.explainer .figure-sheet>svg{max-width:440px}.figure-sheet{margin:0}.figure-sheet figcaption{margin-top:var(--s-2);font-size:var(--fs-small);color:var(--ink-soft)}.i{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:butt;stroke-linejoin:miter}.i-fill{fill:currentColor;stroke:none}.i-red{fill:none;stroke:var(--red);stroke-width:2px}.icon{flex:none;width:24px;height:24px}.conf{border-radius:var(--radius-chip);height:28px;font:600 var(--fs-label)/1 var(--font-mono);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:inline-flex}.conf svg{flex:none;width:16px;height:16px}.conf--exact{background:var(--ink);color:var(--on-ink);border:2px solid var(--ink)}.conf--range{background:var(--sheet);color:var(--ink);border:2px solid var(--ink)}.conf--maker{background:var(--sheet);color:var(--ink);border:2px solid var(--ink);padding-left:0}.conf--maker .conf__glyph{background-image:repeating-linear-gradient(45deg, var(--hatch) 0 1.5px, transparent 1.5px 6px);border-right:1px solid var(--ink);justify-content:center;align-items:center;width:26px;height:24px;display:inline-flex}.conf--none{background:var(--sheet);color:var(--ink-soft);border:2px dashed var(--ink-soft)}a.conf:hover{text-underline-offset:3px;text-decoration:underline}.cg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:butt;stroke-linejoin:miter}.cg-fill{fill:currentColor;stroke:none}.conf-legend{gap:var(--s-4);margin-left:0;margin-right:0;padding:0;list-style:none;display:grid}@media (width>=600px){.conf-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}.conf-legend li{gap:var(--s-2);justify-items:start;display:grid}.conf-legend p{font-size:var(--fs-small);line-height:1.47}@media (forced-colors:active){.conf--exact{forced-color-adjust:none;color:canvastext;background:canvas;border:2px solid canvastext}}.tblock{background:var(--sheet-alt);border:1px solid var(--rule);margin-top:var(--s-4);grid-template-columns:minmax(84px,max-content) 1fr;display:grid}.tblock dt,.tblock dd{padding:var(--s-2) var(--s-3);border-top:1px solid var(--rule);margin:0}.tblock dt:first-of-type,.tblock dt:first-of-type+dd{border-top:0}.tblock dt{font-family:var(--font-mono);font-weight:600;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);border-right:1px solid var(--rule);line-height:1.6}.tblock dd{font-size:var(--fs-small);overflow-wrap:anywhere;min-width:0;line-height:1.47}.tblock time,.tblock .mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.tblock .gap{color:var(--ink-soft)}.src-line{align-items:center;column-gap:var(--s-2);font-size:var(--fs-small);flex-wrap:wrap;row-gap:2px;line-height:1.47;display:flex}.src-line>svg{flex:none;width:16px;height:16px}.src-line__label{font-family:var(--font-mono);font-weight:600;font-size:var(--fs-label)}.src-line__date{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-soft)}.ext{vertical-align:-1px;width:12px;height:12px;margin-left:3px;display:inline-block}.src-list{gap:var(--s-3);padding:0;list-style:none;display:grid}.src-quote{margin-top:var(--s-1);padding-left:var(--s-3);border-left:2px solid var(--rule);font-size:var(--fs-small);color:var(--ink-soft);max-width:var(--measure)}.src-quote q{quotes:"“" "”"}.note{border-radius:var(--radius-sheet);padding:var(--s-4);max-width:46rem}.note>*+*{margin-top:var(--s-2)}.note__lead{align-items:center;gap:var(--s-2);font-weight:700;display:flex}.note__lead svg{flex:none;width:20px;height:20px}.note--check{border:2px solid var(--ink);background:var(--sheet);border-left-width:6px}.note--good{background:var(--sheet-alt);border:1px solid var(--rule)}.note--safety{border:2px solid var(--ink);background:var(--sheet)}.notes>*+*{margin-top:var(--s-3)}.steps{counter-reset:step;gap:var(--s-4);max-width:var(--measure);margin-left:0;margin-right:0;padding:0;list-style:none;display:grid}.steps>li{counter-increment:step;gap:var(--s-3);grid-template-columns:28px 1fr;align-items:start;display:grid}.steps>li:before{content:counter(step);border:2px solid var(--ink);width:28px;height:28px;font:600 var(--fs-small)/1 var(--font-mono);justify-content:center;align-items:center;display:inline-flex}.steps .src-line{margin-top:2px}.on-page{gap:var(--s-1);padding:0;list-style:none;display:grid}.on-page a{align-items:center;min-height:32px;display:inline-flex}.in-short{padding-left:1.25em;list-style:outside}.in-short li+li{margin-top:var(--s-2)}.draft-banner{border:2px dashed var(--ink-soft);padding:var(--s-3) var(--s-4);font-family:var(--font-mono);font-size:var(--fs-small)}@media (width>=960px){.col-read-solo{max-width:816px}}.about-wall{justify-items:center;display:grid}.about-wall>svg{max-width:640px}@media print{@page{size:A4;margin:15mm}:root,:root[data-theme=dark]{--paper:#fff;--sheet:#fff;--sheet-alt:#fff;--ink:#000;--ink-soft:#333;--red:#000;--red-text:#000;--rule:#999;--sheet-edge:#999;--select:#eee}body{background:#fff;font-size:11pt}body>header,.ruler,[data-theme-toggle],[data-skip-link],[data-loop-replay],.products,.tool,.answer__actions,.jump-link,.explainer,.crumbs,.site-footer .footer-grid{display:none!important}.sheet{box-shadow:none;border:0;margin-top:8mm;padding:0}a[href^=http]:after{content:" (" attr(href) ")";overflow-wrap:anywhere;font-size:9pt}.print-line{font-family:var(--font-mono);margin-bottom:6mm;font-size:9pt;display:block}}
