@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(./ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(./ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}:root{--void:#0a0c0f;--chassis:#12151a;--chassis-lift:#171b21;--rule:#242a33;--rule-bright:#333b46;--ink:#e9edf2;--ink-dim:#8b94a1;--ink-faint:#5a6270;--signal:#5ec1f5;--warning:#e0b567;--danger:#ef7d72;--sans:"IBM Plex Sans", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;color-scheme:dark;font-family:var(--sans);color:var(--ink);background:var(--void);--gap:.55rem;--pad:1.1rem;font-size:15px;line-height:1.45}*{box-sizing:border-box}html,body{height:100%}body{-webkit-font-smoothing:antialiased;margin:0}.layout{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(268px,312px) 1fr;height:100dvh;display:grid;overflow:hidden}@media (width<=760px){.layout{grid-template-rows:minmax(240px,42dvh) minmax(0,1fr);grid-template-columns:1fr}}.panel{min-height:0;padding:var(--pad) var(--pad) 1.2rem;background:var(--chassis);border-right:1px solid var(--rule);scrollbar-width:thin;scrollbar-color:var(--rule-bright) transparent;overflow-y:auto}.masthead h1{font-family:var(--mono);letter-spacing:.06em;color:var(--ink);margin:0;font-size:1rem;font-weight:500}.panel section{border-top:1px solid var(--rule);margin-top:.85rem;padding-top:.55rem}.panel h2{font-family:var(--mono);letter-spacing:.17em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .55rem;font-size:.64rem;font-weight:500}.advanced{border-top:1px solid var(--rule);margin-top:.85rem;padding-top:.55rem}.advanced summary{font-family:var(--mono);letter-spacing:.17em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer;align-items:center;gap:.4rem;font-size:.64rem;list-style:none;transition:color .12s;display:flex}.advanced summary::-webkit-details-marker{display:none}.advanced summary:before{content:"";border-bottom:1px solid;border-right:1px solid;width:7px;height:7px;transition:transform .16s;transform:rotate(-45deg)translate(-1px,-1px)}.advanced[open] summary:before{transform:rotate(45deg)translate(-1px,-1px)}.advanced summary:hover{color:var(--ink-dim)}.advanced__group{margin-top:.9rem}.advanced__group h3{color:var(--ink-faint);margin:0 0 .5rem;font-size:.7rem;font-weight:400}.field+.field,.field+.toggle,.toggle+.field,.select+.field,.field+.select{margin-top:var(--gap)}.field__head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.field__head label{color:var(--ink-dim);cursor:pointer;font-size:.78rem}.field__reading{flex:none;align-items:baseline;gap:.25rem;display:flex}.field__reading input{width:4.1rem;font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #0000;padding:0;font-size:.93rem;font-weight:500;transition:border-color .12s,color .12s}.field__reading input:hover{border-bottom-color:var(--rule-bright)}.field__reading input:focus{color:var(--signal);border-bottom-color:var(--signal);outline:none}.field__reading input::-webkit-outer-spin-button,.field__reading input::-webkit-inner-spin-button{appearance:none;margin:0}.field__reading input[type=number]{-moz-appearance:textfield;appearance:textfield}.field__unit{min-width:1.4rem;font-family:var(--mono);color:var(--ink-faint);font-size:.64rem}.field__hint{color:var(--ink-faint);margin:.1rem 0 0;font-size:.66rem;line-height:1.3}.field--invalid .field__reading input{color:var(--danger);border-bottom-color:var(--danger)}.track{appearance:none;cursor:ew-resize;background:0 0;width:100%;height:14px;margin:.3rem 0 0;display:block}.track:focus{outline:none}.track::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--signal) var(--travelled), var(--rule) var(--travelled));border-radius:1px;height:2px;transition:height .11s}.track::-moz-range-track{background:linear-gradient(to right, var(--signal) var(--travelled), var(--rule) var(--travelled));border-radius:1px;height:2px}.track::-webkit-slider-thumb{appearance:none;background:var(--ink);width:9px;height:9px;box-shadow:0 0 0 0 color-mix(in srgb, var(--signal) 45%, transparent);border:0;border-radius:50%;margin-top:-3.5px;transition:box-shadow .13s,background-color .13s,transform .13s}.track::-moz-range-thumb{background:var(--ink);border:0;border-radius:50%;width:9px;height:9px;transition:box-shadow .13s,transform .13s}.track:hover::-webkit-slider-thumb,.track:focus-visible::-webkit-slider-thumb{background:var(--signal);box-shadow:0 0 0 5px color-mix(in srgb, var(--signal) 18%, transparent);transform:scale(1.15)}.track:hover::-moz-range-thumb,.track:focus-visible::-moz-range-thumb{background:var(--signal);box-shadow:0 0 0 5px color-mix(in srgb, var(--signal) 18%, transparent);transform:scale(1.15)}.track:active::-webkit-slider-runnable-track{height:3px}.field--invalid .track::-webkit-slider-runnable-track,.field--invalid .track::-moz-range-track{background:linear-gradient(to right, var(--danger) var(--travelled), var(--rule) var(--travelled))}.choices{border:0;margin:0;padding:0}.choices+.choices,.choices+.field,.choices+.select{margin-top:.75rem}.choices legend{color:var(--ink-faint);margin-bottom:.3rem;padding:0;font-size:.7rem}.choices__grid{gap:.4rem;display:grid}.choices__grid--2{grid-template-columns:repeat(2,1fr)}.choices__grid--3{grid-template-columns:repeat(3,1fr)}.choices__grid--5{grid-template-columns:repeat(5,1fr);gap:.3rem}.choices__grid--3 .mode,.choices__grid--5 .mode{padding:.38rem .15rem .34rem;font-size:.66rem}.choices__grid--5 .mode{gap:.15rem;font-size:.62rem}.mode{color:var(--ink-dim);background:var(--void);border:1px solid var(--rule);cursor:pointer;border-radius:4px;flex-direction:column;align-items:center;gap:.25rem;padding:.45rem .3rem .4rem;font-size:.7rem;transition:color .13s,border-color .13s,background-color .13s;display:flex;position:relative}.mode input{opacity:0;width:1px;height:1px;position:absolute}.mode svg{color:var(--ink-faint);transition:color .13s}.mode:hover{color:var(--ink);border-color:var(--rule-bright)}.mode:has(input:checked){color:var(--ink);border-color:var(--signal);background:color-mix(in srgb, var(--signal) 9%, var(--void))}.mode:has(input:checked) svg{color:var(--signal)}.mode:has(input:focus-visible){outline:1px solid var(--signal);outline-offset:2px}.toggle,.select{color:var(--ink-dim);cursor:pointer;align-items:center;gap:.55rem;font-size:.78rem;display:flex}.select{justify-content:space-between}.select select{appearance:none;font-family:var(--mono);text-align:right;color:var(--ink);cursor:pointer;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='6' viewBox='0 0 9 6'%3E%3Cpath d='M1 1l3.5 3.5L8 1' fill='none' stroke='%238b94a1' stroke-width='1.3' stroke-linecap='round'/%3E%3C/svg%3E") right .1rem center no-repeat;border:0;border-bottom:1px solid #0000;padding:0 .95rem .05rem .3rem;font-size:.76rem;transition:border-color .12s,color .12s}.select select:hover{border-bottom-color:var(--rule-bright)}.select select:focus{color:var(--signal);border-bottom-color:var(--signal);outline:none}.toggle input{appearance:none;background:var(--void);border:1px solid var(--rule-bright);cursor:pointer;border-radius:2px;flex:none;place-content:center;width:13px;height:13px;margin:0;transition:border-color .13s;display:grid}.toggle input:before{content:"";background:var(--signal);border-radius:1px;width:5px;height:5px;transition:transform .13s cubic-bezier(.3,1.4,.5,1);transform:scale(0)}.toggle input:hover{border-color:var(--ink-dim)}.toggle input:checked{border-color:var(--signal)}.toggle input:checked:before{transform:scale(1)}.toggle input:focus-visible{outline:1px solid var(--signal);outline-offset:2px}.hint{color:var(--ink-faint);margin:.45rem 0 0;font-size:.66rem;line-height:1.35}.colophon{border-top:1px solid var(--rule);color:var(--ink-faint);margin-top:1.2rem;padding-top:.6rem;font-size:.64rem;line-height:1.5}.colophon p{margin:0}.colophon p+p{opacity:.75;margin-top:.2rem}.colophon__line{align-items:center;gap:.45rem;display:flex}.colophon a.colophon__source{color:var(--ink-faint);border-bottom:0;flex:none;display:flex}.colophon a.colophon__source:hover{color:var(--signal)}.colophon a{color:var(--ink-dim);border-bottom:1px solid var(--rule-bright);text-decoration:none;transition:color .12s,border-color .12s}.colophon a:hover{color:var(--signal);border-bottom-color:var(--signal)}.issues{margin:1.2rem 0 0;padding:0;list-style:none}.issue{border-left:2px solid;border-radius:0 3px 3px 0;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-top:.35rem;padding:.45rem .55rem;font-size:.7rem;line-height:1.35;display:flex}.issue-error{color:var(--danger);border-color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}.issue-warning{color:var(--warning);border-color:var(--warning);background:color-mix(in srgb, var(--warning) 9%, transparent)}.issue button{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:inherit;cursor:pointer;opacity:.75;background:0 0;border:1px solid;border-radius:2px;flex:none;padding:.05rem .4rem;font-size:.62rem}.issue button:hover{opacity:1}.error{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent);border-radius:3px;margin-top:1rem;padding:.55rem .7rem;font-size:.74rem}.stage{background:radial-gradient(ellipse 70% 62% at 50% 46%, #1b222c 0%, #111620 45%, var(--void) 100%);min-width:0;min-height:0;position:relative}.stage:before{content:"";background-image:linear-gradient(to right, var(--rule) 1px, transparent 1px), linear-gradient(to bottom, var(--rule) 1px, transparent 1px);opacity:.32;pointer-events:none;background-size:56px 56px;position:absolute;inset:0;mask-image:radial-gradient(75% 70%,#000 15%,#0000 80%)}.viewer{width:100%;height:100%;position:relative}.viewer canvas{width:100%;height:100%;display:block}.placeholder{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);pointer-events:none;place-content:center;margin:0;font-size:.72rem;display:grid;position:absolute;inset:0}.hud{z-index:1;position:absolute}.topbar{z-index:1;background:color-mix(in srgb, var(--chassis-lift) 92%, transparent);backdrop-filter:blur(16px)saturate(1.3);border-bottom:1px solid var(--rule);border-left:1px solid var(--rule);border-bottom-left-radius:5px;align-items:center;gap:.55rem;padding:.6rem .95rem;display:flex;position:absolute;top:0;right:0;box-shadow:0 10px 26px -18px #000}.topbar__label{font-family:var(--mono);letter-spacing:.17em;text-transform:uppercase;color:var(--ink-faint);margin-right:.2rem;font-size:.64rem}.topbar button{font-family:var(--mono);letter-spacing:.07em;color:var(--ink-dim);border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:3px;align-items:center;gap:.4rem;padding:.45rem .95rem;font-size:.82rem;font-weight:500;transition:border-color .12s,color .12s,background-color .12s;display:inline-flex}.topbar button:hover:not(:disabled){color:var(--signal);border-color:var(--signal);background:color-mix(in srgb, var(--signal) 8%, var(--void))}.topbar button:disabled{color:var(--ink-faint);border-color:var(--rule);cursor:not-allowed}.topbar__icon{width:1.05em;height:1.05em;color:var(--ink-faint);transition:color .12s}.topbar button:hover:not(:disabled) .topbar__icon{color:var(--signal)}.topbar button:disabled .topbar__icon{color:var(--rule-bright)}.topbar__note{font-family:var(--mono);letter-spacing:.04em;white-space:nowrap;color:var(--warning);font-size:.62rem}.share{font-family:var(--sans);white-space:nowrap;color:var(--ink-dim);border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:3px;align-items:center;gap:.32rem;padding:.26rem .6rem;font-size:.68rem;transition:color .12s,border-color .12s;display:inline-flex}.share__icon{color:var(--ink-faint);transition:color .12s;display:flex}.share:hover{color:var(--ink);border-color:var(--rule-bright)}.share:hover .share__icon{color:var(--signal)}.share--done,.share--done:hover{color:var(--signal);border-color:color-mix(in srgb, var(--signal) 45%, transparent)}.share--done .share__icon{color:var(--signal)}.hud--view{justify-content:flex-end;display:flex;bottom:6.6rem;right:1rem}.cube{flex-direction:column;align-items:center;gap:.15rem;display:flex}.cube__svg{overflow:visible}.cube__face{fill:color-mix(in srgb, var(--ink) 7%, transparent);stroke:var(--rule-bright);stroke-width:1px;stroke-linejoin:round;cursor:pointer;transition:fill .12s,stroke .12s}.cube__face:hover{fill:color-mix(in srgb, var(--signal) 26%, transparent);stroke:var(--signal)}.cube__reset{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:.1rem .35rem;font-size:.58rem;transition:color .12s}.cube__reset:hover{color:var(--signal)}.topbar button.topbar__primary{color:var(--ink);border-color:color-mix(in srgb, var(--ink) 52%, transparent)}.topbar button.topbar__primary .topbar__icon{color:var(--ink)}.topbar button.topbar__primary:disabled{color:var(--ink-faint);border-color:var(--rule)}.separation{z-index:1;font-family:var(--mono);color:var(--ink-faint);align-items:center;gap:.3rem;font-size:.7rem;display:flex;position:absolute;bottom:.9rem;left:1rem}.separation__icon{display:flex}.separation input{width:2.6rem;font:inherit;font-variant-numeric:tabular-nums;text-align:right;color:var(--ink-dim);border:0;border-bottom:1px dashed var(--rule-bright);appearance:textfield;background:0 0;padding:0 .15rem}.separation input::-webkit-outer-spin-button,.separation input::-webkit-inner-spin-button{appearance:none;margin:0}.separation input:focus{color:var(--signal);border-bottom-color:var(--signal);outline:none}.hud--stats{text-align:right;pointer-events:none;user-select:none;bottom:.9rem;right:1rem}.hud__figure{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.01em;color:color-mix(in srgb, var(--ink) 52%, transparent);margin:0;font-size:1.05rem;font-weight:400}.hud__unit{color:var(--ink-faint);margin-left:.4rem;font-size:.62rem}.hud__line{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink-faint);margin:.15rem 0 0;font-size:.7rem}.hud__line--faint{opacity:.6}.hud__sep{opacity:.45;margin:0 .4rem}.hud__aside{font-family:var(--sans);opacity:.8;margin-left:.4rem;font-size:.64rem}.hud__input{width:2.5rem;font:inherit;font-variant-numeric:tabular-nums;text-align:center;color:var(--ink-dim);border:0;border-bottom:1px dashed var(--rule-bright);pointer-events:auto;appearance:textfield;background:0 0;margin:0 .15rem;padding:0 .1rem}.hud__input::-webkit-outer-spin-button,.hud__input::-webkit-inner-spin-button{appearance:none;margin:0}.hud__input:focus{color:var(--signal);border-bottom-color:var(--signal);outline:none}@media (width<=760px){.hud--stats,.hud--view{display:none}}.masthead,.panel section,.hud,.topbar{animation:.42s cubic-bezier(.2,.7,.3,1) backwards rise}.panel section:first-of-type{animation-delay:40ms}.panel section:nth-of-type(2){animation-delay:80ms}.panel section:nth-of-type(3){animation-delay:.12s}.panel section:nth-of-type(4){animation-delay:.16s}.panel section:nth-of-type(5){animation-delay:.2s}.panel section:nth-of-type(6){animation-delay:.24s}.hud{animation-delay:.3s}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}
