html{scrollbar-gutter:stable}output,[role=status],[aria-live],dd,td,.readout,[data-readout]{font-variant-numeric:tabular-nums}.lab-page p{overflow-wrap:break-word}.lab-page :focus-visible{outline:2px solid var(--focus);outline-offset:4px}.lab-page [hidden],.aes-page [hidden]{display:none!important}.lab-page .sr-only,.cpx .sr-only,.plx .sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lab-page .guide{background:var(--bg);padding:clamp(3rem,6vw,5.5rem) 0}.lab-page .guide h2,.aes-page .guide h2{letter-spacing:-.06em;margin:0;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1}.lab-page .guide-lede{max-width:var(--lab-measure);color:var(--muted);margin:1rem 0 2.25rem;line-height:1.6}.lab-page .guide-rail,.aes-page .guide-rail,.cpx .guide-rail,.plx .guide-rail{position:sticky;top:1.5rem}.lab-page .guide-rail-head,.aes-page .guide-rail-head,.cpx .guide-rail-head,.plx .guide-rail-head{color:var(--teal);font:500 .78rem/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem}.lab-page .guide-rail ol,.aes-page .guide-rail ol,.cpx .guide-rail ol,.plx .guide-rail ol{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.lab-page .guide-rail a{min-height:44px;color:var(--muted);border-left:2px solid #0000;align-items:center;gap:.65rem;padding:.3rem .5rem;font-size:.88rem;line-height:1.3;text-decoration:none;display:flex}.lab-page .guide-rail a:hover,.cpx .guide-rail a:hover,.plx .guide-rail a:hover{color:var(--teal)}.lab-page .guide-rail a[aria-current=step],.cpx .guide-rail a[aria-current=step],.plx .guide-rail a[aria-current=step]{border-left-color:var(--teal);color:var(--text);font-weight:700}.lab-page .guide-rail-n{border:1px solid var(--edge);background:var(--panel);width:1.65rem;height:1.65rem;color:var(--copper-text);font:500 .78rem/1 var(--mono);flex:none;place-items:center;display:inline-grid}.lab-page .guide-rail a[data-done=true] .guide-rail-n,.cpx .guide-rail a[data-done=true] .guide-rail-n,.plx .guide-rail a[data-done=true] .guide-rail-n{border-color:var(--teal);background:var(--teal);color:var(--on-teal)}.lab-page .guide-rail a[data-done=true]:after,.aes-page .guide-rail a[data-done=true]:after{content:"✓" / "";color:var(--teal);margin-left:auto}.lab-page .guide-rail-sandbox,.cpx .guide-rail-sandbox,.plx .guide-rail-sandbox{border-top:1px solid var(--line);margin-top:.4rem}.lab-page .guide-chapters{gap:clamp(2rem,5vw,3.5rem);min-width:0;display:grid}.lab-page .guide-chapter{border:1px solid var(--line);background:var(--panel);min-width:0;padding:clamp(1.1rem,3vw,1.75rem)}.lab-page .guide-chapter-n{color:var(--copper-text);font:500 .78rem/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin:0}.lab-page .guide-idea{max-width:42rem;color:var(--muted);margin:0;line-height:1.65}.lab-page .guide-demo{grid-template-columns:minmax(0,1fr) minmax(12rem,15rem);align-items:start;gap:1.25rem;margin-top:1.25rem;display:grid}.lab-page .guide-show{border:1px solid var(--line);background:var(--panel);gap:.85rem;min-width:0;padding:1rem;display:grid}.lab-page .guide-act{align-content:start;gap:.85rem;display:grid}.lab-page .guide-act .tl-field,.lab-page .guide-act .df-field,.lab-page .guide-act .se-field,.lab-page .guide-act .pl-field{margin:0}.lab-page .guide-act .tl-range,.lab-page .guide-act .df-range,.lab-page .guide-act .se-range,.lab-page .guide-act .pl-range{width:100%;display:block}.lab-page .guide-act output{margin-top:.35rem;display:block}.lab-page .guide-choice .tl-seg,.lab-page .guide-choice .df-seg,.lab-page .guide-choice .se-seg,.lab-page .guide-choice .pl-seg{margin-top:.1rem}.lab-page .guide-legend{margin:0}.lab-page .guide-readout{color:var(--text);font:500 .85rem/1.5 var(--mono);margin:0}.lab-page .tl-prev-legend:empty,.lab-page .df-prev-legend:empty,.lab-page .se-prev-legend:empty{display:none}.lab-page .guide-takeaway{border:1px dashed var(--edge);color:var(--muted);margin:1rem 0 0;padding:.85rem 1rem;font-size:.95rem;line-height:1.6}.lab-page .guide-takeaway[data-state=done]{border:0;border-left:.28rem solid var(--teal);background:var(--ok-bg);color:var(--text)}.lab-page .guide-takeaway[data-state=done]:before,.aes-page .guide-takeaway[data-state=done]:before{content:"What you just saw: " / "";color:var(--teal);font-weight:700}.lab-page .guide-foot,.aes-page .guide-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;margin-top:1rem;display:flex}.lab-page .guide-recap{border:1px solid var(--edge);background:var(--panel);box-shadow:6px 6px 0 var(--teal);padding:clamp(1.1rem,3vw,1.75rem)}.lab-page .guide-recap h3,.aes-page .guide-recap h3{letter-spacing:-.04em;margin:0 0 .85rem;font-size:clamp(1.4rem,3vw,2rem)}.lab-page .guide-recap ol{color:var(--muted);gap:.55rem;margin:0 0 1.25rem;padding-left:1.5rem;line-height:1.55;display:grid}.lab-page .guide-recap li::marker{color:var(--copper-text);font:500 .9em var(--mono)}.lab-page .guide-term-wrap,.aes-page .guide-term-wrap,.cpx .guide-term-wrap,.plx .guide-term-wrap{position:relative}.lab-page .guide-term{color:var(--text);font:inherit;cursor:help;background:0 0;border:0;border-bottom:1px dotted;padding:0}.lab-page .guide-term:hover,.lab-page .guide-term[aria-expanded=true]{color:var(--teal)}.lab-page .guide-def{z-index:5;border:1px solid var(--edge);border-top:3px solid var(--teal);background:var(--panel-raised);width:min(20rem,70vw);color:var(--text);font:400 .85rem/1.5 var(--sans);box-shadow:4px 4px 0 var(--line);padding:.7rem .85rem;position:absolute;top:calc(100% + .35rem);left:0}.lab-page .tl-bench,.lab-page .df-bench,.lab-page .se-bench,.lab-page .pl-bench{background:var(--bg);border-top:1px solid var(--line);padding:clamp(3rem,6vw,5.5rem) 0}.lab-page .tl-bench-head,.lab-page .df-bench-head,.lab-page .se-bench-head,.lab-page .pl-bench-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem 3rem;margin-bottom:2rem;display:flex}.lab-page .tl-bench-head h2,.lab-page .df-bench-head h2,.lab-page .se-bench-head h2,.lab-page .pl-bench-head h2{letter-spacing:-.06em;margin:0;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1}.lab-page .tl-caveat,.lab-page .df-caveat,.lab-page .se-caveat,.lab-page .pl-caveat{color:var(--copper-text);font:500 .8rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;margin:0}.lab-page .tl-sandbox-status,.lab-page .df-sandbox-status,.lab-page .se-sandbox-status,.lab-page .pl-sandbox-status{min-height:1.5em;color:var(--teal);font:.82rem/1.5 var(--mono);margin:-1rem 0 1rem}.lab-page .tl-layout,.lab-page .df-layout,.lab-page .se-layout,.lab-page .pl-layout{grid-template-columns:minmax(16rem,23rem) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.lab-page .tl-controls,.lab-page .df-controls,.lab-page .se-controls,.lab-page .pl-controls{gap:1rem;min-width:0;display:grid}.lab-page .tl-stage,.lab-page .df-stage,.lab-page .se-stage,.lab-page .pl-stage{min-width:0}.lab-page .tl-step,.lab-page .df-step,.lab-page .se-step,.lab-page .pl-step{color:var(--copper-text);font:500 .75rem/1 var(--mono);letter-spacing:.1em}.lab-page .tl-group,.lab-page .df-group,.lab-page .se-group,.lab-page .pl-group{border:1px solid var(--line);border-top:4px solid var(--teal);background:var(--panel);min-width:0;margin:0;padding:0 1.1rem 1.1rem}.lab-page .tl-group>legend,.lab-page .df-group>legend,.lab-page .se-group>legend,.lab-page .pl-group>legend{float:left;border-bottom:1px solid var(--line);width:100%;font:700 1rem/1.2 var(--sans);margin:0;padding:.85rem 0 .6rem}.lab-page .tl-group>:not(legend),.lab-page .df-group>:not(legend),.lab-page .se-group>:not(legend),.lab-page .pl-group>:not(legend){clear:both}.lab-page .tl-group .tl-step,.lab-page .df-group .df-step,.lab-page .se-group .se-step,.lab-page .pl-group .pl-step{margin-right:.4rem}.lab-page .tl-field,.lab-page .df-field,.lab-page .se-field,.lab-page .pl-field{border:0;min-width:0;margin:1.1rem 0 0;padding:0}.lab-page .tl-label,.lab-page .df-label,.lab-page .se-label,.lab-page .pl-label{width:100%;color:var(--text);font:700 .9rem/1.25 var(--sans);margin:0 0 .5rem;padding:0;display:block}.lab-page .tl-range::-webkit-slider-runnable-track,.lab-page .df-range::-webkit-slider-runnable-track,.lab-page .se-range::-webkit-slider-runnable-track,.lab-page .pl-range::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--teal), var(--copper));height:4px}.lab-page .tl-range::-moz-range-track,.lab-page .df-range::-moz-range-track,.lab-page .se-range::-moz-range-track,.lab-page .pl-range::-moz-range-track{background:linear-gradient(90deg, var(--teal), var(--copper));height:4px}.lab-page .tl-range::-webkit-slider-thumb,.lab-page .df-range::-webkit-slider-thumb,.lab-page .se-range::-webkit-slider-thumb,.lab-page .pl-range::-webkit-slider-thumb{border:2px solid var(--edge);background:var(--bg);appearance:none;border-radius:0;width:1.05rem;height:1.5rem;margin-top:-.62rem;transition:background-color .15s}.lab-page .tl-range::-moz-range-thumb,.lab-page .df-range::-moz-range-thumb,.lab-page .se-range::-moz-range-thumb,.lab-page .pl-range::-moz-range-thumb{border:2px solid var(--edge);background:var(--bg);border-radius:0;width:.8rem;height:1.2rem}.lab-page .tl-range:hover::-webkit-slider-thumb,.lab-page .df-range:hover::-webkit-slider-thumb,.lab-page .se-range:hover::-webkit-slider-thumb,.lab-page .pl-range:hover::-webkit-slider-thumb{background:#dfedde}.lab-page .tl-range:active::-webkit-slider-thumb,.lab-page .df-range:active::-webkit-slider-thumb,.lab-page .se-range:active::-webkit-slider-thumb,.lab-page .pl-range:active::-webkit-slider-thumb{background:var(--text)}.lab-page .tl-hint,.lab-page .df-hint,.lab-page .se-hint,.lab-page .pl-hint{color:var(--dim);margin:.45rem 0 0;font-size:.8rem;line-height:1.5}.lab-page .tl-radio,.lab-page .df-radio,.lab-page .se-radio,.lab-page .pl-radio{padding:0}.lab-page .tl-seg,.lab-page .df-seg,.lab-page .se-seg,.lab-page .pl-seg{border:1px solid var(--edge);flex-wrap:wrap;display:flex}.lab-page .tl-seg label,.lab-page .df-seg label,.lab-page .se-seg label,.lab-page .pl-seg label{flex:auto;position:relative}.lab-page .tl-seg input,.lab-page .df-seg input,.lab-page .se-seg input,.lab-page .pl-seg input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.lab-page .tl-seg span,.lab-page .df-seg span,.lab-page .se-seg span,.lab-page .pl-seg span{border-left:1px solid var(--edge);min-height:44px;color:var(--text);font:500 .86rem/1.2 var(--mono);letter-spacing:.04em;text-align:center;justify-content:center;align-items:center;padding:.5rem .8rem;transition:background-color .15s,color .15s;display:flex}.lab-page .tl-seg label:first-child span,.lab-page .df-seg label:first-child span,.lab-page .se-seg label:first-child span,.lab-page .pl-seg label:first-child span{border-left:0}.lab-page .tl-seg input:hover+span,.lab-page .df-seg input:hover+span,.lab-page .se-seg input:hover+span,.lab-page .pl-seg input:hover+span{background:var(--hover)}.lab-page .tl-seg input:checked+span,.lab-page .df-seg input:checked+span,.lab-page .se-seg input:checked+span,.lab-page .pl-seg input:checked+span{background:var(--text);color:var(--panel)}.lab-page .tl-seg input:focus-visible+span,.lab-page .df-seg input:focus-visible+span,.lab-page .se-seg input:focus-visible+span,.lab-page .pl-seg input:focus-visible+span{z-index:1;outline:2px solid var(--focus);outline-offset:4px;position:relative}.lab-page .tl-switch,.lab-page .df-switch,.lab-page .se-switch,.lab-page .pl-switch{min-height:44px;color:var(--text);font:700 .9rem/1.3 var(--sans);cursor:pointer;align-items:center;gap:.75rem;display:flex;position:relative}.lab-page .tl-switch input,.lab-page .df-switch input,.lab-page .se-switch input,.lab-page .pl-switch input{opacity:0;width:1px;height:1px;position:absolute}.lab-page .tl-track,.lab-page .df-track,.lab-page .se-track,.lab-page .pl-track{border:1px solid var(--edge);background:var(--well);flex:none;width:2.7rem;height:1.45rem;position:relative}.lab-page .tl-track:after,.lab-page .df-track:after,.lab-page .se-track:after,.lab-page .pl-track:after{content:"";background:var(--muted);width:.95rem;height:.95rem;transition:transform .15s,background-color .15s;position:absolute;top:.18rem;left:.2rem}.lab-page .tl-switch input:checked+.tl-track,.lab-page .df-switch input:checked+.df-track,.lab-page .se-switch input:checked+.se-track,.lab-page .pl-switch input:checked+.pl-track{border-color:var(--teal);background:var(--teal)}.lab-page .tl-switch input:checked+.tl-track:after,.lab-page .df-switch input:checked+.df-track:after,.lab-page .se-switch input:checked+.se-track:after,.lab-page .pl-switch input:checked+.pl-track:after{background:var(--on-teal);transform:translate(1.2rem)}.lab-page .tl-switch:hover .tl-track,.lab-page .df-switch:hover .df-track,.lab-page .se-switch:hover .se-track,.lab-page .pl-switch:hover .pl-track{border-color:var(--teal)}.lab-page .tl-switch input:focus-visible+.tl-track,.lab-page .df-switch input:focus-visible+.df-track,.lab-page .se-switch input:focus-visible+.se-track,.lab-page .pl-switch input:focus-visible+.pl-track{outline:2px solid var(--focus);outline-offset:4px}.lab-page .tl-advanced,.lab-page .df-advanced,.lab-page .se-advanced,.lab-page .pl-advanced{border-top:1px solid var(--line);margin:1.1rem 0 0}.lab-page .tl-advanced>summary,.lab-page .df-advanced>summary,.lab-page .se-advanced>summary,.lab-page .pl-advanced>summary{min-height:44px;color:var(--teal);font:500 .82rem/1.3 var(--mono);cursor:pointer;align-items:center;display:flex}.lab-page .tl-advanced>summary:hover,.lab-page .df-advanced>summary:hover,.lab-page .se-advanced>summary:hover,.lab-page .pl-advanced>summary:hover{color:var(--link-hover)}.lab-page .tl-panel,.lab-page .df-panel,.lab-page .se-panel,.lab-page .pl-panel{border:1px solid var(--line);border-top:4px solid var(--teal);background:var(--panel);padding:1.1rem 1.15rem 1.2rem}.lab-page .tl-panel-title,.lab-page .df-panel-title,.lab-page .se-panel-title,.lab-page .pl-panel-title{color:var(--muted);font:500 .78rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 1rem}.lab-page .tl-readouts,.lab-page .df-readouts,.lab-page .se-readouts,.lab-page .pl-readouts{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:1rem 1.25rem;margin:0;display:grid}.lab-page .tl-readouts>div,.lab-page .df-readouts>div,.lab-page .se-readouts>div,.lab-page .pl-readouts>div{border-top:1px solid var(--line);padding-top:.45rem}.lab-page .tl-readouts dt,.lab-page .df-readouts dt,.lab-page .se-readouts dt,.lab-page .pl-readouts dt{color:var(--muted);font:500 .72rem/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase}.lab-page .tl-btn,.lab-page .df-btn,.lab-page .se-btn,.lab-page .pl-btn{border:1px solid var(--edge);min-height:44px;color:var(--text);font:500 .86rem/1.2 var(--mono);cursor:pointer;background:0 0;border-radius:0;padding:.65rem 1rem;transition:background-color .15s,border-color .15s,color .15s}.lab-page .tl-btn:hover,.lab-page .df-btn:hover,.lab-page .se-btn:hover,.lab-page .pl-btn:hover{border-color:var(--text);background:var(--text);color:var(--panel)}.lab-page .tl-btn:active,.lab-page .df-btn:active,.lab-page .se-btn:active,.lab-page .pl-btn:active{transform:translateY(1px)}.lab-page .tl-btn-dashed,.lab-page .df-btn-dashed,.lab-page .se-btn-dashed,.lab-page .pl-btn-dashed{border-style:dashed}.lab-page .tl-share-status,.lab-page .df-share-status,.lab-page .se-share-status,.lab-page .pl-share-status{min-height:1.3em;color:var(--teal);font:.78rem/1.4 var(--mono);margin:.7rem 0 0}.lab-page .tl-share-fallback,.lab-page .df-share-fallback,.lab-page .se-share-fallback,.lab-page .pl-share-fallback{margin-top:.5rem}.lab-page .tl-share-url,.lab-page .df-share-url,.lab-page .se-share-url{width:100%;max-width:100%}.lab-page .tl-fig-head h3,.lab-page .df-fig-head h3,.lab-page .se-fig-head h3,.lab-page .pl-fig-head h3{letter-spacing:-.02em;margin:0 0 .3rem;font-size:1.1rem}.lab-page .tl-empty,.lab-page .df-empty,.lab-page .se-empty,.lab-page .pl-empty{border:1px dashed var(--edge);color:var(--muted);margin:0;padding:1rem 1.15rem;line-height:1.6}.lab-page .tl-fig-head p,.lab-page .df-fig-head p,.lab-page .se-fig-head p,.lab-page .pl-fig-head p{color:var(--muted);margin:0 0 .8rem;font-size:.86rem;line-height:1.5}.lab-page .tl-details,.lab-page .df-details,.lab-page .se-details,.lab-page .pl-details{border:1px solid var(--line);background:var(--panel-raised);margin-top:.9rem}.lab-page .tl-details summary,.lab-page .df-details summary,.lab-page .se-details summary,.lab-page .pl-details summary{min-height:44px;color:var(--teal);font:500 .8rem/1.3 var(--mono);cursor:pointer;align-items:center;padding:.5rem .8rem;display:flex}.lab-page .tl-details summary:hover,.lab-page .df-details summary:hover,.lab-page .se-details summary:hover,.lab-page .pl-details summary:hover{background:var(--hover);color:var(--text)}.lab-page .tl-details table,.lab-page .df-details table,.lab-page .se-details table,.lab-page .pl-details table{border-collapse:collapse;table-layout:fixed;width:100%;font:.78rem/1.4 var(--mono)}.lab-page .tl-details th,.lab-page .df-details th,.lab-page .se-details th,.lab-page .pl-details th{color:var(--muted);font-weight:500}@media (width<=68rem){.lab-page .tl-layout,.lab-page .df-layout,.lab-page .se-layout,.lab-page .pl-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=52rem){.lab-page .guide-rail a[aria-current=step]{border-bottom-color:var(--teal)}.lab-page .guide-rail a[data-done=true]:after{content:none}.lab-page .guide-rail-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab-page .guide-rail-sandbox{border-top:0;margin-top:0}.lab-page .guide-demo{grid-template-columns:minmax(0,1fr)}.lab-page .guide-rail a,.aes-page .guide-rail a{justify-content:center;min-width:44px}}@media (pointer:coarse),(width<=52rem){.lab-page .guide-term,.aes-page .guide-term{position:relative}.lab-page .guide-term:after,.aes-page .guide-term:after{content:"";position:absolute;inset:-10px -2px}}@media (width<=34rem){.lab-page .guide-show{padding:.75rem}.lab-page .guide-def{width:auto;box-shadow:none;margin:.4rem 0;display:block;position:static}.lab-page .guide-term-wrap{display:inline}}@media (prefers-reduced-motion:reduce){.lab-page :before,.lab-page :after{transition:none!important;animation:none!important}}.lab-page .tl-noscript,.lab-page .df-noscript,.lab-page .se-noscript{border:1px solid var(--teal);color:var(--text);margin:0 0 1.25rem;padding:.7rem 1rem;font-size:.9rem;line-height:1.5}.lab-page .tl-btn-go:hover,.lab-page .df-btn-go:hover,.lab-page .se-btn-go:hover{border-color:var(--text);background:var(--text);color:var(--panel)}.lab-page .tl-select,.lab-page .df-select,.lab-page .se-select{border:1px solid var(--edge);background:var(--well);width:100%;min-height:44px;color:var(--text);font:500 .9rem/1.2 var(--mono);border-radius:0;padding:.4rem .5rem}.lab-bench{grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);align-items:start;gap:1.25rem;display:grid}.lab-dock{border:1px solid var(--line);border-top:4px solid var(--teal);background:var(--panel);gap:.85rem;max-height:calc(100vh - 2rem);padding:1rem;display:grid;position:sticky;top:1rem;overflow-y:auto}.lab-more{border-top:1px solid var(--line)}.lab-more>summary{min-height:44px;color:var(--teal);font:500 .85rem/1.3 var(--mono);letter-spacing:.04em;cursor:pointer;align-items:center;display:flex}.lab-more[open]>summary{margin-bottom:.5rem}.lab-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:.5rem;padding-top:.85rem;display:flex}.lab-button{border:1px solid var(--text);min-height:44px;color:var(--text);font:500 .85rem/1.25 var(--mono);cursor:pointer;background:0 0;padding:0 1rem}.lab-button:hover{background:var(--text);color:var(--panel)}.lab-status{min-height:1.3em;color:var(--muted);margin:0;font-size:.85rem}.lab-status:empty{min-height:0}.lab-share-fallback{margin:0}.lab-share-fallback label{color:var(--muted);font:500 .8rem/1.3 var(--mono);gap:.3rem;display:grid}.lab-share-fallback input{border:1px solid var(--line);background:var(--panel);width:100%;min-height:44px;color:var(--text);padding:0 .5rem}@media (width<=70rem){.lab-bench{grid-template-columns:minmax(0,1fr)}.lab-dock{z-index:5;max-height:42vh;top:auto;bottom:0;box-shadow:0 -.5rem 1.25rem #0000001f}}
