:root{--paper:#f6f1e4;--surface:#fffdf6;--ink:#1e2a45;--pencil:#545863;--rule:#c9c2ae;--focus:#1971c2;--ok:#1e6b30;--bad:#b42318;--warn:#8a4b00;--accent-current:#8a4b00;--note:#1a5a96;--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--grid-line:#c9c2ae6b;--hover:#efe7d3;--tint-ok:#e6f1e4;--tint-bad:#fbe9e6;--tint-warn:#f9eddc;--tint-note:#e8eff7;--on-strong:#fffdf6;--overlay:#1e2a4580;--radius:.375rem;--shadow:0 .25rem 1rem #1e2a452e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-contrast=more]{--paper:#fff;--surface:#fff;--ink:#000;--pencil:#333;--rule:#595959;--focus:#0b4f9c;--ok:#0b5a23;--bad:#8f1a10;--warn:#6b3a00;--accent-current:#6b3a00;--note:#0b4f9c;--grid-line:transparent;--hover:#e6e6e6;--tint-ok:#fff;--tint-bad:#fff;--tint-warn:#fff;--tint-note:#fff;--on-strong:#fff;--overlay:#0009;--shadow:none}@media (prefers-contrast:more){html:not([data-contrast]){--paper:#fff;--surface:#fff;--ink:#000;--pencil:#333;--rule:#595959;--focus:#0b4f9c;--ok:#0b5a23;--bad:#8f1a10;--warn:#6b3a00;--accent-current:#6b3a00;--note:#0b4f9c;--grid-line:transparent;--hover:#e6e6e6;--tint-ok:#fff;--tint-bad:#fff;--tint-warn:#fff;--tint-note:#fff;--on-strong:#fff;--overlay:#0009;--shadow:none}}html[data-text-size=large]{font-size:125%}html[data-text-size=x-large]{font-size:150%}html[data-motion=reduce] *,html[data-motion=reduce] :before,html[data-motion=reduce] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){html:not([data-motion=normal]) *,html:not([data-motion=normal]) :before,html:not([data-motion=normal]) :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100vh;color:var(--ink);background-color:var(--paper);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);font-family:var(--font-ui);overflow-wrap:break-word;background-size:1.5rem 1.5rem;margin:0;font-size:1rem;line-height:1.5}h1,h2,h3,h4{line-height:1.25}a{color:var(--note);text-underline-offset:.15em;text-decoration-thickness:max(1px,.06em)}a:hover{text-decoration-thickness:.12em}code,kbd,pre{font-family:var(--font-mono)}:focus-visible,[data-focus-visible]{outline:3px solid var(--focus);outline-offset:2px}.tabs[data-focus-visible],.checkbox[data-focus-visible],.radio[data-focus-visible],:focus:not(:focus-visible){outline:none}.visually-hidden{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.muted{color:var(--pencil)}.hint{color:var(--pencil);margin:.4rem 0 0;font-size:.9375rem}.skip-link{z-index:200;background:var(--ink);color:var(--on-strong);border-radius:var(--radius);padding:.6rem 1rem;font-weight:600;position:absolute;top:-10rem;left:.75rem}.skip-link:focus{top:.75rem}.app-header{background:var(--surface);border-bottom:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;padding:.75rem 1rem;display:flex}.brand{align-items:center;gap:.6rem;min-width:0;display:flex}.mark{flex:none;width:2.75rem;height:2.75rem}.mark__zigzag{stroke:var(--ink)}.mark__check{stroke:var(--ok)}.brand__name{letter-spacing:.01em;margin:0;font-size:1.5rem}.brand__tagline{color:var(--pencil);margin:0}.header-actions{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.toolbar{flex-wrap:wrap;gap:.5rem;display:flex}.engine{color:var(--pencil);align-items:center;gap:.45rem;margin:0;font-size:.9375rem;display:inline-flex}.engine__dot{border:2px solid var(--pencil);border-radius:50%;flex:none;width:.65rem;height:.65rem}.engine--ready .engine__dot{background:var(--ok);border-color:var(--ok)}.engine--loading .engine__dot{border-color:var(--warn);animation:1.2s ease-in-out infinite alternate pulse}.engine--failed .engine__dot{background:var(--bad);border-color:var(--bad)}.engine--failed{color:var(--bad)}@keyframes pulse{0%{opacity:1}to{opacity:.35}}@media (max-width:599px){.app-header{gap:.5rem 1rem;padding:.5rem .75rem}.brand__tagline{display:none}}.button{border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface);min-width:2.75rem;min-height:2.75rem;color:var(--ink);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.4rem;padding:.35rem 1rem;font-weight:600;line-height:1.2;transition:background-color .12s;display:inline-flex}.button[data-hovered]{background:var(--hover)}.button[data-pressed]{transform:translateY(1px)}.button[data-disabled]{cursor:not-allowed;color:var(--pencil);border-style:dashed}.button--primary{background:var(--ink);border-color:var(--ink);color:var(--on-strong)}.button--primary[data-hovered]{background:var(--ink);text-underline-offset:.2em;text-decoration:underline}.button--stop{background:var(--bad);border-color:var(--bad)}.button--stop[data-hovered]{background:var(--bad)}.button--run{min-width:7.5rem}.button--fix{border-color:var(--ok);min-height:2.75rem;color:var(--ok)}.button .icon{flex:none;width:1.1em;height:1.1em}.link-button{min-width:1.5rem;min-height:1.5rem;color:var(--note);font:inherit;text-underline-offset:.15em;cursor:pointer;background:0 0;border:0;border-radius:.25rem;align-items:center;margin:0 -.3rem;padding:.1rem .3rem;font-weight:600;text-decoration:underline;text-decoration-thickness:max(1px,.06em);display:inline-flex}.link-button[data-hovered]{text-decoration-thickness:.15em}.icon-button{border-radius:var(--radius);width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;background:0 0;border:2px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button[data-hovered]{background:var(--hover);border-color:var(--pencil)}.icon-button .icon{width:1.25rem;height:1.25rem}.icon{vertical-align:-.15em;--icon-on:var(--surface);flex:none;width:1.1em;height:1.1em;display:inline-block}.layout{grid-template-columns:minmax(0,1fr);gap:1rem;max-width:100rem;margin:0 auto;padding:1rem;display:grid}.layout:focus{outline:none}@media (min-width:1000px){.layout{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start}}.pane{min-width:0}.pane__title{margin:0 0 .5rem;font-size:1.25rem}.pane--results{background:var(--surface);border:1px solid var(--pencil);border-radius:var(--radius);padding:.5rem .75rem 1rem}.editor-host{min-width:0}.card{background:var(--surface);border:1px solid var(--pencil);border-radius:var(--radius);margin-top:1rem;padding:.75rem 1rem 1rem}.card__title{margin:0 0 .25rem;font-size:1.125rem}.tab-list{border-bottom:2px solid var(--pencil);flex-wrap:wrap;gap:.25rem .5rem;margin-bottom:.25rem;display:flex}.tab{border-radius:var(--radius) var(--radius) 0 0;min-height:2.75rem;color:var(--ink);cursor:pointer;border:2px solid #0000;border-bottom-width:4px;align-items:center;margin-bottom:-2px;padding:.4rem .75rem;font-weight:500;display:inline-flex}.tab[data-hovered]{background:var(--hover)}.tab[data-selected]{border-bottom-color:var(--ink);font-weight:700}.tab-panel{padding-top:.5rem}.tab-panel[data-focus-visible]{outline-offset:.25rem}.panel__title{margin:.25rem 0 .5rem;font-size:1.25rem}.trap-group__title{margin:1rem 0 .5rem;font-size:1.0625rem}.trap-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.trap{background:var(--surface);border:1px solid var(--pencil);border-left:.4rem solid var(--pencil);border-radius:var(--radius);padding:.6rem .85rem .75rem}.trap--error{border-left-color:var(--bad)}.trap--warning{border-left-color:var(--warn)}.trap--info{border-left-color:var(--note)}.trap p{margin:.35rem 0}.trap__title{flex-wrap:wrap;align-items:baseline;gap:.25rem .6rem;margin:0 0 .25rem;font-size:1.0625rem;display:flex}.trap__fixes{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.severity{white-space:nowrap;align-items:center;gap:.3rem;font-weight:700;display:inline-flex}.severity--error{color:var(--bad)}.severity--warning{color:var(--warn)}.severity--info{color:var(--note)}.status-line{align-items:center;gap:.5rem;display:flex}.status-line--ok{color:var(--ok);font-weight:600}.banner{border:2px solid var(--pencil);border-radius:var(--radius);border-left-width:.5rem;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;margin:.5rem 0 .75rem;padding:.6rem .85rem;display:flex}.banner__word{align-items:center;gap:.35rem;font-weight:700;display:inline-flex}.banner--finished{border-color:var(--ok);background:var(--tint-ok)}.banner--finished .banner__word{color:var(--ok)}.banner--unreliable{border-color:var(--warn);background:var(--tint-warn)}.banner--unreliable .banner__word{color:var(--warn)}.banner--error,.banner--failed{border-color:var(--bad);background:var(--tint-bad)}.banner--error .banner__word,.banner--failed .banner__word{color:var(--bad)}.banner--stopped{background:var(--surface)}.banner--empty{border-color:var(--note);background:var(--tint-note)}.summary{font-size:1.0625rem}.table-wrap{max-width:100%;margin:.75rem 0;position:relative;overflow-x:auto}.table-wrap--scrolls{background:linear-gradient(to right, var(--surface) 40%, transparent) left center / 1.5rem 100% no-repeat local, linear-gradient(to left, var(--surface) 40%, transparent) right center / 1.5rem 100% no-repeat local, radial-gradient(farthest-side at 0 50%, #00000040, transparent) left center / .6rem 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, #00000040, transparent) right center / .6rem 100% no-repeat scroll, var(--surface)}.table-wrap--scrolls>.table{background:0 0}.table{border-collapse:collapse;background:var(--surface);width:100%}.table caption{text-align:left;caption-side:top;padding:0 0 .35rem;font-weight:700}.table th,.table td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:.4rem .55rem}.table thead th{border-bottom:2px solid var(--ink);font-size:.9375rem}.table tbody th{font-weight:600}.table .num{font-variant-numeric:tabular-nums}.table code{overflow-wrap:normal}.table .num code{white-space:nowrap}.code{font-family:var(--font-mono);font-size:.9375em}.node-name .swatch{vertical-align:-.1em;margin-right:.4rem}.swatch{border:1px solid var(--ink);border-radius:.2rem;flex:none;width:.95rem;height:.95rem;display:inline-block}.swatch--none{background:0 0;border-style:dashed}.emph{text-underline-offset:.18em;font-weight:700;text-decoration:underline;text-decoration-thickness:max(1px,.08em)}.explain{border-bottom:1px solid var(--rule);padding:.25rem 0 .75rem}.explain__heading{margin:.75rem 0 .25rem;font-size:1.0625rem}.explain__summary{margin:.25rem 0}.explain__notes{margin:.25rem 0;padding-left:1.25rem}.explain__go{margin-top:.25rem}.messages h3{margin:1rem 0 .5rem;font-size:1.0625rem}.message-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.message{border:1px solid var(--pencil);border-radius:var(--radius);background:var(--surface);border-left-width:.35rem;margin:.5rem 0;padding:.5rem .75rem}.message p{margin:.25rem 0}.message--error,.message--problem{border-left-color:var(--bad)}.message--warning{border-left-color:var(--warn)}.message--note{border-left-color:var(--note)}.disclosure{border:1px dashed var(--pencil);border-radius:var(--radius);margin:.75rem 0;padding:.25rem .75rem}.disclosure>summary{cursor:pointer;align-items:center;gap:.5rem;min-height:2.75rem;font-weight:600;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:before{content:"▸" / "";flex:none;transition:transform .15s;display:inline-block}.disclosure[open]>summary:before{transform:rotate(90deg)}.command{background:var(--paper);border:1px solid var(--pencil);border-radius:var(--radius);white-space:pre-wrap;margin:.25rem 0 .75rem;padding:.5rem .75rem}.printout{background:var(--paper);border:1px solid var(--pencil);border-radius:var(--radius);white-space:pre-wrap;overflow-wrap:anywhere;max-height:24rem;margin:.25rem 0 .75rem;padding:.5rem .75rem;font-size:.875rem;overflow:auto}.plots{grid-template-columns:minmax(0,1fr);gap:1.5rem;display:grid}.notice{background:var(--surface);border:2px solid var(--note);border-radius:var(--radius);border-left-width:.5rem;margin:0 0 .75rem;padding:.5rem .75rem .75rem}.notice--problem{border-color:var(--bad)}.notice__head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.notice__title{align-items:center;gap:.4rem;margin:.55rem 0 0;font-size:1.0625rem;display:flex}.notice--problem .notice__title .icon{color:var(--bad)}.notice--info .notice__title .icon{color:var(--note)}.notice p,.notice ul{margin:.35rem 0 0}.update-banner{background:var(--tint-note);border-bottom:2px solid var(--note);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;padding:.5rem 1rem;display:flex}.update-banner p{margin:0;font-weight:600}.popover{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);min-width:min(16rem,100vw - 2rem);max-width:calc(100vw - 2rem);max-height:min(70vh,32rem);box-shadow:var(--shadow);overflow:auto}.menu{outline:none;padding:.25rem}.menu__section+.menu__section{border-top:1px solid var(--rule);margin-top:.25rem;padding-top:.25rem}.menu__header{color:var(--pencil);padding:.5rem .75rem .25rem;font-size:.875rem;font-weight:700}.menu__item{cursor:pointer;border-radius:.25rem;outline:none;align-items:center;min-height:2.75rem;padding:.4rem .75rem;display:flex}.menu__item[data-focused]{background:var(--ink);color:var(--on-strong)}.modal-overlay{z-index:100;background:var(--overlay);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);width:100%;max-width:36rem;max-height:calc(100dvh - 2rem);box-shadow:var(--shadow);overflow:auto}.modal--wide{max-width:50rem}.dialog{outline:none;padding:.5rem 1rem 1rem}.dialog__head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:.5rem;padding-bottom:.25rem;display:flex}.dialog__title{margin:0;font-size:1.375rem}.dialog__body h3{margin:1.25rem 0 .4rem;font-size:1.0625rem}.dialog__foot{justify-content:flex-end;margin-top:1rem;display:flex}.field{gap:.3rem;margin:.75rem 0;display:grid}.field__label,.radio-group__label{font-weight:700}.field__input{border:2px solid var(--ink);border-radius:var(--radius);background:var(--paper);width:100%;min-height:2.75rem;color:var(--ink);font:inherit;padding:.4rem .6rem}.field__input--mono{font-family:var(--font-mono);font-size:.9375rem}.row{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.row__status{color:var(--ok);margin:0;font-weight:600}.checkbox,.radio{cursor:pointer;align-items:center;gap:.6rem;min-height:2.75rem;display:flex}.checkbox__box{border:2px solid var(--ink);background:var(--surface);border-radius:.25rem;flex:none;width:1.4rem;height:1.4rem;display:inline-flex}.checkbox__box svg{fill:none;width:100%;height:100%;stroke:var(--on-strong);stroke-width:3px;stroke-dasharray:22;stroke-dashoffset:22px}.checkbox[data-selected] .checkbox__box{background:var(--ink)}.checkbox[data-selected] .checkbox__box svg{stroke-dashoffset:0}.checkbox[data-focus-visible] .checkbox__box,.radio[data-focus-visible] .radio__dot{outline:3px solid var(--focus);outline-offset:2px}.radio-group{margin:1rem 0}.radio-group__options{flex-wrap:wrap;gap:0 1.25rem;display:flex}.radio__dot{border:2px solid var(--ink);background:var(--surface);border-radius:50%;flex:none;width:1.4rem;height:1.4rem}.radio[data-selected] .radio__dot{border-width:.45rem}kbd{font-size:.9375em}.app-footer{max-width:100rem;color:var(--pencil);margin:0 auto;padding:.5rem 1rem 2rem}.footer-links{flex-wrap:wrap;gap:.25rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.footer-links li{align-items:center;min-height:1.5rem;display:flex}.footer-links a{align-items:center;min-height:1.5rem;display:inline-flex}.boot{max-width:40rem;margin:3rem auto;padding:0 1rem}@media (forced-colors:active){body{background-image:none}.button,.icon-button,.tab,.trap,.banner,.notice,.message,.popover,.modal,.field__input,.checkbox__box,.radio__dot{border-color:canvastext}.tab:not([data-selected]){border-color:#0000}.tab[data-selected]{border-bottom-color:highlight}.menu__item[data-focused]{outline-offset:-2px;outline:2px solid highlight}.checkbox[data-selected] .checkbox__box,.radio[data-selected] .radio__dot{background:highlight;border-color:highlight}:focus-visible,[data-focus-visible]{outline-color:highlight}.swatch{forced-color-adjust:none}.icon{forced-color-adjust:auto}}
