.auto-lab{--lab-green:#258453;--lab-ink:#163b2c;--lab-muted:#5c7969;--lab-amber:#b37731;--lab-duration:5.2s;color:var(--lab-ink);isolation:isolate;width:100%;min-width:0;margin:0;container:auto-lab/inline-size}.auto-lab-topline{min-height:24px;font:500 11px/1.5 var(--font-geist-mono), monospace;letter-spacing:.09em;color:#567564;justify-content:space-between;align-items:center;gap:12px;padding:0 6px;display:flex}.auto-lab-topline>span:last-child{font:400 12px/1.5 var(--font-geist-sans), sans-serif;letter-spacing:0;align-items:center;gap:7px;display:flex}.auto-lab-topline i{background:#86ad95;border-radius:50%;width:5px;height:5px}.auto-lab-stage{height:clamp(326px,52cqw,408px);margin-top:12px;position:relative;overflow:hidden}.auto-lab-vehicle{aspect-ratio:1672/941;transform-origin:57% 53%;width:112%;position:absolute;bottom:-10%;left:-6%;-webkit-mask-image:radial-gradient(54% 55% at 53% 48%,#000 61%,#000000e0 70%,#0000 93%),linear-gradient(#000,#000 76%,#0000 91%);mask-image:radial-gradient(54% 55% at 53% 48%,#000 61%,#000000e0 70%,#0000 93%),linear-gradient(#000,#000 76%,#0000 91%);-webkit-mask-composite:source-in;mask-composite:intersect}.auto-lab:not([data-entered=true]) .auto-lab-vehicle{animation:1.2s cubic-bezier(.22,.7,.2,1) both auto-lab-arrive}.auto-lab-photo{filter:saturate(.55)contrast(.97)brightness(1.06);opacity:.94;width:100%;height:auto;display:block}.auto-lab-scan-layer{clip-path:inset(0 100% 0 0);animation:auto-lab-scan var(--lab-duration) cubic-bezier(.35,0,.2,1) both;position:absolute;inset:0}.auto-lab-scan-layer img{filter:saturate(.95)contrast(1.08);width:100%;height:auto;display:block}.auto-lab-scan-layer:after{content:"";mix-blend-mode:screen;animation:auto-lab-beam var(--lab-duration) cubic-bezier(.35,0,.2,1) both;background:linear-gradient(100deg,#0000 44%,#4ed2891f 47%,#88f6b994 49.5%,#edfff4 50%,#74eaa966 50.5%,#0000 55%);position:absolute;inset:12% 0 18%}.auto-lab-circuit{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.auto-lab-paths{stroke:#53a777;stroke-width:2px;opacity:.48}.auto-lab-route-charge{stroke:#80ecae;stroke-width:4px;stroke-dasharray:100;stroke-linecap:round;filter:drop-shadow(0 0 5px #2bbd6c99);animation:auto-lab-route-charge var(--lab-duration) ease both}.auto-lab-nodes{fill:#f1fff5;stroke:#429668;stroke-width:2px}.auto-lab-nodes circle{animation:auto-lab-node-on var(--lab-duration) ease both}.auto-lab-nodes circle:nth-child(2){animation-name:auto-lab-node-mid}.auto-lab-nodes circle:nth-child(3),.auto-lab-nodes circle:nth-child(4){animation-name:auto-lab-node-last}.auto-lab-focus{animation:auto-lab-focus-on var(--lab-duration) ease both}.auto-lab-focus circle:first-child{stroke:#65b081;stroke-width:1.5px;opacity:.46}.auto-lab-focus circle:nth-child(2){fill:#a9e1bd;fill-opacity:.2;stroke:#409c66;stroke-width:1.5px}.auto-lab-focus circle:last-child{fill:#31895a}.auto-lab-acquire>g{stroke:#258b56;stroke-width:2px;transform-origin:0 0;animation:auto-lab-acquire var(--lab-duration) cubic-bezier(.22,.7,.2,1) both}.auto-lab-focus-leader{stroke:#46986b;stroke-width:1.5px;stroke-dasharray:100;animation:auto-lab-link var(--lab-duration) ease both}.auto-lab-dependency-path{stroke:var(--lab-amber);stroke-width:3px;stroke-dasharray:100;opacity:0}.auto-lab[data-view=composition] .auto-lab-dependency-path{animation:auto-lab-risk-link var(--lab-duration) ease both}.auto-lab[data-view=composition] .auto-lab-dependency-node{animation-name:auto-lab-dependency-node}.auto-lab-dependency-halo{stroke:var(--lab-amber);stroke-width:2px;fill:#edc58e;fill-opacity:.14;opacity:0}.auto-lab[data-view=composition] .auto-lab-dependency-halo{animation:auto-lab-dependency-halo var(--lab-duration) ease both}.auto-lab-signals{opacity:0;stroke-width:5px;stroke-linecap:round}.auto-lab[data-view=interfaces] .auto-lab-signals{opacity:1}.auto-lab-signal-forward{stroke:#a4ffc8;stroke-dasharray:4 96;filter:drop-shadow(0 0 4px #359c66)}.auto-lab-signal-return{stroke:#d99a4b;stroke-dasharray:4 96;filter:drop-shadow(0 0 3px #bc893f)}.auto-lab[data-view=interfaces] .auto-lab-signal-forward{animation:auto-lab-packet-forward var(--lab-duration) linear both}.auto-lab[data-view=interfaces] .auto-lab-signal-return{animation:auto-lab-packet-return var(--lab-duration) linear both}.auto-lab-response-ring{stroke:var(--lab-amber);stroke-width:2px;opacity:0;transform-box:fill-box;transform-origin:50%}.auto-lab[data-view=interfaces] .auto-lab-response-ring{animation:auto-lab-response var(--lab-duration) ease-out both}.auto-lab-cycle{animation:auto-lab-cycle var(--lab-duration) linear;position:absolute;inset:0}.auto-lab-inspection{color:#e0f0e7;width:clamp(226px,34cqw,264px);animation:auto-lab-inspection-in var(--lab-duration) cubic-bezier(.2,.75,.2,1) both;background:linear-gradient(135deg,#1a3f2ef7,#092017f2);border-top:2px solid #83c99e;border-radius:3px;padding:14px 16px 12px;position:absolute;top:4%;left:1%;box-shadow:inset 0 0 0 1px #beeece21,inset 0 1px #e6fff026,0 18px 36px -17px #1239236b}.auto-lab-inspection-progress{transform-origin:0;height:1px;animation:auto-lab-progress var(--lab-duration) linear both;background:linear-gradient(90deg,#44795a,#a9efc2);position:absolute;inset:auto 0 0}.auto-lab-inspection-head{color:#a2cdb3;font:550 10px/1.4 var(--font-geist-mono), monospace;letter-spacing:.06em;justify-content:space-between;align-items:center;gap:8px;margin-bottom:15px;display:flex}.auto-lab-view-index{color:#dcf6e5;font-size:12px}.auto-lab-view-index i{color:#8aac96;margin-left:3px;font-size:9px;font-style:normal}.auto-lab-file{font:500 12px/1.5 var(--font-geist-mono), monospace;align-items:center;gap:8px;margin-bottom:10px;display:flex}.auto-lab-file-symbol{color:#91d6ab;font-size:14px}.auto-lab-code{font:400 11px/1.8 var(--font-geist-mono), Consolas, monospace}.auto-lab-code>div{white-space:nowrap;align-items:center;gap:9px;min-height:24px;padding-inline:3px;display:flex}.auto-lab-code>div>span{color:#8bad99;font-size:10px}.auto-lab-code code{font:inherit;color:#d1e4d8}.auto-lab-code b{color:#8bd5a5;font-weight:500}.auto-lab-code em{color:#e6c394;font-style:normal}.auto-lab-code-finding{animation:auto-lab-code-highlight var(--lab-duration) ease both}.auto-lab-code-finding i{color:#fff;width:12px;height:12px;animation:auto-lab-finding var(--lab-duration) ease both;background:#b47d36;border-radius:50%;place-items:center;margin-left:auto;font:600 9px/1 sans-serif;display:grid}.auto-lab-result{color:#e0c297;min-height:26px;animation:auto-lab-finding var(--lab-duration) ease both;border-top:1px solid #395746;align-items:center;gap:7px;margin-top:11px;padding-top:9px;font-size:11px;line-height:1.5;display:flex}.auto-lab-result>i{background:#dfaf6f;border-radius:50%;flex:0 0 4px;width:4px;height:4px}.auto-lab-dependency-list{height:107px;font:400 12px/1.5 var(--font-geist-mono), monospace;gap:0;padding-top:2px;display:grid}.auto-lab-dependency-list>div{min-width:0;animation:auto-lab-dependency-row var(--lab-duration) ease both;align-items:center;gap:9px;display:flex;position:relative}.auto-lab-dependency-list>div:nth-child(2){animation-name:auto-lab-dependency-row-mid}.auto-lab-dependency-list>div:nth-child(3){animation-name:auto-lab-dependency-row-last}.auto-lab-dependency-list>div:nth-child(2){padding-left:16px}.auto-lab-dependency-list>div:nth-child(3){padding-left:32px}.auto-lab-dependency-list>div+div:before{content:"";border-bottom:1px solid #507960;border-left:1px solid #507960;width:11px;height:23px;position:absolute;top:-5px;left:3px}.auto-lab-dependency-list>div:nth-child(3):before{left:19px}.auto-lab-dependency-list i{background:#e8f5ec;border:1px solid #4e9466;border-radius:2px;flex:0 0 7px;width:7px;height:7px}.auto-lab-dependency-list strong{font-weight:450}.auto-lab-dependency-list span{color:#98b9a4;margin-left:auto;font-size:9px}.auto-lab-license strong,.auto-lab-license span{color:#e2bb84}.auto-lab-license i{background:#f5e4c9;border-color:#c59351}.auto-lab-protocol-legend{font:400 10px/1.5 var(--font-geist-mono), monospace;gap:22px;margin-top:19px;display:flex}.auto-lab-protocol-legend>span{align-items:center;gap:6px;display:flex}.auto-lab-protocol-legend i{background:#8ad4a5;width:9px;height:2px}.auto-lab-protocol-legend>span+span i{background:#dfb073}.auto-lab-waveform{width:100%;height:76px;margin-top:12px}.auto-lab-wave-grid{stroke:#466651;stroke-width:.7px;opacity:.6}.auto-lab-wave-input,.auto-lab-wave-response{stroke-width:1.7px;stroke-dasharray:100}.auto-lab-wave-input{stroke:#8bdbab;animation:auto-lab-wave-input var(--lab-duration) ease both}.auto-lab-wave-response{stroke:#edbc7d;animation:auto-lab-wave-response var(--lab-duration) ease both}.auto-lab-target-label{color:#497b5b;font:500 10px/1.5 var(--font-geist-sans), sans-serif;letter-spacing:.05em;animation:auto-lab-finding var(--lab-duration) ease both;align-items:center;gap:7px;display:flex;position:absolute;bottom:11%;right:7%}.auto-lab-target-label i{background:#68a67c;width:14px;height:1px}.auto-lab-caption{color:#577664;text-align:center;text-wrap:balance;place-items:center;min-height:36px;margin:3px 0 9px;font-size:13px;line-height:1.55;display:grid}.auto-lab-controls{align-items:center;gap:16px;padding:0 6px;display:flex}.auto-lab-views{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;display:grid}.auto-lab-views button{color:#698371;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #dae6dd;justify-content:center;align-items:center;gap:9px;min-width:0;min-height:46px;padding:8px 6px;font-family:inherit;display:flex;position:relative}.auto-lab-views button>span{color:#88a392;font:400 10px/1.5 var(--font-geist-mono), monospace}.auto-lab-views button>strong{text-wrap:balance;font-size:13px;font-weight:500;line-height:1.4}.auto-lab-views button[aria-pressed=true]{color:#276c43;background:linear-gradient(#0000,#eaf4ee);border-bottom-color:#3b9660}.auto-lab-views button[aria-pressed=true]>span{color:#45865b}.auto-lab-views button:hover{color:#215f3d;background-color:#f0f6f2}.auto-lab-toggle{color:#49775a;cursor:pointer;background:0 0;border:1px solid #cadfd1;border-radius:50%;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.auto-lab-toggle svg{width:14px;height:14px}.auto-lab-toggle:hover{background:#eff6f1;border-color:#6b9d7c}.auto-lab-toggle:disabled{cursor:default;opacity:.5}.auto-lab button:focus-visible{outline-offset:4px;outline:2px solid #3b8f59}.auto-lab-accessible{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.auto-lab[data-running=false] *,.auto-lab[data-running=false] :before,.auto-lab[data-running=false] :after{animation-play-state:paused!important}.auto-lab[data-manual=true] .auto-lab-inspection{opacity:1;animation:none;transform:none}.auto-lab[data-still=true] .auto-lab-active-circuit *,.auto-lab[data-still=true] .auto-lab-inspection *,.auto-lab[data-still=true] .auto-lab-target-label{animation:none}.auto-lab[data-still=true] .auto-lab-scan-layer,.auto-lab[data-still=true] .auto-lab-signals,.auto-lab[data-still=true] .auto-lab-response-ring,.auto-lab[data-still=true] .auto-lab-route-charge,.auto-lab[data-still=true] .auto-lab-acquire{display:none}.auto-lab[data-still=true] .auto-lab-result,.auto-lab[data-still=true] .auto-lab-code-finding i,.auto-lab[data-still=true] .auto-lab-target-label{opacity:1}.auto-lab[data-still=true] .auto-lab-code-finding{background:#d09c4f2e}.auto-lab[data-still=true] .auto-lab-focus-leader{stroke-dashoffset:0;opacity:.6}.auto-lab[data-still=true][data-view=composition] .auto-lab-dependency-path{stroke-dashoffset:0;opacity:.8}.auto-lab[data-still=true][data-view=composition] .auto-lab-dependency-node{fill:#bf813b;stroke:#f6e4c7}.auto-lab[data-still=true][data-view=composition] .auto-lab-dependency-halo{opacity:.6}@keyframes auto-lab-arrive{0%{opacity:.25;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes auto-lab-cycle{0%{--cycle-marker:0}to{--cycle-marker:1}}@keyframes auto-lab-inspection-in{0%{opacity:0;transform:translate(-5px,8px)scale(.985)}15%,94%{opacity:1;transform:none}to{opacity:0;transform:translateY(-3px)}}@keyframes auto-lab-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes auto-lab-scan{0%{clip-path:inset(0 100% 0 0);opacity:0}3%{opacity:1}30%,87%{clip-path:inset(0);opacity:1}to{clip-path:inset(0);opacity:0}}@keyframes auto-lab-beam{0%{opacity:0;transform:translate(-50%)}4%{opacity:.85}28%{opacity:.85}32%,to{opacity:0;transform:translate(50%)}}@keyframes auto-lab-route-charge{0%,12%{stroke-dashoffset:100px;opacity:0}18%{opacity:.85}34%{stroke-dashoffset:0;opacity:.85}48%,92%{stroke-dashoffset:0;opacity:.28}to{stroke-dashoffset:0;opacity:0}}@keyframes auto-lab-node-on{0%,16%{opacity:.25}23%,to{opacity:1}}@keyframes auto-lab-node-mid{0%,22%{opacity:.25}29%,to{opacity:1}}@keyframes auto-lab-node-last{0%,29%{opacity:.25}36%,to{opacity:1}}@keyframes auto-lab-focus-on{0%,18%{opacity:.25}32%,92%{opacity:1}to{opacity:.25}}@keyframes auto-lab-acquire{0%,15%{opacity:0;transform:rotate(-24deg)scale(1.18)}29%,40%{opacity:.9;transform:rotate(0)scale(1)}56%,94%{opacity:.38;transform:rotate(0)scale(1)}to{opacity:0;transform:rotate(0)scale(1)}}@keyframes auto-lab-link{0%,25%{stroke-dashoffset:100px;opacity:0}40%,94%{stroke-dashoffset:0;opacity:.65}to{stroke-dashoffset:0;opacity:0}}@keyframes auto-lab-risk-link{0%,37%{stroke-dashoffset:100px;opacity:0}57%,94%{stroke-dashoffset:0;opacity:.9}to{stroke-dashoffset:0;opacity:.25}}@keyframes auto-lab-dependency-node{0%,55%{fill:#f1fff5;stroke:#429668}65%,to{fill:#bf813b;stroke:#f6e4c7}}@keyframes auto-lab-dependency-halo{0%,55%{opacity:0}66%,94%{opacity:.8}to{opacity:0}}@keyframes auto-lab-code-highlight{0%,38%{background:0 0}52%,to{background:#d09c4f2e}}@keyframes auto-lab-finding{0%,61%{opacity:0}72%,to{opacity:1}}@keyframes auto-lab-dependency-row{0%,16%{opacity:.2;transform:translateY(3px)}29%,to{opacity:1;transform:none}}@keyframes auto-lab-dependency-row-mid{0%,30%{opacity:.2;transform:translateY(3px)}43%,to{opacity:1;transform:none}}@keyframes auto-lab-dependency-row-last{0%,45%{opacity:.2;transform:translateY(3px)}60%,to{opacity:1;transform:none}}@keyframes auto-lab-packet-forward{0%,33%{stroke-dashoffset:100px;opacity:0}34%{opacity:1}53%{stroke-dashoffset:0;opacity:1}54%,to{stroke-dashoffset:0;opacity:0}}@keyframes auto-lab-packet-return{0%,57%{stroke-dashoffset:100px;opacity:0}58%{opacity:1}73%{stroke-dashoffset:0;opacity:1}74%,to{stroke-dashoffset:0;opacity:0}}@keyframes auto-lab-response{0%,52%{opacity:0;transform:scale(.65)}55%{opacity:.9;transform:scale(.8)}75%,to{opacity:0;transform:scale(1.5)}}@keyframes auto-lab-wave-input{0%,33%{stroke-dashoffset:100px}53%,to{stroke-dashoffset:0}}@keyframes auto-lab-wave-response{0%,55%{stroke-dashoffset:100px}74%,to{stroke-dashoffset:0}}@container auto-lab (width<=600px){.auto-lab-stage{height:365px}.auto-lab-inspection{width:226px;padding:12px 14px 10px;top:1%}.auto-lab-vehicle{width:125%;bottom:-4%;left:-12%}.auto-lab-topline{letter-spacing:.04em;font-size:10px}.auto-lab-topline>span:last-child{font-size:11px}.auto-lab-target-label{bottom:8%}}@media (max-width:650px){.auto-lab-topline{padding-inline:0}.auto-lab-topline>span:first-child{letter-spacing:0;font-size:10px}.auto-lab-stage{height:366px;margin-top:10px}.auto-lab-inspection{width:90%;max-width:320px;padding:12px 16px;top:0;left:5%}.auto-lab-inspection-head{margin-bottom:10px}.auto-lab-file{margin-bottom:5px}.auto-lab-code{font-size:12px}.auto-lab-vehicle{width:126%;bottom:-2%;left:-13%}.auto-lab-photo{opacity:.9}.auto-lab-inspection .auto-lab-result{margin-top:7px;padding-top:7px;font-size:12px}.auto-lab-dependency-list{height:90px}.auto-lab-protocol-legend{margin-top:10px}.auto-lab-waveform{height:66px;margin-top:8px}.auto-lab-target-label{display:none}.auto-lab-caption{min-height:42px;margin-block:0 8px;font-size:12px}.auto-lab-controls{gap:9px;padding:0}.auto-lab-views button{flex-direction:column;gap:3px;min-height:64px;padding:5px 3px}.auto-lab-views button>strong{font-size:12px}.auto-lab-toggle{flex-basis:44px;width:44px;height:44px}}@container auto-lab (width<=300px){.auto-lab-stage{height:334px}.auto-lab-topline>span:last-child,.auto-lab-code{font-size:10px}.auto-lab-inspection{padding-inline:12px}.auto-lab-views button>strong{font-size:11px}}@media (prefers-reduced-motion:reduce){.auto-lab *,.auto-lab :before,.auto-lab :after{transition:none!important;animation:none!important}.auto-lab-vehicle,.auto-lab-inspection{opacity:1;transform:none}.auto-lab-scan-layer,.auto-lab-signals,.auto-lab-response-ring,.auto-lab-acquire,.auto-lab-route-charge,.auto-lab-inspection-progress{display:none}.auto-lab-result,.auto-lab-code-finding i,.auto-lab-target-label{opacity:1}.auto-lab-code-finding{background:#d09c4f2e}.auto-lab-focus-leader{stroke-dashoffset:0;opacity:.6}.auto-lab[data-view=composition] .auto-lab-dependency-path{stroke-dashoffset:0;opacity:.8}.auto-lab[data-view=composition] .auto-lab-dependency-node{fill:#bf813b;stroke:#f6e4c7}.auto-lab[data-view=composition] .auto-lab-dependency-halo{opacity:.6}}
