:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:var(--lightningcss-light,#f5f3ed)var(--lightningcss-dark,#16181c);--paper-2:var(--lightningcss-light,#eeebe3)var(--lightningcss-dark,#1d2025);--ink:var(--lightningcss-light,#17191c)var(--lightningcss-dark,#e9e6dd);--muted:var(--lightningcss-light,#5f6369)var(--lightningcss-dark,#9a9c99);--rule:var(--lightningcss-light,#17191c29)var(--lightningcss-dark,#e9e6dd29);--rule-strong:var(--lightningcss-light,#17191c8c)var(--lightningcss-dark,#e9e6dd8c);--accent:var(--lightningcss-light,#1b3f8c)var(--lightningcss-dark,#8fb0ff);--red:var(--lightningcss-light,#b1261c)var(--lightningcss-dark,#ff8a7a);--green:var(--lightningcss-light,#1d6b3a)var(--lightningcss-dark,#7fd49b);--amber:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0c56a);--red-wash:var(--lightningcss-light,#b1261c12)var(--lightningcss-dark,#ff8a7a1a);--green-wash:var(--lightningcss-light,#1d6b3a14)var(--lightningcss-dark,#7fd49b1a);--amber-wash:var(--lightningcss-light,#8a5a001a)var(--lightningcss-dark,#f0c56a1f);--viewport:#0e1014;--viewport-grid:#ffffff0f;--mark:var(--lightningcss-light,#f3e7a8)var(--lightningcss-dark,#4a4218);--sans:"Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;font-family:var(--sans);font-size:15px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0}main{max-width:78rem;margin:0 auto;padding:1.25rem 1.25rem 5rem}h1{letter-spacing:-.02em;margin:0 0 .75rem;font-size:1.7rem;font-weight:800;line-height:1.15}h2{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--rule-strong);margin:1.75rem 0 .6rem;padding-bottom:.3rem;font-size:.8rem;font-weight:700}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}code,.mono{font-family:var(--mono);background:0 0;border:0;padding:0;font-size:.86em}.muted{color:var(--muted);font-weight:400}.inline-error,.row-error{color:var(--red)}.row-error{margin:0;font-size:.9rem}.small{font-size:.82rem}.site-header{border-bottom:2px solid var(--ink);background:var(--paper)}.site-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;max-width:78rem;margin:0 auto;padding:.75rem 1.25rem;display:flex}.brand{letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-size:1.05rem;font-weight:800;text-decoration:none}nav{align-items:baseline;gap:1.4rem;display:flex}nav a{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-bottom:2px solid #0000;padding:.2rem 0;font-size:.82rem;font-weight:600;text-decoration:none}nav a.active{color:var(--ink);border-bottom-color:var(--ink)}button,.button{font:inherit;letter-spacing:.08em;text-transform:uppercase;border:1.5px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:.4rem;padding:.5rem .95rem;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}button:hover:not(:disabled),.button:hover{background:var(--paper-2)}button:disabled{opacity:.4;cursor:not-allowed}.primary,.button.primary{background:var(--ink);color:var(--paper)}.primary:hover:not(:disabled){background:var(--ink);opacity:.88}button.link{color:var(--accent);text-transform:none;letter-spacing:0;font-weight:500;font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}button.chip,.chip{border:1px solid var(--rule-strong);color:var(--ink);font-family:var(--mono);letter-spacing:.02em;text-transform:none;background:0 0;border-radius:0;padding:.05rem .5rem;font-size:.74rem;font-weight:500;text-decoration:none;display:inline-block}.chip.active,.chip-part{border-color:var(--ink);background:var(--ink);color:var(--paper)}.stamp{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;border:2px solid;border-radius:2px;padding:.3rem .45rem .25rem;font-size:.68rem;font-weight:800;line-height:1;display:inline-block;transform:rotate(-1.5deg)}.stamp-red{color:var(--red);background:var(--red-wash)}.stamp-green{color:var(--green);background:var(--green-wash)}.stamp-amber{color:var(--amber);background:var(--amber-wash)}.stamp-ink{color:var(--ink)}.stamp-muted{color:var(--muted);transform:none}.crumbs{color:var(--muted);font-family:var(--mono);margin:0 0 .6rem;font-size:.78rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.6rem;display:flex}.page-head h1{margin:0}.intro{color:var(--muted);max-width:62rem;margin:0 0 1.25rem}.actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.panel{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule);margin-bottom:1rem;padding:.9rem 0}.panel>:last-child{margin-bottom:0}.panel h2{border:0;margin-top:0;padding:0}.panel-empty{text-align:center;color:var(--muted);padding:2.5rem 0}.panel-empty h2{color:var(--ink);border:0}.panel-error{border-color:var(--red);background:var(--red-wash);padding:.9rem 1rem}.panel-busy{border-color:var(--amber);background:var(--amber-wash);padding:.9rem 1rem}.loading{color:var(--muted);font-family:var(--mono);align-items:center;gap:.6rem;font-size:.85rem;display:flex}.spinner{vertical-align:-.1em;border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:.9rem;height:.9rem;animation:.8s linear infinite spin;display:inline-block}.spinner-small{width:.65rem;height:.65rem}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.notice{border:1.5px solid var(--green);background:var(--green-wash);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.6rem .9rem;display:flex}.caveat{border-top:1px dashed var(--rule-strong);border-bottom:1px dashed var(--rule-strong);color:var(--muted);margin:.75rem 0 1rem;padding:.5rem 0;font-size:.86rem}.caveat:before{content:"NOTE";font-family:var(--mono);letter-spacing:.1em;color:var(--ink);margin-right:.8rem;font-weight:600}.badge{font-family:var(--mono);white-space:nowrap;color:var(--muted);align-items:center;gap:.35rem;font-size:.76rem;font-weight:500;display:inline-flex}.badge-pending,.badge-processing{color:var(--amber)}.badge-complete{color:var(--green)}.badge-failed{color:var(--red)}.tag{border:1px solid var(--rule-strong);font-family:var(--mono);color:var(--ink);padding:0 .4rem;font-size:.72rem;display:inline-block}.tag-ok{color:var(--green);border-color:var(--green)}.tag-warn{color:var(--red);border-color:var(--red)}.tiles{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong);flex-wrap:wrap;gap:0 2.5rem;margin:0 0 1.5rem;padding:.6rem 0;display:flex}.tile{align-items:baseline;gap:.6rem;display:flex}.tile-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.tile-value{font-family:var(--mono);font-variant-numeric:tabular-nums;margin:0;font-size:1.35rem;font-weight:600}.howto{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule);margin:0 0 1.25rem;padding:.8rem 0}.howto ol{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.5rem 2rem;margin:0;padding:0;list-style:none;display:grid}.howto li{counter-increment:step;padding-left:2.2rem;position:relative}.howto li:before{content:counter(step, decimal-leading-zero);font-family:var(--mono);color:var(--muted);font-weight:600;position:absolute;top:.1rem;left:0}.howto p{color:var(--muted);margin:.7rem 0 0;font-size:.9rem}.track{border:1.5px solid var(--ink);grid-template-columns:repeat(6,1fr);margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.track-stage{border-right:1px solid var(--rule-strong);min-height:6rem;padding:.5rem .6rem .6rem}.track-stage:last-child{border-right:0}.track-dot{font-family:var(--mono);color:var(--muted);font-size:.72rem;font-weight:600}.track-dot:before{content:"OP "}.track-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:.1rem;font-size:.72rem;font-weight:700}.track-stage-busy .track-label,.track-stage-busy .track-dot{color:var(--ink)}.track-chips{flex-wrap:wrap;gap:.3rem;margin-top:.5rem;display:flex}@media (width<=60rem){.track{grid-template-columns:repeat(2,1fr)}.track-stage{border-bottom:1px solid var(--rule-strong)}}.table{border-collapse:collapse;border-top:1.5px solid var(--ink);width:100%;font-size:.92rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:.55rem .6rem .55rem 0}.table th{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--rule-strong);font-size:.7rem;font-weight:700}.table.numeric td:nth-child(n+4),.table.numeric td:first-child{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:.84rem}.table caption{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:.5rem 0 .3rem;font-size:.7rem;font-weight:700}.row-fail{background:var(--red-wash)}.parts td{vertical-align:middle}.part-link{font-family:var(--mono);color:var(--ink);font-weight:600;text-decoration:none}.sticky{z-index:2;background:var(--paper);border-bottom:1px solid var(--rule-strong);padding:.5rem 0;position:sticky;top:0}.facts{border:1.5px solid var(--ink);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:0;margin:.75rem 0 .5rem;display:grid}.facts .fact{display:contents}.facts dt,.facts dd{border-right:1px solid var(--rule-strong);padding:.35rem .6rem}.facts dt{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);grid-row:1;padding-bottom:0;font-size:.66rem;font-weight:700}.facts dd{font-family:var(--mono);grid-row:2;margin:0;padding-top:.1rem;font-size:.86rem}.facts dt:last-of-type,.facts dd:last-of-type{border-right:0}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;margin-bottom:1rem;display:grid}@media (width<=60rem){.hero{grid-template-columns:1fr}}.hero figure{border:1.5px solid var(--ink);flex-direction:column;margin:0;padding:0;display:flex}.hero figcaption{border-bottom:1px solid var(--rule-strong);padding:.45rem .7rem;font-size:.86rem}.hero figcaption strong{letter-spacing:.12em;text-transform:uppercase;margin-right:.5rem;font-size:.7rem;font-weight:700}.toolpath-head{border-bottom:1px solid var(--rule-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;display:flex}.toolpath-head figcaption{border:0;flex:14rem}.toolpath-ops{gap:.25rem;padding:0 .7rem;display:flex}.toolpath-svg{background:linear-gradient(var(--viewport-grid) 1px, transparent 1px) 0 0 / 24px 24px, linear-gradient(90deg, var(--viewport-grid) 1px, transparent 1px) 0 0 / 24px 24px, var(--viewport);flex:1;padding:.75rem}.toolpath-svg svg{width:100%;height:auto;display:block}.toolpath-tools{font-family:var(--mono);color:var(--muted);flex-wrap:wrap;gap:.2rem .9rem;margin:0;padding:.5rem .7rem 0;font-size:.74rem;list-style:none;display:flex}.swatch{vertical-align:middle;width:9px;height:9px;margin-right:.3rem;display:inline-block}.hero .small{margin:0;padding:.3rem .7rem .6rem}.deviation svg{width:100%;height:auto;padding:.6rem .6rem .2rem;display:block}.deviation .band{fill:var(--green-wash);stroke:var(--rule);stroke-width:.5px}.deviation .band-fail{fill:var(--red-wash);stroke:var(--red)}.deviation .band-mid{stroke:var(--rule-strong);stroke-dasharray:2 2}.deviation .drow{cursor:pointer}.deviation .drow-bg{fill:#0000}.deviation .drow:hover .drow-bg,.deviation .drow-selected .drow-bg{fill:var(--paper-2)}.deviation .drow-selected .rowlabel{fill:var(--ink);font-weight:600}.deviation .dot{fill:var(--ink)}.deviation .dot-fail{fill:var(--red)}.deviation .axis,.deviation .group,.deviation .rowlabel,.deviation .value{font-family:var(--mono);fill:var(--muted)}.deviation .axis{letter-spacing:.08em;text-transform:uppercase;font-size:8px}.deviation .group{letter-spacing:.12em;text-transform:uppercase;fill:var(--ink);font-size:8px;font-weight:600}.deviation .rowlabel{font-size:9px}.deviation .designator{fill:var(--ink);font-weight:600}.deviation .value{fill:var(--ink);font-size:9px}.deviation .value-fail{fill:var(--red);font-weight:600}.chart-note{color:var(--muted);margin:0;padding:.3rem .7rem .6rem}.panel-cta{border-top:1.5px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;display:flex}.panel-cta p{flex:24rem;margin:0}.tabs{border-bottom:1.5px solid var(--ink);z-index:1;background:var(--paper);flex-wrap:wrap;gap:0;margin:1rem 0 1.25rem;padding-top:.25rem;display:flex;position:sticky;top:3.6rem}.tab{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1.5px;padding:.45rem .9rem}.tab.active{color:var(--ink);border-bottom-color:var(--ink)}.tab-content{min-height:70vh}.progress{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.4rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.progress-step{border-top:3px solid var(--rule);padding-top:.3rem;font-size:.82rem}.progress-step.done{border-top-color:var(--ink)}.progress-step.current{border-top-color:var(--amber)}.progress-step.failed{border-top-color:var(--red);color:var(--red);grid-column:1/-1}.progress-name{letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:700;display:block}.progress-detail{color:var(--muted)}.usage{font-family:var(--mono)}.legend{color:var(--muted);margin:0 0 1rem;font-size:.9rem}.legend summary{cursor:pointer;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:700}.legend p{margin:.4rem 0 0}.line{border-top:1px solid var(--rule-strong);margin:0;padding:.9rem 0 1rem}.line:last-of-type{border-bottom:1px solid var(--rule-strong)}.line-head{flex-wrap:wrap;align-items:center;gap:.7rem;margin-bottom:.5rem;display:flex}.line-locator{font-family:var(--mono);font-size:1rem;font-weight:600}.line-type{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:700}.line-status{flex-wrap:wrap;align-items:center;gap:.7rem;margin-left:auto;display:inline-flex}.line-reason{color:var(--red);font-size:.86rem}.line-grid{grid-template-columns:8rem 1fr;gap:.5rem 1rem;margin:0;display:grid}.line-grid dt{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:.2rem;font-size:.68rem;font-weight:700}.line-grid dd{margin:0}.line-grid .line-text{border-left:2px solid var(--ink);margin:0;padding:.1rem 0 .1rem .9rem;font-size:.97rem}.line-meta{font-family:var(--mono);color:var(--muted);margin:.3rem 0 0;font-size:.76rem}.fidelity-acceptable{color:var(--green)}.fidelity-unmarked_quote,.fidelity-drift{color:var(--amber)}.fidelity-unsupported{color:var(--red)}button.help{width:1.05rem;height:1.05rem;color:inherit;font-family:var(--mono);letter-spacing:0;text-transform:none;vertical-align:middle;cursor:pointer;background:0 0;border:1px solid;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;font-size:.68rem;font-weight:600;line-height:1;display:inline-flex}button.help[aria-expanded=true]{background:currentColor}button.help[aria-expanded=true]:after{content:"?";color:var(--paper);position:absolute}.helpbox{border-left:2px solid var(--rule-strong);background:var(--paper-2);color:var(--muted);margin:.4rem 0 0;padding:.5rem .8rem;font-size:.86rem}.helpbox p{margin:0 0 .3rem}.helpbox p:last-child{margin-bottom:0}.checks{margin:0;padding:0;font-size:.86rem;list-style:none}.checks li{grid-template-columns:1.2rem 11rem 1fr;align-items:baseline;gap:.4rem;display:grid}.check-mark{font-family:var(--mono)}.check-pass .check-mark{color:var(--green)}.check-fail .check-mark,.check-fail .check-name{color:var(--red)}.check-name{font-weight:600}.check-detail{color:var(--muted)}.line-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.7rem;display:flex}.line-compact{font-size:.86rem;font-family:var(--mono);margin:.3rem 0}.requirement{padding:.8rem 0}.requirement .quote{border-left:2px solid var(--rule-strong);color:var(--muted);margin:.4rem 0;padding:0 0 0 .9rem;font-size:.9rem}@media (width<=40rem){.line-grid{grid-template-columns:1fr;gap:.2rem}}.document{white-space:pre-wrap;background:var(--paper-2);border:1.5px solid var(--ink);font-family:var(--mono);padding:1.25rem 1.5rem;font-size:.8rem;line-height:1.5;overflow-x:auto}.document .dim{color:var(--muted);opacity:.7}.document mark.clause{background:var(--mark);color:inherit;outline:2px solid var(--amber);outline-offset:1px}.about{max-width:50rem}.about .lead{font-size:1.1rem}.about li+li{margin-top:.4rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.titleblock{border:1.5px solid var(--ink);flex-wrap:wrap;margin:.75rem 0 .5rem;display:flex}.tb-cell{border-right:1px solid var(--rule-strong);flex:auto;min-width:7rem;padding:.35rem .7rem .4rem}.tb-cell:last-child{border-right:0}.tb-cell dt{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.64rem;font-weight:700}.tb-cell dd{font-family:var(--mono);word-break:break-word;margin:0;font-size:.86rem}.quote-text{font-size:.92rem}.stale-note{font-family:var(--mono);letter-spacing:.04em}.correction{border:1px dashed var(--rule-strong);background:var(--paper-2);align-items:flex-start;gap:.9rem;margin-top:.7rem;padding:.6rem .8rem;display:flex}.correction-note{margin:0 0 .2rem;font-weight:600}.correction p{margin:0}.changes{font-family:var(--mono);margin:.3rem 0 0;padding:0;font-size:.78rem;list-style:none}.changes li{grid-template-columns:9rem 1fr auto 1fr;align-items:baseline;gap:.5rem;display:grid}.change-field{color:var(--muted)}.change-before{color:var(--red);text-decoration:line-through}.change-after{color:var(--green);font-weight:600}.change-arrow{color:var(--muted)}.reset{border-top:1px dashed var(--rule-strong);margin-top:3rem;padding-top:1rem}.reset h2{border:0;margin-top:0}.reset p{max-width:50rem;margin:0 0 .6rem}.sublabel{font-family:var(--sans);letter-spacing:0;text-transform:none;color:var(--muted);opacity:.85;margin-top:-.05rem;font-size:.68rem;font-weight:400;display:block}.back{z-index:3;letter-spacing:.04em;background:var(--paper);border:1.5px solid var(--ink);color:var(--ink);margin:0 0 .6rem;padding:.3rem .7rem;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-block;position:sticky;top:.5rem}button.back{font-weight:600;text-decoration:none}.line{scroll-margin-top:8rem}.flash{animation:2s ease-out flash}@keyframes flash{0%{background:var(--mark)}to{background:0 0}}
