@font-face{font-family:Majesty;src:url(/fonts/Majesty-Bold.woff2) format("woff2"),url(/fonts/Majesty-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}:root{--ink-1: #16191C;--ink-2: #2B2F33;--ink-3: #555B61;--ink-4: #8B9299;--ink-5: #B9C0C7;--paper-white: #FFFFFF;--paper-0: #F1F2F3;--paper-1: #EEF1F5;--paper-2: #E6EBF1;--paper-edge: #D3DAE2;--red-1: #B3251E;--red-2: #D24A3C;--blue-1: #1F4E9C;--blue-2: #345482;--blue-3: #7D9BC4;--text-strong: var(--ink-1);--text-body: var(--ink-2);--text-muted: var(--ink-3);--text-faint: var(--ink-4);--text-reverse: var(--paper-1);--surface-page: var(--paper-1);--surface-card: var(--paper-white);--surface-sheet: var(--paper-1);--surface-sunk: var(--paper-2);--surface-inverse: var(--ink-1);--border-hairline: var(--paper-edge);--border-strong: var(--ink-1);--border-input: var(--ink-4);--accent-dimension: var(--red-1);--accent-reverse: var(--red-2);--annotation: var(--blue-2);--wash: var(--blue-3);--link: var(--blue-1);--link-hover: var(--red-1);--focus-ring: var(--blue-1)}:root{--font-display: "Majesty", "Source Serif 4", Georgia, serif;--font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;--font-sans: "IBM Plex Sans", "Helvetica Neue", system-ui, sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", Menlo, monospace;--weight-regular: 400;--weight-semibold: 600;--weight-bold: 700;--size-display: 52px;--lh-display: 1.08;--ls-display: .005em;--size-h2: 30px;--size-h3: 22px;--size-lead: 19px;--lh-lead: 1.5;--size-body: 17px;--lh-body: 1.55;--size-small: 15px;--size-eyebrow: 12px;--ls-eyebrow: .18em;--size-label: 12px;--ls-label: .14em;--size-dimension: 16px;--size-annotation: 15px;--size-code: 13px;--lh-code: 1.65;--type-display: var(--weight-bold) var(--size-display)/var(--lh-display) var(--font-display);--type-h2: var(--weight-bold) var(--size-h2)/1.18 var(--font-display);--type-h3: var(--weight-bold) var(--size-h3)/1.28 var(--font-display);--type-lead: var(--weight-regular) var(--size-lead)/var(--lh-lead) var(--font-sans);--type-body: var(--weight-regular) var(--size-body)/var(--lh-body) var(--font-sans);--type-small: var(--weight-regular) var(--size-small)/1.5 var(--font-sans);--type-eyebrow: var(--weight-regular) var(--size-eyebrow)/1.4 var(--font-mono);--type-label: 500 var(--size-label)/1.4 var(--font-mono);--type-dimension: var(--weight-regular) var(--size-dimension)/1.3 var(--font-mono);--type-annotation: var(--weight-regular) var(--size-annotation)/1.4 var(--font-mono);--type-code: var(--weight-regular) var(--size-code)/var(--lh-code) var(--font-mono)}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 22px;--space-6: 28px;--space-7: 40px;--space-8: 56px;--space-9: 64px;--space-10: 96px;--grid-minor: 48px;--grid-major: 240px;--page-max: 1200px;--page-gutter: 40px;--measure: 72ch;--section-gap: var(--space-10);--block-gap: var(--space-7);--stack-gap: var(--space-4)}:root{--radius: 0;--hairline: 1px solid var(--border-hairline);--hairline-strong: 1px solid var(--ink-1);--rule-dimension: 1px solid var(--red-1);--shadow-lift: 0 1px 2px rgba(22, 25, 28, .06);--ease: cubic-bezier(.2, 0, .2, 1);--dur-colour: .12s;--dur-move: .2s;--transition-colour: color var(--dur-colour) var(--ease), background-color var(--dur-colour) var(--ease), border-color var(--dur-colour) var(--ease);--focus-outline: 1px solid var(--focus-ring);--focus-offset: 2px;--grid-line-minor: rgba(52, 84, 130, calc(.05 * var(--tweak-grid-opacity, 1)));--grid-line-major: rgba(52, 84, 130, calc(.085 * var(--tweak-grid-opacity, 1)));--grid-pitch-minor: calc(var(--grid-minor) * var(--tweak-grid-scale, 1));--grid-pitch-major: calc(var(--grid-major) * var(--tweak-grid-scale, 1));--sheet-grid: repeating-linear-gradient(to right, var(--grid-line-minor) 0 1px, transparent 1px var(--grid-pitch-minor)), repeating-linear-gradient(to bottom, var(--grid-line-minor) 0 1px, transparent 1px var(--grid-pitch-minor)), repeating-linear-gradient(to right, var(--grid-line-major) 0 1px, transparent 1px var(--grid-pitch-major)), repeating-linear-gradient(to bottom, var(--grid-line-major) 0 1px, transparent 1px var(--grid-pitch-major))}:root{--tweak-paper-temp: -8;--tweak-page-lightness: 95%;--tweak-accent-amount: 1.1;--tweak-ink-contrast: 1.05;--tweak-ink-density: 1.06;--tweak-grid-opacity: 0;--tweak-column-opacity: .5;--tweak-field-opacity: .4;--tweak-frosted-glass: 3px;--tweak-wash-extent: 80%;--tweak-wash-opacity: .84;--tweak-grid-scale: 1;--plate-baked-accent: 1.1;--plate-baked-contrast: 1.05;--plate-baked-density: 1.06;--plate-baked-temp: -8;--plate-filter: saturate(calc(var(--tweak-accent-amount) / var(--plate-baked-accent))) contrast(calc(var(--tweak-ink-contrast) / var(--plate-baked-contrast))) brightness(calc(var(--tweak-ink-density) / var(--plate-baked-density)));--plate-cool-veil: calc(max(0, (-1 * var(--tweak-paper-temp)) + var(--plate-baked-temp)) / 52 * .5);--plate-warm-veil: calc(max(0, var(--tweak-paper-temp) - var(--plate-baked-temp)) / 68 * .5);--plate-veil-cool-colour: #C9DCF2;--plate-veil-warm-colour: #F6E3C4;--paper-cool-mix: calc(max(0, -1 * var(--tweak-paper-temp)) / 60);--paper-warm-mix: calc(max(0, var(--tweak-paper-temp)) / 60);--paper-tuned: hsl( calc(213 - var(--paper-warm-mix) * 175) calc((var(--paper-cool-mix) + var(--paper-warm-mix)) * 22%) var(--tweak-page-lightness) )}:root{--tweak-grid-opacity: .6;--primary: var(--blue-1);--primary-hover: var(--red-1);--primary-ink: var(--paper-white)}@media(prefers-color-scheme:dark){:root{--surface-page: var(--ink-1);--surface-sheet: var(--ink-1);--surface-card: color-mix(in srgb, var(--ink-2) 45%, var(--ink-1));--surface-sunk: color-mix(in srgb, #000 24%, var(--ink-1));--surface-inverse: var(--paper-1);--text-strong: var(--paper-1);--text-body: var(--ink-5);--text-muted: var(--ink-4);--text-faint: color-mix(in srgb, var(--ink-4) 74%, var(--ink-1));--text-reverse: var(--ink-1);--border-hairline: color-mix(in srgb, var(--ink-5) 20%, var(--ink-1));--border-strong: var(--ink-5);--border-input: color-mix(in srgb, var(--ink-4) 60%, var(--ink-1));--accent-dimension: var(--red-2);--annotation: var(--blue-3);--link: var(--blue-3);--link-hover: var(--red-2);--focus-ring: var(--blue-3);--primary: var(--blue-3);--primary-hover: var(--red-2);--primary-ink: var(--ink-1);--grid-line-minor: rgba(160, 186, 220, calc(.05 * var(--tweak-grid-opacity, 1)));--grid-line-major: rgba(160, 186, 220, calc(.085 * var(--tweak-grid-opacity, 1)))}}*{box-sizing:border-box}html{background:var(--surface-page)}body{position:relative;margin:0;background:var(--surface-page);background-image:var(--sheet-grid);color:var(--text-body);accent-color:var(--primary);font:var(--type-body);-webkit-font-smoothing:antialiased}input,select,textarea,button,progress,.btn,.drop,.note{border-radius:var(--radius)}h1,h2,h3{margin:0;color:var(--text-strong)}h1{font:var(--type-display);font-size:clamp(32px,4.6vw,var(--size-display));letter-spacing:var(--ls-display);max-width:18ch}h2{font:var(--type-h2);font-size:clamp(23px,2.6vw,var(--size-h2))}h3{font:var(--type-h3)}p{margin:0}a{color:var(--link);transition:var(--transition-colour)}a:hover{color:var(--link-hover)}.masthead{position:absolute;top:0;left:0;right:0;z-index:2;pointer-events:none;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);align-items:baseline;justify-content:space-between;max-width:var(--page-max);margin:0 auto;padding:var(--space-6) var(--page-gutter) var(--space-4);border-bottom:var(--hairline)}.masthead a,.masthead button{pointer-events:auto}.wordmark{display:flex;align-items:baseline;gap:var(--space-3);text-decoration:none;color:inherit}.wordmark:hover{color:inherit}.wordmark .house{font:var(--weight-bold) 15px/1 var(--font-serif);letter-spacing:.06em;color:var(--text-strong);text-transform:uppercase}.wordmark .tool{font:var(--type-label);letter-spacing:.28em;color:var(--text-muted);text-transform:uppercase}.session{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-3);font:var(--type-label);letter-spacing:.06em;color:var(--text-muted)}.wrap{max-width:var(--page-max);margin:0 auto;padding:var(--space-10) var(--page-gutter) var(--space-10)}@media(max-width:720px){.wrap{padding-top:132px;padding-left:var(--space-5);padding-right:var(--space-5)}.masthead{padding-left:var(--space-5);padding-right:var(--space-5)}}.eyebrow{margin-bottom:var(--space-4);font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}.claim{margin-top:var(--space-5);font:var(--type-annotation);color:var(--annotation)}.claim span{border-bottom:1px solid currentColor;padding-bottom:2px}.lede{margin-top:var(--space-5);max-width:var(--measure);font:var(--type-lead);color:var(--text-body)}.step{border-top:var(--hairline-strong);margin-top:var(--section-gap);padding-top:var(--space-6)}.step-head{display:flex;align-items:baseline;gap:var(--space-4);margin-bottom:var(--block-gap)}.mark{flex:none;font:var(--type-label);letter-spacing:var(--ls-label);color:var(--text-muted);font-variant-numeric:tabular-nums}.drop{position:relative;display:block;border:1px dashed var(--border-input);background:var(--surface-sunk);padding:var(--space-8) var(--space-6);cursor:pointer;transition:var(--transition-colour)}.drop:hover,.drop:focus-within,.drop.over{border-color:var(--primary);border-style:solid}.drop.over{background:var(--surface-card)}.drop input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.drop .big{display:block;font:var(--type-lead);color:var(--text-strong)}.drop .small{display:block;margin-top:var(--space-2);max-width:var(--measure);font:var(--type-small);color:var(--text-muted)}.filechip{display:block;margin-top:var(--space-4);padding-top:var(--space-3);border-top:var(--hairline);font:var(--type-dimension);color:var(--text-strong)}fieldset{border:0;border-top:var(--hairline);padding:var(--space-6) 0 0;margin:0 0 var(--block-gap)}fieldset:first-of-type{border-top:0;padding-top:0}legend{padding:0;margin-bottom:var(--space-4);font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}.grid{display:grid;gap:var(--space-5) var(--space-6);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}label.f{display:block;margin-bottom:var(--space-2);font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-muted)}input[type=text],input[type=email],select,textarea{width:100%;padding:10px 12px;font:var(--type-small);color:var(--text-strong);background:var(--surface-card);border:1px solid var(--border-input);transition:var(--transition-colour)}input[type=text]:hover,select:hover,textarea:hover{border-color:var(--text-strong)}select:disabled,option:disabled,input:disabled{color:var(--text-faint)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,.drop:focus-within{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.check{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) 0;border-top:var(--hairline)}.check:first-of-type{margin-top:var(--space-2)}.check input{flex:none;margin-top:3px;width:15px;height:15px}.check .h{display:block;font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-strong)}.check .d{display:block;margin-top:var(--space-1);max-width:var(--measure);font:var(--type-small);color:var(--text-muted)}.hint{margin-top:var(--space-2);max-width:var(--measure);font:var(--type-small);color:var(--text-muted)}.row{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-4);align-items:center;margin-top:var(--space-5)}button,.btn{display:inline-block;padding:12px 22px;border:1px solid var(--primary);background:var(--primary);color:var(--primary-ink);font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;text-decoration:none;cursor:pointer;transition:var(--transition-colour)}button:hover:not(:disabled),.btn:hover{border-color:var(--primary-hover);background:var(--primary-hover);color:var(--paper-white)}button:disabled,.btn[aria-disabled=true]{border-color:var(--border-hairline);background:var(--surface-sunk);color:var(--text-faint);cursor:not-allowed}button.ghost,.btn.ghost{background:transparent;border-color:var(--border-input);color:var(--text-strong)}button.ghost:hover:not(:disabled),.btn.ghost:hover{background:var(--text-strong);border-color:var(--text-strong);color:var(--text-reverse)}button.inline{padding:0;border:0;background:none;color:var(--text-muted);border-bottom:1px solid var(--border-hairline);letter-spacing:.06em}button.inline:hover:not(:disabled){background:none;color:var(--link-hover);border-bottom-color:var(--link-hover)}progress{display:block;width:100%;height:3px;border:0;background:var(--surface-sunk);appearance:none}progress::-webkit-progress-bar{background:var(--surface-sunk)}progress::-webkit-progress-value{background:var(--primary)}progress::-moz-progress-bar{background:var(--primary)}.stages{list-style:none;margin:var(--space-6) 0 0;padding:0}.stages li{display:flex;gap:var(--space-3);align-items:baseline;padding:var(--space-2) 0;border-top:var(--hairline);font:var(--type-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.stages li:first-child{border-top:0}.stages li .dot{flex:none;width:9px;height:9px;border:1px solid var(--border-input);align-self:center}.stages li.on{color:var(--text-strong)}.stages li.on .dot{border-color:var(--primary);background:var(--primary)}.stages li.ok .dot{border-color:var(--text-muted);background:var(--text-muted)}.figures{margin-top:var(--space-5);font:var(--type-label);font-size:var(--size-code);line-height:var(--lh-code);letter-spacing:.04em;color:var(--text-muted);font-variant-numeric:tabular-nums}.dimrun{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 var(--space-5);margin:var(--block-gap) 0}@media(max-width:760px){.dimrun{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:var(--space-6)}}.dim{display:grid;gap:var(--space-2);color:var(--text-strong)}.dim .fig{font:var(--type-dimension);font-size:30px;font-variant-numeric:tabular-nums;color:inherit}.dim .rule{position:relative;display:block;height:1px;background:currentColor}.dim .rule:before,.dim .rule:after{content:"";position:absolute;top:-5px;width:1px;height:11px;background:currentColor}.dim .rule:before{left:0}.dim .rule:after{right:0}.dim .slash{position:absolute;inset:0;pointer-events:none}.dim .slash:before,.dim .slash:after{content:"";position:absolute;top:-4px;width:1px;height:9px;background:currentColor;transform:rotate(45deg)}.dim .slash:before{left:0}.dim .slash:after{right:0}.dim .lab{font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-muted)}.dim.CRITICAL,.dim.HIGH{color:var(--accent-dimension)}.dim.MEASURED{color:var(--annotation)}.dim.MEDIUM,.dim.LOW,.dim.VERIFIED{color:var(--text-strong)}.dim.zero{color:var(--text-muted)}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font:var(--type-small)}th{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:var(--hairline-strong);font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-muted);white-space:nowrap}td{padding:var(--space-3);border-bottom:var(--hairline);border-top:1px solid transparent;vertical-align:top;color:var(--text-body)}td:first-child,td:nth-child(2){white-space:nowrap}th:first-child{width:76px}th:nth-child(2){width:70px}th:nth-child(3){width:112px}th:last-child{width:190px}td .title{display:block;color:var(--text-strong);transition:var(--transition-colour)}td .body{display:block;margin-top:2px;max-width:var(--measure)}td.ref{font:var(--type-code);color:var(--text-muted)}tbody tr:hover td{border-top-color:var(--accent-dimension)}tbody tr:hover td .title{color:var(--accent-dimension)}td.sev{font:var(--type-label);letter-spacing:var(--ls-label);white-space:nowrap;color:var(--text-body)}td.sev.CRITICAL,td.sev.HIGH{color:var(--accent-dimension)}td.sev.CRITICAL{font-weight:var(--weight-bold)}td.sev.MEASURED{color:var(--annotation)}td.sev.MEDIUM{color:var(--text-strong);font-weight:var(--weight-semibold)}td.sev.LOW{color:var(--text-muted);font-weight:var(--weight-regular)}tbody tr td:first-child{border-left:2px solid transparent;padding-left:10px}tbody tr.CRITICAL td:first-child,tbody tr.HIGH td:first-child{border-left-color:var(--accent-dimension)}tbody tr.MEASURED td:first-child{border-left-color:var(--annotation)}tbody tr.MEDIUM td:first-child,tbody tr.VERIFIED td:first-child{border-left-color:var(--border-hairline)}.tick{display:inline-block;width:9px;height:5px;margin-right:6px;border-left:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(-45deg);vertical-align:3px}.xtick{position:relative;display:inline-block;width:9px;height:9px;margin-right:var(--space-2);color:var(--accent-dimension);vertical-align:-1px}.xtick:before,.xtick:after{content:"";position:absolute;background:currentColor}.xtick:before{left:0;top:4px;width:9px;height:1px}.xtick:after{top:0;left:4px;width:1px;height:9px}.annotations{list-style:none;margin:var(--space-3) 0 0;padding:0}.annotations li{padding:var(--space-2) 0;border-top:var(--hairline);font:var(--type-small);color:var(--text-body)}.annotations li:first-child{border-top:0}.annot-name{font:var(--type-annotation);color:var(--annotation);border-bottom:1px solid currentColor;padding-bottom:1px}.note{border:var(--hairline);border-left:2px solid var(--text-strong);background:var(--surface-card);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4);font:var(--type-small);color:var(--text-body);max-width:92ch}.note b{color:var(--text-strong);font-weight:var(--weight-semibold)}.note.bad{border-left-color:var(--accent-dimension)}.note.bad b{color:var(--accent-dimension)}.note.warn{border-left-color:var(--annotation)}.note.warn b{color:var(--annotation)}.note ul{margin:var(--space-2) 0 0;padding-left:var(--space-6)}.note .row{margin-top:var(--space-3)}code{font:var(--type-code);color:var(--text-strong)}footer{margin-top:var(--section-gap);padding-top:var(--space-4);border-top:var(--hairline);max-width:92ch;font:var(--type-small);color:var(--text-muted)}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
