.Concepts-module__y8T21q__d-conc{--dc:var(--traffic)}.Concepts-module__y8T21q__d-cache{--dc:var(--error)}.Concepts-module__y8T21q__d-msg{--dc:var(--warning)}.Concepts-module__y8T21q__d-rel{--dc:var(--success)}.Concepts-module__y8T21q__d-scale{--dc:var(--accent)}.Concepts-module__y8T21q__cx{max-width:1600px;padding:var(--space-6) var(--space-6) var(--space-12);margin:0 auto}.Concepts-module__y8T21q__cx-head{justify-content:space-between;align-items:flex-end;gap:var(--space-6);flex-wrap:wrap;display:flex}.Concepts-module__y8T21q__cx-head h1{font-size:var(--text-2xl);line-height:var(--leading-heading);letter-spacing:-.01em;margin:0;font-weight:600}.Concepts-module__y8T21q__cx-sub{margin:var(--space-2) 0 0;color:var(--secondary);max-width:64ch}.Concepts-module__y8T21q__cx-legend{gap:var(--space-4);font-size:var(--text-xs);color:var(--secondary);flex-wrap:wrap;display:flex}.Concepts-module__y8T21q__cx-legend>span{align-items:center;gap:var(--space-2);display:inline-flex}.Concepts-module__y8T21q__cx-legend svg{width:28px;height:8px;overflow:visible}.Concepts-module__y8T21q__cx-legend svg[viewBox="0 0 16 16"]{width:14px;height:14px}.Concepts-module__y8T21q__lg-hub{stroke:var(--control-border);stroke-width:1.5px}.Concepts-module__y8T21q__lg-rel{stroke:var(--secondary);stroke-width:1.5px;stroke-dasharray:4 4}.Concepts-module__y8T21q__lg-done{fill:color-mix(in srgb, var(--success) 22%, var(--surface-1));stroke:var(--success)}.Concepts-module__y8T21q__lg-tick{fill:none;stroke:var(--success);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.Concepts-module__y8T21q__lg-pips{gap:2px;display:inline-flex}.Concepts-module__y8T21q__lg-pips i{background:var(--surface-3);border-radius:1px;width:6px;height:3px}.Concepts-module__y8T21q__lg-pips i.Concepts-module__y8T21q__on{background:var(--secondary)}.Concepts-module__y8T21q__cx .Concepts-module__y8T21q__btn.Concepts-module__y8T21q__sm{min-height:28px;padding:0 var(--space-2);font-size:var(--text-xs)}.Concepts-module__y8T21q__cx-views{background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);padding:2px;display:inline-flex}.Concepts-module__y8T21q__cx-view{align-items:center;gap:var(--space-1);min-height:32px;padding:0 var(--space-3);color:var(--secondary);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;border-radius:6px;display:inline-flex}.Concepts-module__y8T21q__cx-view svg{fill:none;stroke:currentColor;stroke-width:1.4px;width:14px;height:14px}.Concepts-module__y8T21q__cx-view[aria-pressed=true]{background:var(--surface-3);color:var(--text);font-weight:500}@media (hover:hover){.Concepts-module__y8T21q__cx-view[aria-pressed=false]:hover{color:var(--text)}}.Concepts-module__y8T21q__cx-tools{align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.Concepts-module__y8T21q__cx-search{align-items:center;gap:var(--space-2);flex:240px;max-width:320px;display:flex;position:relative}.Concepts-module__y8T21q__cx-search-l,.Concepts-module__y8T21q__cx-diff span{font-size:var(--text-xs);color:var(--secondary);font-family:var(--font-ui)}.Concepts-module__y8T21q__cx-search svg{fill:none;width:14px;height:14px;stroke:var(--muted);stroke-width:1.5px;flex:none}.Concepts-module__y8T21q__cx-search input{min-width:0;min-height:36px;padding:0 var(--space-3);background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);color:var(--text);flex:1}.Concepts-module__y8T21q__cx-search input::placeholder{color:var(--muted)}.Concepts-module__y8T21q__cx-doms{gap:var(--space-1);flex-wrap:wrap;display:flex}.Concepts-module__y8T21q__cx-dchip{align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--secondary);font-size:var(--text-sm);cursor:pointer;background:0 0;border:1px solid #0000;display:inline-flex}.Concepts-module__y8T21q__cx-dchip[aria-pressed=true]{color:var(--text);border-color:color-mix(in srgb, var(--dc) 45%, var(--border));background:color-mix(in srgb, var(--dc) 8%, transparent)}.Concepts-module__y8T21q__cx-dchip[aria-pressed=false] .Concepts-module__y8T21q__cx-swatch{background:0 0}.Concepts-module__y8T21q__cx-swatch{background:var(--dc);border:1px solid var(--dc);border-radius:2px;flex:none;width:8px;height:8px}.Concepts-module__y8T21q__cx-diff{align-items:center;gap:var(--space-2);display:inline-flex}.Concepts-module__y8T21q__cx-diff select{min-height:32px;padding:0 var(--space-2);background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);color:var(--text)}.Concepts-module__y8T21q__cx-count{font-size:var(--text-xs);color:var(--muted);margin-left:auto}.Concepts-module__y8T21q__cx-body{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.Concepts-module__y8T21q__cx-open .Concepts-module__y8T21q__cx-body{grid-template-columns:minmax(0, 1fr) var(--cx-panel-w)}.Concepts-module__y8T21q__cx-main{min-width:0}[data-cx-view=map] .Concepts-module__y8T21q__cx-cards,[data-cx-view=cards] .Concepts-module__y8T21q__cx-stage{display:none}.Concepts-module__y8T21q__cx-stage{background:var(--canvas);border:var(--border-width) solid var(--border);border-radius:var(--radius-panel);background-image:radial-gradient(var(--grid) 1px, transparent 1.2px);background-size:24px 24px;position:relative;overflow:hidden}.Concepts-module__y8T21q__cx-map{width:100%;height:auto;display:block}.Concepts-module__y8T21q__cx-e{fill:none;stroke-width:1.4px;transition:opacity var(--duration-feedback) var(--ease-enter), stroke var(--duration-feedback) var(--ease-enter)}.Concepts-module__y8T21q__cx-e.Concepts-module__y8T21q__hub{stroke:color-mix(in srgb, var(--dc) 30%, var(--grid))}.Concepts-module__y8T21q__cx-e.Concepts-module__y8T21q__rel{stroke:var(--control-border);stroke-dasharray:4 5;opacity:.55}.Concepts-module__y8T21q__cx-e.Concepts-module__y8T21q__dim{opacity:.08}.Concepts-module__y8T21q__cx-lit .Concepts-module__y8T21q__cx-e:not(.Concepts-module__y8T21q__on){opacity:.1}.Concepts-module__y8T21q__cx-lit .Concepts-module__y8T21q__cx-e.Concepts-module__y8T21q__on{opacity:1;stroke:var(--dc,var(--secondary));stroke-width:2px}.Concepts-module__y8T21q__cx-lit .Concepts-module__y8T21q__cx-e.Concepts-module__y8T21q__rel.Concepts-module__y8T21q__on{stroke:var(--text)}.Concepts-module__y8T21q__cx-hub-front{fill:var(--front);stroke:var(--control-border);stroke-width:.75px}.Concepts-module__y8T21q__cx-hub-top{fill:var(--top);stroke:var(--control-border);stroke-width:.75px}.Concepts-module__y8T21q__cx-hub-side{fill:var(--side);stroke:var(--control-border);stroke-width:.75px}.Concepts-module__y8T21q__cx-hub-bar{fill:var(--dc)}.Concepts-module__y8T21q__cx-hub-t{font:600 14px var(--font-ui);fill:var(--text);letter-spacing:.02em}.Concepts-module__y8T21q__cx-hub{transition:opacity var(--duration-feedback) var(--ease-enter)}.Concepts-module__y8T21q__cx-hub.Concepts-module__y8T21q__dim,.Concepts-module__y8T21q__cx-lit .Concepts-module__y8T21q__cx-hub:not(.Concepts-module__y8T21q__nb){opacity:.3}.Concepts-module__y8T21q__cx-n{cursor:pointer;transition:opacity var(--duration-feedback) var(--ease-enter);outline:none}.Concepts-module__y8T21q__cx-n-bg{fill:var(--surface-2);stroke:color-mix(in srgb, var(--dc) 40%, var(--border));stroke-width:1px;transition:fill var(--duration-feedback) var(--ease-enter)}.Concepts-module__y8T21q__cx-n.Concepts-module__y8T21q__shared .Concepts-module__y8T21q__cx-n-bg{stroke-dasharray:6 3}.Concepts-module__y8T21q__cx-n-dot{fill:var(--dc)}.Concepts-module__y8T21q__cx-n.Concepts-module__y8T21q__problem .Concepts-module__y8T21q__cx-n-dot{fill:var(--surface-2);stroke:var(--dc);stroke-width:2px}.Concepts-module__y8T21q__cx-n-t{font:500 13px var(--font-ui);fill:var(--text)}.Concepts-module__y8T21q__cx-pips rect{fill:var(--surface-3)}.Concepts-module__y8T21q__cx-pips rect.Concepts-module__y8T21q__on{fill:var(--secondary)}.Concepts-module__y8T21q__cx-done circle{fill:color-mix(in srgb, var(--success) 22%, var(--surface-1));stroke:var(--success);stroke-width:1px}.Concepts-module__y8T21q__cx-done path{fill:none;stroke:var(--success);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.Concepts-module__y8T21q__cx-n.Concepts-module__y8T21q__dim{opacity:.14;pointer-events:none}.Concepts-module__y8T21q__cx-lit .Concepts-module__y8T21q__cx-n:not(.Concepts-module__y8T21q__on):not(.Concepts-module__y8T21q__nb){opacity:.3}.Concepts-module__y8T21q__cx-n.Concepts-module__y8T21q__on .Concepts-module__y8T21q__cx-n-bg{fill:color-mix(in srgb, var(--dc) 18%, var(--surface-2));stroke:var(--dc);stroke-width:2px}.Concepts-module__y8T21q__cx-n.Concepts-module__y8T21q__nb .Concepts-module__y8T21q__cx-n-bg{stroke:var(--dc)}.Concepts-module__y8T21q__cx-n:focus-visible .Concepts-module__y8T21q__cx-n-bg{stroke:var(--text);stroke-width:2px;stroke-dasharray:none}@media (hover:hover){.Concepts-module__y8T21q__cx-n:hover .Concepts-module__y8T21q__cx-n-bg{fill:var(--surface-3)}}.Concepts-module__y8T21q__cx-tip{z-index:5;width:300px;padding:var(--space-4);background:var(--surface-2);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-overlay);pointer-events:none;position:absolute;top:0;left:0}.Concepts-module__y8T21q__cx-card-top{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--text-xs);display:flex}.Concepts-module__y8T21q__cx-dom{gap:var(--space-1);font-family:var(--font-ui);flex-wrap:wrap;display:inline-flex}.Concepts-module__y8T21q__cx-dom>span:not([aria-hidden]){color:color-mix(in srgb, var(--dc) 70%, var(--text))}.Concepts-module__y8T21q__cx-dom>span[aria-hidden]{color:var(--muted)}.Concepts-module__y8T21q__cx-card-h{margin:var(--space-2) 0 var(--space-1);font-size:var(--text-md);font-weight:600;line-height:1.3}.Concepts-module__y8T21q__cx-kind{margin-left:var(--space-1);padding:0 var(--space-1);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);color:var(--secondary);font:400 11px/1.6 var(--font-mono);vertical-align:2px}.Concepts-module__y8T21q__cx-card-d{color:var(--secondary);font-size:var(--text-sm);margin:0;line-height:1.5}.Concepts-module__y8T21q__cx-card-m{gap:var(--space-1);margin:var(--space-3) 0 0;font-size:var(--text-xs);display:grid}.Concepts-module__y8T21q__cx-card-m div{gap:var(--space-2);grid-template-columns:76px minmax(0,1fr);display:grid}.Concepts-module__y8T21q__cx-card-m dt{color:var(--muted)}.Concepts-module__y8T21q__cx-card-m dd{color:var(--text);margin:0}.Concepts-module__y8T21q__cx-card-m .Concepts-module__y8T21q__good{color:var(--success)}.Concepts-module__y8T21q__cx-grp+.Concepts-module__y8T21q__cx-grp{margin-top:var(--space-6)}.Concepts-module__y8T21q__cx-grp-h{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:600;display:flex}.Concepts-module__y8T21q__cx-grp-h .Concepts-module__y8T21q__mono{color:var(--muted);font-weight:400;font-size:var(--text-xs)}.Concepts-module__y8T21q__cx-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin:0;padding:0;list-style:none;display:grid}.Concepts-module__y8T21q__cx-card{width:100%;height:100%;padding:var(--space-4);text-align:left;border:0;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:0;display:block}.Concepts-module__y8T21q__cx-card.Concepts-module__y8T21q__sel{border-color:var(--dc);background:color-mix(in srgb, var(--dc) 6%, var(--surface-1))}@media (hover:hover){.Concepts-module__y8T21q__cx-card:hover{border-color:var(--control-border);border-top-color:var(--dc)}}.Concepts-module__y8T21q__cx-empty{margin-top:var(--space-4)}.Concepts-module__y8T21q__cx-empty p{margin:0}.Concepts-module__y8T21q__cx-panel{top:var(--space-4);max-height:calc(100vh - var(--sh-nav-h) - var(--sh-bar-h) - var(--space-8));background:var(--surface-1);border:var(--border-width) solid var(--border);border-radius:var(--radius-panel);opacity:0;transition:opacity var(--duration-transition) var(--ease-enter), transform var(--duration-transition) var(--ease-enter);flex-direction:column;display:flex;position:sticky;overflow:hidden;transform:translate(12px)}.Concepts-module__y8T21q__cx-panel.Concepts-module__y8T21q__in{opacity:1;transform:none}.Concepts-module__y8T21q__cx-close{top:var(--space-3);right:var(--space-3);z-index:1;background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);width:36px;height:36px;color:var(--secondary);cursor:pointer;place-items:center;display:grid;position:absolute}.Concepts-module__y8T21q__cx-close svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;width:14px;height:14px}@media (hover:hover){.Concepts-module__y8T21q__cx-close:hover{color:var(--text);border-color:var(--control-border)}}.Concepts-module__y8T21q__cx-p-body{overscroll-behavior:contain;padding:var(--space-6);overflow-y:auto}.Concepts-module__y8T21q__cx-p-head{padding-right:var(--space-12)}.Concepts-module__y8T21q__cx-p-head .Concepts-module__y8T21q__cx-card-top{justify-content:flex-start;gap:var(--space-3)}.Concepts-module__y8T21q__cx-p-title{margin:var(--space-2) 0 var(--space-1);font-size:var(--text-xl);font-weight:600;line-height:var(--leading-heading)}.Concepts-module__y8T21q__cx-p-title:focus{outline:none}.Concepts-module__y8T21q__cx-p-desc{color:var(--secondary);margin:0;line-height:1.55}.Concepts-module__y8T21q__cx-sec{margin-top:var(--space-6);padding-top:var(--space-4);border-top:var(--border-width) solid var(--border)}.Concepts-module__y8T21q__cx-sec-h{margin:0 0 var(--space-3);font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary)}.Concepts-module__y8T21q__cx-p{margin:var(--space-3) 0 0;color:var(--secondary);font-size:var(--text-sm);line-height:1.6}.Concepts-module__y8T21q__cx-flow{align-items:center;gap:var(--space-1);counter-reset:f;flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.Concepts-module__y8T21q__cx-flow li{padding:var(--space-1) var(--space-2);background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-sm);font:var(--text-xs)/1.5 var(--font-mono);color:var(--text);position:relative}.Concepts-module__y8T21q__cx-flow li+li:before{content:"→";margin-right:var(--space-1);color:var(--muted)}.Concepts-module__y8T21q__cx-flow li+li{padding-left:var(--space-1)}.Concepts-module__y8T21q__cx-list{padding-left:var(--space-4);color:var(--text);font-size:var(--text-sm);margin:0;line-height:1.6}.Concepts-module__y8T21q__cx-list li::marker{color:var(--muted)}.Concepts-module__y8T21q__cx-tr{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.Concepts-module__y8T21q__cx-tr-col{padding:var(--space-3);background:var(--surface-2);border-radius:var(--radius-control);font-size:var(--text-sm)}.Concepts-module__y8T21q__cx-tr-col ul{padding-left:var(--space-4);color:var(--text);margin:0;line-height:1.5}.Concepts-module__y8T21q__cx-tr-col li+li{margin-top:var(--space-1)}.Concepts-module__y8T21q__cx-tr-h{margin:0 0 var(--space-2);font-weight:600;font-size:var(--text-xs)}.Concepts-module__y8T21q__cx-tr-h span{width:16px;height:16px;margin-right:var(--space-1);border-radius:var(--radius-sm);font-family:var(--font-mono);place-items:center;display:inline-grid}.Concepts-module__y8T21q__cx-tr-col.Concepts-module__y8T21q__good .Concepts-module__y8T21q__cx-tr-h{color:var(--success)}.Concepts-module__y8T21q__cx-tr-col.Concepts-module__y8T21q__good .Concepts-module__y8T21q__cx-tr-h span{background:color-mix(in srgb, var(--success) 18%, transparent)}.Concepts-module__y8T21q__cx-tr-col.Concepts-module__y8T21q__bad .Concepts-module__y8T21q__cx-tr-h{color:var(--warning)}.Concepts-module__y8T21q__cx-tr-col.Concepts-module__y8T21q__bad .Concepts-module__y8T21q__cx-tr-h span{background:color-mix(in srgb, var(--warning) 18%, transparent)}.Concepts-module__y8T21q__cx-comps,.Concepts-module__y8T21q__cx-rel{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.Concepts-module__y8T21q__cx-comp{align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-3) 0 var(--space-1);background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);font-size:var(--text-sm);display:inline-flex}.Concepts-module__y8T21q__cx-comp img,.Concepts-module__y8T21q__cx-comp svg{border-radius:var(--radius-sm);flex:none;width:24px;height:24px;padding:4px}.Concepts-module__y8T21q__cx-comp img{background:var(--plate)}.Concepts-module__y8T21q__cx-comp svg{background:var(--surface-3);fill:none;stroke:var(--secondary);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.Concepts-module__y8T21q__cx-chs{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.Concepts-module__y8T21q__cx-chs a{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);background:var(--surface-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);color:var(--text);font-size:var(--text-sm);flex-wrap:wrap;text-decoration:none;display:flex}.Concepts-module__y8T21q__cx-ch-n{font-weight:500}.Concepts-module__y8T21q__cx-ch-m{align-items:center;gap:var(--space-3);font-size:var(--text-xs);display:inline-flex}.Concepts-module__y8T21q__cx-ch-m .Concepts-module__y8T21q__status{margin-left:0}@media (hover:hover){.Concepts-module__y8T21q__cx-chs a:hover{border-color:var(--control-border)}}.Concepts-module__y8T21q__cx-chip{align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-3);border:var(--border-width) solid var(--border);color:var(--text);font-size:var(--text-sm);cursor:pointer;background:0 0;border-radius:999px;display:inline-flex}@media (hover:hover){.Concepts-module__y8T21q__cx-chip:hover{border-color:var(--dc)}}.Concepts-module__y8T21q__cx-say{margin:var(--space-4) 0 0;padding:var(--space-3);background:var(--surface-1);border-radius:var(--radius-control);font-size:var(--text-sm);color:var(--text);line-height:1.5}.Concepts-module__y8T21q__cx-meters{gap:var(--space-2);margin:var(--space-3) 0 0;display:grid}.Concepts-module__y8T21q__cx-bar{background:var(--surface-3);border-radius:2px;height:4px;position:relative;overflow:hidden}.Concepts-module__y8T21q__cx-bar i{transform-origin:0;background:var(--success);transition:transform var(--duration-transition) var(--ease-enter);position:absolute;inset:0}.Concepts-module__y8T21q__sm-cells{margin-top:var(--space-3);flex-wrap:wrap;align-items:center;gap:3px;display:flex}.Concepts-module__y8T21q__sm-cells i,.Concepts-module__y8T21q__sm-key i{border-radius:2px;width:10px;height:10px;display:inline-block}.Concepts-module__y8T21q__sm-cells .Concepts-module__y8T21q__mono{margin-left:var(--space-1);font-size:var(--text-xs);color:var(--muted)}.Concepts-module__y8T21q__c-won{background:var(--success)}.Concepts-module__y8T21q__c-bad{background:var(--error)}.Concepts-module__y8T21q__c-no{background:var(--surface-3);border:1px solid var(--control-border)}.Concepts-module__y8T21q__c-wait{border:1.5px solid var(--warning);background:0 0}.Concepts-module__y8T21q__sm-key{gap:var(--space-3);margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;display:flex}.Concepts-module__y8T21q__sm-key span{align-items:center;gap:var(--space-1);display:inline-flex}@media (max-width:1023px){.Concepts-module__y8T21q__cx-open .Concepts-module__y8T21q__cx-body{grid-template-columns:minmax(0,1fr)}.Concepts-module__y8T21q__cx-panel{z-index:45;width:min(var(--cx-panel-w), 100%);border-width:0 0 0 var(--border-width);max-height:none;box-shadow:var(--shadow-overlay);border-radius:0;position:fixed;top:0;bottom:0;right:0;transform:translate(24px)}.Concepts-module__y8T21q__cx-stage{overflow-x:auto}.Concepts-module__y8T21q__cx-map{min-width:860px}}@media (max-width:640px){.Concepts-module__y8T21q__cx{padding:var(--space-4) var(--space-4) var(--space-12)}.Concepts-module__y8T21q__cx-legend{display:none}.Concepts-module__y8T21q__cx-search{flex-basis:100%;max-width:none}.Concepts-module__y8T21q__cx-count{margin-left:0}.Concepts-module__y8T21q__cx-tr{grid-template-columns:minmax(0,1fr)}.Concepts-module__y8T21q__cx-p-body{padding:var(--space-4)}}@media (prefers-reduced-motion:reduce){.Concepts-module__y8T21q__cx-e,.Concepts-module__y8T21q__cx-n,.Concepts-module__y8T21q__cx-hub,.Concepts-module__y8T21q__cx-n-bg,.Concepts-module__y8T21q__cx-panel,.Concepts-module__y8T21q__cx-bar i{transition:none}}.Concepts-module__y8T21q__cx-legend-disclosure{margin-top:var(--space-2)}.Concepts-module__y8T21q__cx-legend-disclosure .Concepts-module__y8T21q__cx-legend{padding-top:var(--space-2)}.Concepts-module__y8T21q__cx-head{align-items:center}.Concepts-module__y8T21q__cx-head .Concepts-module__y8T21q__cx-sub{font-size:var(--text-sm)}.Concepts-module__y8T21q__cx-flow li{border-radius:var(--radius-sm);box-shadow:none}.Concepts-module__y8T21q__cx-tr{gap:var(--space-4)}@media (max-width:767px){.Concepts-module__y8T21q__cx{padding:var(--space-4)}.Concepts-module__y8T21q__cx-head{align-items:flex-start}.Concepts-module__y8T21q__cx-doms{gap:var(--space-1)}.Concepts-module__y8T21q__cx-dchip{white-space:normal;text-align:left}}.Concepts-module__y8T21q__d-data{--dc:color-mix(in srgb, var(--accent) 55%, var(--traffic))}.Concepts-module__y8T21q__d-dist{--dc:color-mix(in srgb, var(--accent) 50%, var(--error))}.Concepts-module__y8T21q__d-obs{--dc:color-mix(in srgb, var(--warning) 50%, var(--success))}.Concepts-module__y8T21q__cx-head h1{font-size:var(--heading-page)}.Concepts-module__y8T21q__cx-sec-h{font-family:var(--font-ui);font-size:var(--text-sm);text-transform:none;letter-spacing:0;color:var(--text);font-weight:600}ol.Concepts-module__y8T21q__cx-list{padding-left:var(--space-6)}.Concepts-module__y8T21q__cx-list li+li{margin-top:var(--space-1)}.Concepts-module__y8T21q__cx-src{margin:var(--space-6) 0 0;color:var(--muted);font-size:var(--text-xs)}.Concepts-module__y8T21q__cx-src p{margin:0}.Concepts-module__y8T21q__cx{--cx-panel-w:440px}@media (max-width:1279px){.Concepts-module__y8T21q__cx{--cx-panel-w:400px}}.Concepts-module__y8T21q__cx-panel.Concepts-module__y8T21q__in{animation:Concepts-module__y8T21q__cx-in var(--duration-transition) var(--ease-enter)}@keyframes Concepts-module__y8T21q__cx-in{0%{opacity:0;transform:translate(12px)}}.Concepts-module__y8T21q__cx-card{flex-direction:column;justify-content:flex-start;display:flex}
.Canvas-module__ThxZnq__app{grid-template-rows:auto auto minmax(0,1fr);height:100dvh;display:grid}.Canvas-module__ThxZnq__topbar{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);min-height:var(--topbar-h);background:var(--surface-1);border-bottom:1px solid var(--border);z-index:20;display:flex;position:relative}.Canvas-module__ThxZnq__eyebrow{font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary)}.Canvas-module__ThxZnq__tools{align-items:center;gap:var(--space-2);flex:1 1 0;min-width:0;display:flex}.Canvas-module__ThxZnq__tools::-webkit-scrollbar{display:none}.Canvas-module__ThxZnq__sep{width:1px;margin:4px var(--space-1);background:var(--border);flex:none;align-self:stretch}.Canvas-module__ThxZnq__legend{align-items:center;gap:var(--space-4);color:var(--secondary);font-size:var(--text-xs);flex:none;display:flex}.Canvas-module__ThxZnq__legend span{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.Canvas-module__ThxZnq__legend svg{width:28px;height:8px;overflow:visible}.Canvas-module__ThxZnq__legend line{stroke-width:2px;stroke-linecap:round}.Canvas-module__ThxZnq__btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-3);background:var(--surface-2);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-control);box-shadow:var(--shadow-control);cursor:pointer;white-space:nowrap;transition:background var(--duration-feedback) var(--ease-enter), border-color var(--duration-feedback) var(--ease-enter);flex:none;display:inline-flex}.Canvas-module__ThxZnq__btn:hover{background:var(--surface-3)}.Canvas-module__ThxZnq__btn:focus-visible,.Canvas-module__ThxZnq__ins-list button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Canvas-module__ThxZnq__btn[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface-2))}.Canvas-module__ThxZnq__btn[aria-disabled=true]{color:var(--muted);box-shadow:none;cursor:not-allowed;background:var(--surface-1)}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:500}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__primary:hover{background:color-mix(in srgb, var(--accent) 86%, var(--text))}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__danger{border-color:var(--error);color:var(--error)}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__icon{width:32px;padding:0}.Canvas-module__ThxZnq__btn svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.Canvas-module__ThxZnq__stage{background:var(--canvas);flex:1 1 0;min-width:0;min-height:0;position:relative;overflow:hidden}.Canvas-module__ThxZnq__cv{touch-action:none;-webkit-user-select:none;user-select:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.Canvas-module__ThxZnq__stage.Canvas-module__ThxZnq__space-pan .Canvas-module__ThxZnq__cv{cursor:grab}.Canvas-module__ThxZnq__stage.Canvas-module__ThxZnq__panning .Canvas-module__ThxZnq__cv,.Canvas-module__ThxZnq__stage.Canvas-module__ThxZnq__panning .Canvas-module__ThxZnq__cv *{cursor:grabbing!important}.Canvas-module__ThxZnq__grid-dot{fill:var(--grid)}.Canvas-module__ThxZnq__group-fill{fill:color-mix(in srgb, var(--gc) 5%, transparent);stroke:color-mix(in srgb, var(--gc) 38%, transparent);stroke-width:1px;stroke-dasharray:2 5;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:none;transition:fill var(--duration-feedback) var(--ease-enter)}.Canvas-module__ThxZnq__group.Canvas-module__ThxZnq__sel .Canvas-module__ThxZnq__group-fill{fill:color-mix(in srgb, var(--gc) 9%, transparent);stroke:color-mix(in srgb, var(--gc) 70%, transparent);stroke-dasharray:none}.Canvas-module__ThxZnq__group-hit{fill:none;stroke:#0000;stroke-width:14px;pointer-events:stroke;cursor:grab;vector-effect:non-scaling-stroke}.Canvas-module__ThxZnq__group-tab{fill:color-mix(in srgb, var(--gc) 14%, var(--canvas));stroke:none;cursor:grab}.Canvas-module__ThxZnq__group-label{font:600 12px var(--font-ui);fill:var(--secondary);pointer-events:none}.Canvas-module__ThxZnq__group:hover .Canvas-module__ThxZnq__group-fill,.Canvas-module__ThxZnq__group:focus-visible .Canvas-module__ThxZnq__group-fill{stroke:color-mix(in srgb, var(--gc) 60%, transparent)}.Canvas-module__ThxZnq__group:focus-visible{outline:none}.Canvas-module__ThxZnq__group:focus-visible .Canvas-module__ThxZnq__group-tab{stroke:var(--text);stroke-dasharray:4 3}.Canvas-module__ThxZnq__edge{--c:var(--edge-http);cursor:pointer;outline:none}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__k-db{--c:var(--edge-db)}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__k-cache{--c:var(--edge-cache)}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__k-msg{--c:var(--edge-msg)}.Canvas-module__ThxZnq__edge .Canvas-module__ThxZnq__hit{fill:none;stroke:#0000;stroke-width:18px;pointer-events:stroke;vector-effect:non-scaling-stroke}.Canvas-module__ThxZnq__edge .Canvas-module__ThxZnq__line{fill:none;stroke:var(--c);stroke-linecap:round;opacity:.65;pointer-events:none;transition:opacity var(--duration-feedback) var(--ease-enter)}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__k-db .Canvas-module__ThxZnq__line{stroke-dasharray:10 5}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__k-cache .Canvas-module__ThxZnq__line{stroke-dasharray:2 6}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__k-msg .Canvas-module__ThxZnq__line{stroke-dasharray:14 4 2 4}.Canvas-module__ThxZnq__edge:hover .Canvas-module__ThxZnq__line,.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__hot .Canvas-module__ThxZnq__line,.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__sel .Canvas-module__ThxZnq__line,.Canvas-module__ThxZnq__edge:focus-visible .Canvas-module__ThxZnq__line{opacity:1}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__sel .Canvas-module__ThxZnq__line{stroke-width:3.5px!important}.Canvas-module__ThxZnq__edge:focus-visible .Canvas-module__ThxZnq__line{stroke-dasharray:none}.Canvas-module__ThxZnq__mk-http{fill:var(--edge-http)}.Canvas-module__ThxZnq__mk-db{fill:var(--edge-db)}.Canvas-module__ThxZnq__mk-cache{fill:var(--edge-cache)}.Canvas-module__ThxZnq__mk-msg{fill:var(--edge-msg)}.Canvas-module__ThxZnq__edge-temp{fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:6 4;pointer-events:none;vector-effect:non-scaling-stroke}.Canvas-module__ThxZnq__node{cursor:grab;outline:none}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__dragging{cursor:grabbing}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__body{filter:drop-shadow(var(--shadow-node))}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__front{fill:var(--front);stroke:var(--control-border);stroke-width:.75px;transition:fill var(--duration-feedback) var(--ease-enter)}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__top{fill:color-mix(in srgb, var(--acc,var(--top)) 22%, var(--top));stroke:var(--control-border);stroke-width:.75px}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__side{fill:var(--side);stroke:var(--control-border);stroke-width:.75px}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__outline{fill:none;stroke:#0000;stroke-width:2px;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__sel .Canvas-module__ThxZnq__outline{stroke:var(--accent)}.Canvas-module__ThxZnq__node:focus-visible .Canvas-module__ThxZnq__outline{stroke:var(--text);stroke-dasharray:4 3}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__sel:focus-visible .Canvas-module__ThxZnq__outline{stroke:var(--accent);stroke-dasharray:none}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__link-target .Canvas-module__ThxZnq__outline{stroke:var(--traffic)}.Canvas-module__ThxZnq__n-icon{fill:none;stroke:var(--secondary);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.Canvas-module__ThxZnq__n-type{font:500 12px var(--font-ui);fill:var(--secondary);pointer-events:none}.Canvas-module__ThxZnq__n-name{font:500 16px var(--font-ui);fill:var(--text);pointer-events:none}.Canvas-module__ThxZnq__n-metric{font:12px var(--font-mono);font-variant-numeric:tabular-nums;fill:var(--secondary);pointer-events:none}.Canvas-module__ThxZnq__n-tag{font:600 10px var(--font-ui);pointer-events:none}.Canvas-module__ThxZnq__n-health.Canvas-module__ThxZnq__h-ok{display:none}.Canvas-module__ThxZnq__n-health{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.Canvas-module__ThxZnq__n-tag.Canvas-module__ThxZnq__h-ok{fill:var(--success)}.Canvas-module__ThxZnq__n-tag.Canvas-module__ThxZnq__h-warn{fill:var(--warning)}.Canvas-module__ThxZnq__n-tag.Canvas-module__ThxZnq__h-err{fill:var(--error)}.Canvas-module__ThxZnq__port-dot{fill:var(--canvas);stroke:var(--accent);stroke-width:1.5px;opacity:0;transition:opacity var(--duration-feedback) var(--ease-enter);pointer-events:none}.Canvas-module__ThxZnq__port-hit{fill:#0000;pointer-events:none;cursor:crosshair}.Canvas-module__ThxZnq__node:hover .Canvas-module__ThxZnq__port-dot,.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__sel .Canvas-module__ThxZnq__port-dot,.Canvas-module__ThxZnq__node:focus-visible .Canvas-module__ThxZnq__port-dot,.Canvas-module__ThxZnq__cv.Canvas-module__ThxZnq__linking .Canvas-module__ThxZnq__port-dot{opacity:1}.Canvas-module__ThxZnq__node:hover .Canvas-module__ThxZnq__port-hit,.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__sel .Canvas-module__ThxZnq__port-hit{pointer-events:all}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__port-hit:hover+.Canvas-module__ThxZnq__port-dot,.Canvas-module__ThxZnq__port:hover .Canvas-module__ThxZnq__port-dot{fill:var(--accent)}.Canvas-module__ThxZnq__node:hover .Canvas-module__ThxZnq__front{stroke:var(--secondary)}.Canvas-module__ThxZnq__guide{stroke:var(--accent);stroke-width:1px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;pointer-events:none;opacity:.85}.Canvas-module__ThxZnq__marq{fill:color-mix(in srgb, var(--accent) 10%, transparent);stroke:var(--accent);stroke-width:1px;vector-effect:non-scaling-stroke;pointer-events:none}.Canvas-module__ThxZnq__dock{left:var(--space-4);bottom:var(--space-4);align-items:center;gap:var(--space-1);max-width:calc(100% - 32px);padding:var(--space-1);background:var(--surface-1);border:var(--border-width) solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-overlay);z-index:3;flex-wrap:wrap;display:flex;position:absolute}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__btn{box-shadow:none;background:0 0;border-color:#0000}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__btn:hover{background:var(--surface-3)}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__zoom{min-width:56px;padding:0 var(--space-1);font:var(--text-sm) var(--font-mono);font-variant-numeric:tabular-nums;color:var(--secondary)}.Canvas-module__ThxZnq__cv-legend{right:var(--space-4);bottom:var(--space-4);z-index:2;padding:var(--space-2) var(--space-3);background:color-mix(in srgb, var(--surface-1) 90%, transparent);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);pointer-events:none;position:absolute}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__sep{margin:4px 2px}.Canvas-module__ThxZnq__hint{left:50%;bottom:var(--space-4);color:var(--muted);font-size:var(--text-xs);gap:var(--space-3);pointer-events:none;z-index:1;white-space:nowrap;align-items:center;display:flex;position:absolute;transform:translate(-50%)}.Canvas-module__ThxZnq__inspector{width:var(--panel-w);background:var(--surface-1);border-left:1px solid var(--border);z-index:4;flex-direction:column;flex:none;min-height:0;display:none;position:relative}.Canvas-module__ThxZnq__inspector.Canvas-module__ThxZnq__open{display:flex}.Canvas-module__ThxZnq__ins-h{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:var(--border-width) solid var(--border);display:flex}.Canvas-module__ThxZnq__ins-h h2{font-size:var(--text-lg);font-weight:500;line-height:var(--leading-heading);overflow-wrap:anywhere;margin:2px 0 0}.Canvas-module__ThxZnq__ins-body{min-height:0;padding:var(--space-4);gap:var(--space-6);flex:1 1 0;align-content:start;display:grid;overflow-y:auto}.Canvas-module__ThxZnq__ins-f{gap:var(--space-2);padding:var(--space-4);border-top:var(--border-width) solid var(--border);flex-wrap:wrap;display:flex}.Canvas-module__ThxZnq__ins-sec{gap:var(--space-3);display:grid}.Canvas-module__ThxZnq__ins-sec h3{font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary);margin:0}.Canvas-module__ThxZnq__fld{gap:var(--space-1);display:grid}.Canvas-module__ThxZnq__fld>span{color:var(--secondary);font-size:var(--text-xs)}.Canvas-module__ThxZnq__fld input,.Canvas-module__ThxZnq__fld select{min-height:36px;padding:0 var(--space-3);background:var(--canvas);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-control);width:100%}.Canvas-module__ThxZnq__stats{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.Canvas-module__ThxZnq__stats>div{padding:var(--space-2) var(--space-3);background:var(--canvas);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);gap:2px;display:grid}.Canvas-module__ThxZnq__stats dt{color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__stats dd{font:var(--text-sm) var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.Canvas-module__ThxZnq__health{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:inline-flex}.Canvas-module__ThxZnq__health svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.Canvas-module__ThxZnq__ins-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.Canvas-module__ThxZnq__ins-list button{align-items:center;gap:var(--space-2);text-align:left;width:100%;min-height:36px;padding:4px var(--space-3);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);cursor:pointer;background:0 0;display:flex}.Canvas-module__ThxZnq__ins-list button:hover{background:var(--surface-2);border-color:var(--control-border)}.Canvas-module__ThxZnq__ins-list .Canvas-module__ThxZnq__dim{color:var(--muted);font:var(--text-xs) var(--font-mono);white-space:nowrap;margin-left:auto}.Canvas-module__ThxZnq__note{color:var(--secondary);margin:0}.Canvas-module__ThxZnq__pop{z-index:6;width:280px;padding:var(--space-4);gap:var(--space-3);background:var(--surface-1);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-overlay);opacity:0;pointer-events:none;transition:opacity var(--duration-transition) var(--ease-enter), transform var(--duration-transition) var(--ease-enter);display:grid;position:absolute;transform:translateY(4px)}.Canvas-module__ThxZnq__pop.Canvas-module__ThxZnq__open{opacity:1;pointer-events:auto;transform:none}.Canvas-module__ThxZnq__pop .Canvas-module__ThxZnq__fld input,.Canvas-module__ThxZnq__pop .Canvas-module__ThxZnq__fld select{background:var(--canvas)}.Canvas-module__ThxZnq__pop-f{justify-content:flex-end;gap:var(--space-2);display:flex}.Canvas-module__ThxZnq__pop h2{font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary);margin:0}.Canvas-module__ThxZnq__tip{z-index:7;min-width:188px;padding:var(--space-3);background:var(--surface-3);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-control);box-shadow:var(--shadow-overlay);pointer-events:none;opacity:0;transition:opacity var(--duration-exit) var(--ease-exit);position:absolute}.Canvas-module__ThxZnq__tip.Canvas-module__ThxZnq__show{opacity:1;transition:opacity var(--duration-feedback) var(--ease-enter)}.Canvas-module__ThxZnq__tip .Canvas-module__ThxZnq__tip-h{align-items:center;gap:var(--space-2);font-weight:500;font-size:var(--text-md);margin-bottom:2px;display:flex}.Canvas-module__ThxZnq__tip dl{gap:2px var(--space-4);grid-template-columns:auto 1fr;margin:0;display:grid}.Canvas-module__ThxZnq__tip dt{color:var(--muted);font-size:var(--text-xs);align-self:center}.Canvas-module__ThxZnq__tip dd{text-align:right;font:var(--text-sm) var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.Canvas-module__ThxZnq__toast{left:50%;top:var(--space-4);z-index:8;padding:var(--space-2) var(--space-4);background:var(--surface-3);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-control);box-shadow:var(--shadow-overlay);opacity:0;pointer-events:none;transition:opacity var(--duration-exit) var(--ease-exit), transform var(--duration-exit) var(--ease-exit);position:absolute;transform:translate(-50%,-8px)}.Canvas-module__ThxZnq__toast.Canvas-module__ThxZnq__show{opacity:1;transition-duration:var(--duration-feedback);transition-timing-function:var(--ease-enter);transform:translate(-50%)}.Canvas-module__ThxZnq__help{z-index:9;background:var(--scrim);padding:var(--space-4);opacity:0;visibility:hidden;transition:opacity var(--duration-transition) var(--ease-enter), visibility 0s linear var(--duration-transition);place-items:center;display:grid;position:absolute;inset:0}.Canvas-module__ThxZnq__help.Canvas-module__ThxZnq__open{opacity:1;visibility:visible;transition-delay:0s}.Canvas-module__ThxZnq__help-card{background:var(--surface-1);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-panel);width:min(640px,100%);max-height:100%;box-shadow:var(--shadow-overlay);padding:var(--space-6);gap:var(--space-4);display:grid;overflow:auto}.Canvas-module__ThxZnq__help-card h2{font-size:var(--text-lg);margin:0;font-weight:500}.Canvas-module__ThxZnq__keys{gap:var(--space-2) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.Canvas-module__ThxZnq__keys div{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-1) 0;border-bottom:var(--border-width) solid var(--border);display:flex}.Canvas-module__ThxZnq__keys dt{color:var(--secondary)}.Canvas-module__ThxZnq__keys dd{gap:var(--space-1);flex-wrap:wrap;justify-content:flex-end;margin:0;display:flex}.Canvas-module__ThxZnq__sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1180px){.Canvas-module__ThxZnq__hint{display:none}}@media (max-width:900px){.Canvas-module__ThxZnq__inspector{width:min(320px,45vw)}.Canvas-module__ThxZnq__inspector.Canvas-module__ThxZnq__open{transform:none}.Canvas-module__ThxZnq__dock{gap:2px}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__btn{padding-inline:6px}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__icon{width:32px;min-width:32px}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__zoom{min-width:48px}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__sep{display:none}.Canvas-module__ThxZnq__keys{grid-template-columns:1fr}}@media (pointer:coarse){.Canvas-module__ThxZnq__btn{min-height:44px}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__icon{width:44px}.Canvas-module__ThxZnq__fld input,.Canvas-module__ThxZnq__fld select,.Canvas-module__ThxZnq__ins-list button{min-height:44px}}@media (prefers-reduced-motion:reduce){.Canvas-module__ThxZnq__node:hover .Canvas-module__ThxZnq__outline{stroke:var(--secondary)}}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__plate{fill:var(--surface-3);stroke:var(--control-border);stroke-width:.75px;pointer-events:none}.Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__plate-tech{fill:var(--plate);stroke:color-mix(in srgb, var(--acc,var(--control-border)) 55%, var(--plate));stroke-width:1px}.Canvas-module__ThxZnq__node image{pointer-events:none}.Canvas-module__ThxZnq__n-tech{font:12px var(--font-mono);fill:var(--secondary);pointer-events:none}.Canvas-module__ThxZnq__btn-select{min-height:32px;padding:0 var(--space-3);background:var(--surface-2);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-control);box-shadow:var(--shadow-control);cursor:pointer;flex:none}.Canvas-module__ThxZnq__btn-select:hover{background:var(--surface-3)}.Canvas-module__ThxZnq__btn-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Canvas-module__ThxZnq__tech-chip{align-items:center;gap:var(--space-3);display:flex}.Canvas-module__ThxZnq__plate-img{background:var(--plate);border-radius:var(--radius-sm);width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--border);flex:none;place-items:center;display:grid}.Canvas-module__ThxZnq__plate-img img{width:28px;height:28px;display:block}.Canvas-module__ThxZnq__plate-img.Canvas-module__ThxZnq__gen{background:var(--surface-3);border:var(--border-width) solid var(--control-border)}.Canvas-module__ThxZnq__plate-img.Canvas-module__ThxZnq__gen svg{fill:none;width:24px;height:24px;stroke:var(--secondary);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}@media (pointer:coarse){.Canvas-module__ThxZnq__btn-select{min-height:44px}}.Canvas-module__ThxZnq__ins-h2{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);display:flex}.Canvas-module__ThxZnq__ins-h2 .Canvas-module__ThxZnq__idb{flex:1 1 0;gap:0;min-width:0;display:grid}.Canvas-module__ThxZnq__ins-h2 h2{font-size:var(--text-md);overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.3}.Canvas-module__ThxZnq__rid{color:var(--secondary);font-size:var(--text-xs);overflow-wrap:anywhere}.Canvas-module__ThxZnq__mono{font-family:var(--font-mono)}.Canvas-module__ThxZnq__dim{color:var(--muted)}.Canvas-module__ThxZnq__pill{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border:var(--border-width) solid currentColor;border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap;flex:none;display:inline-flex}.Canvas-module__ThxZnq__pill svg{width:14px;height:14px}.Canvas-module__ThxZnq__h-ok{color:var(--success)}.Canvas-module__ThxZnq__h-warn{color:var(--warning)}.Canvas-module__ThxZnq__h-err{color:var(--error)}.Canvas-module__ThxZnq__inspector .Canvas-module__ThxZnq__ins-body.Canvas-module__ThxZnq__flush{gap:0;padding:0}.Canvas-module__ThxZnq__sec{border-bottom:var(--border-width) solid var(--border)}.Canvas-module__ThxZnq__sec-h,.Canvas-module__ThxZnq__sub-h{align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:0 var(--space-4);cursor:pointer;text-align:left;background:0 0;border:0;display:flex}.Canvas-module__ThxZnq__sec-h:hover,.Canvas-module__ThxZnq__sub-h:hover{background:var(--surface-2)}.Canvas-module__ThxZnq__sec-h:focus-visible,.Canvas-module__ThxZnq__sub-h:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.Canvas-module__ThxZnq__sec-h svg,.Canvas-module__ThxZnq__sub-h svg{fill:none;width:16px;height:16px;stroke:var(--secondary);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--duration-feedback) var(--ease-enter);flex:none}.Canvas-module__ThxZnq__sec.Canvas-module__ThxZnq__open>.Canvas-module__ThxZnq__sec-h svg,.Canvas-module__ThxZnq__sub.Canvas-module__ThxZnq__open>.Canvas-module__ThxZnq__sub-h svg{transform:rotate(90deg)}.Canvas-module__ThxZnq__sec-t{flex:none;font-weight:500}.Canvas-module__ThxZnq__sec-s{color:var(--muted);font:var(--text-xs) var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere;min-width:0;margin-left:auto}.Canvas-module__ThxZnq__sec-b{padding:var(--space-1) var(--space-4) var(--space-4);gap:var(--space-2);display:grid}.Canvas-module__ThxZnq__sub{border-top:var(--border-width) solid var(--border)}.Canvas-module__ThxZnq__sub:first-child{border-top:0}.Canvas-module__ThxZnq__sub-h{min-height:36px;font-size:var(--text-sm);padding:0}.Canvas-module__ThxZnq__sub-b{padding:var(--space-1) 0 var(--space-3) var(--space-6);gap:var(--space-2);display:grid}.Canvas-module__ThxZnq__cr{align-items:center;column-gap:var(--space-3);grid-template-columns:112px minmax(0,1fr);row-gap:2px;min-height:32px;display:grid}.Canvas-module__ThxZnq__cl{color:var(--secondary);font-size:var(--text-sm)}.Canvas-module__ThxZnq__cval{min-width:0;display:flex}.Canvas-module__ThxZnq__ch{color:var(--muted);font-size:var(--text-xs);grid-column:2}.Canvas-module__ThxZnq__cr input[type=text],.Canvas-module__ThxZnq__cr input[type=number],.Canvas-module__ThxZnq__cr select{width:100%;min-height:32px;padding:0 var(--space-2);background:var(--canvas);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);color:var(--text);font-size:var(--text-sm);transition:border-color var(--duration-feedback) var(--ease-enter)}.Canvas-module__ThxZnq__cr input:hover,.Canvas-module__ThxZnq__cr select:hover{border-color:var(--control-border)}.Canvas-module__ThxZnq__cr input.Canvas-module__ThxZnq__mono{font-family:var(--font-mono);font-size:var(--text-xs)}.Canvas-module__ThxZnq__num{align-items:center;width:100%;display:flex;position:relative}.Canvas-module__ThxZnq__num input{font-family:var(--font-mono);font-variant-numeric:tabular-nums;padding-right:var(--space-2)}.Canvas-module__ThxZnq__num .Canvas-module__ThxZnq__suf{right:var(--space-2);color:var(--muted);font:var(--text-xs) var(--font-mono);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.Canvas-module__ThxZnq__num:has(.Canvas-module__ThxZnq__suf) input{padding-right:84px}.Canvas-module__ThxZnq__sw{align-items:center;gap:var(--space-2);min-height:28px;padding:0 var(--space-2) 0 var(--space-1);background:var(--canvas);border:var(--border-width) solid var(--control-border);cursor:pointer;color:var(--secondary);border-radius:999px;display:inline-flex}.Canvas-module__ThxZnq__sw-k{background:var(--muted);width:16px;height:16px;transition:transform var(--duration-feedback) var(--ease-enter);border-radius:50%}.Canvas-module__ThxZnq__sw-t{font:var(--text-xs) var(--font-mono);min-width:24px}.Canvas-module__ThxZnq__sw[aria-checked=true]{border-color:var(--accent);color:var(--text);background:color-mix(in srgb, var(--accent) 14%, var(--canvas))}.Canvas-module__ThxZnq__sw[aria-checked=true] .Canvas-module__ThxZnq__sw-k{background:var(--accent)}.Canvas-module__ThxZnq__sw:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Canvas-module__ThxZnq__off{padding-left:calc(112px + var(--space-3));color:var(--muted);font-size:var(--text-xs);margin:0}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__sm{min-height:28px;padding:0 var(--space-2);font-size:var(--text-xs);justify-self:start}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__icon.Canvas-module__ThxZnq__sm{width:32px;min-height:32px;box-shadow:none}.Canvas-module__ThxZnq__inspector .Canvas-module__ThxZnq__note{padding:var(--space-3) var(--space-4);font-size:var(--text-xs);color:var(--muted);margin:0}.Canvas-module__ThxZnq__ch-h{font-size:var(--text-xs);color:var(--secondary);justify-content:space-between;display:flex}.Canvas-module__ThxZnq__inspector .Canvas-module__ThxZnq__ins-sec{padding:var(--space-2) var(--space-4)}@media (pointer:coarse){.Canvas-module__ThxZnq__sec-h,.Canvas-module__ThxZnq__sub-h,.Canvas-module__ThxZnq__cr input,.Canvas-module__ThxZnq__cr select{min-height:44px}.Canvas-module__ThxZnq__sw{min-height:36px}}.Canvas-module__ThxZnq__sub-t{margin:var(--space-2) 0 0;color:var(--secondary);font:var(--text-xs) var(--font-ui)}.Canvas-module__ThxZnq__rng{gap:var(--space-2);grid-template-columns:minmax(0,1fr) 56px;align-items:center;width:100%;display:grid}.Canvas-module__ThxZnq__rng input[type=range]{width:100%;accent-color:var(--accent);min-height:24px}.Canvas-module__ThxZnq__rng output{text-align:right;font-size:var(--text-sm)}.Canvas-module__ThxZnq__ro{padding:0 var(--space-2);color:var(--text);font:var(--text-sm) var(--font-mono)}.Canvas-module__ThxZnq__opts{gap:var(--space-1);width:100%;display:grid}.Canvas-module__ThxZnq__opt{align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-2);background:var(--canvas);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);color:var(--secondary);cursor:pointer;text-align:left;transition:background var(--duration-feedback) var(--ease-enter);display:flex}.Canvas-module__ThxZnq__opt:hover{background:var(--surface-2);border-color:var(--control-border)}.Canvas-module__ThxZnq__opt .Canvas-module__ThxZnq__dot{border:1.5px solid var(--control-border);border-radius:50%;flex:none;width:12px;height:12px}.Canvas-module__ThxZnq__opt[aria-checked=true]{border-color:var(--accent);color:var(--text);background:color-mix(in srgb, var(--accent) 12%, var(--canvas))}.Canvas-module__ThxZnq__opt[aria-checked=true] .Canvas-module__ThxZnq__dot{border-color:var(--accent);background:radial-gradient(circle, var(--accent) 0 40%, transparent 45%)}.Canvas-module__ThxZnq__opt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.Canvas-module__ThxZnq__opt{min-height:44px}}@keyframes Canvas-module__ThxZnq__run-blink{50%{opacity:.35}}.Canvas-module__ThxZnq__ghost{fill:none;stroke:var(--edge-db);stroke-width:2px;stroke-dasharray:3 6;opacity:.7}.Canvas-module__ThxZnq__ws{grid-template-rows:minmax(0,1fr);grid-template-columns:auto minmax(0,1fr);min-height:0;display:grid}.Canvas-module__ThxZnq__ws-main{flex-direction:column;grid-column:2;min-width:0;min-height:0;display:flex}.Canvas-module__ThxZnq__chbar{justify-content:space-between;gap:var(--space-3);display:flex}.Canvas-module__ThxZnq__ch-left{align-items:center;gap:var(--space-2);flex:1 1 0;min-width:0;display:flex}.Canvas-module__ThxZnq__ch-back{flex:none}.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__ghost{box-shadow:none;color:var(--secondary);background:0 0;border-color:#0000}@media (hover:hover){.Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__ghost:hover{color:var(--text);background:var(--surface-2)}}.Canvas-module__ThxZnq__btn svg{flex:none}.Canvas-module__ThxZnq__ch-center{align-items:center;gap:var(--space-3);justify-self:center;display:flex}.Canvas-module__ThxZnq__ch-status{align-items:center;gap:var(--space-2);min-height:28px;font-size:var(--text-xs);white-space:nowrap;display:inline-flex}.Canvas-module__ThxZnq__ch-status i{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.Canvas-module__ThxZnq__ch-status[data-st=running]{border-color:color-mix(in srgb, var(--accent) 50%, var(--border))}.Canvas-module__ThxZnq__ch-status[data-st=running] i{background:var(--accent);animation:1s ease-in-out infinite Canvas-module__ThxZnq__run-blink}.Canvas-module__ThxZnq__ch-status[data-st=pass]{color:var(--success);border-color:color-mix(in srgb, var(--success) 50%, var(--border))}.Canvas-module__ThxZnq__ch-status[data-st=pass] i{background:var(--success)}.Canvas-module__ThxZnq__ch-status[data-st=fail]{color:var(--error);border-color:color-mix(in srgb, var(--error) 50%, var(--border))}.Canvas-module__ThxZnq__ch-status[data-st=fail] i{background:var(--error);border-radius:1px;transform:rotate(45deg)}.Canvas-module__ThxZnq__ch-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.Canvas-module__ThxZnq__lib{width:224px;padding:var(--space-4) var(--space-3) 0;background:var(--surface-1);border-right:var(--border-width) solid var(--border);flex-direction:column;display:flex;overflow-y:auto}.Canvas-module__ThxZnq__lib-h{margin:0 var(--space-1);font:600 var(--text-sm)/1.4 var(--font-ui);color:var(--text)}.Canvas-module__ThxZnq__lib-s{margin:var(--space-2) var(--space-1) var(--space-3);color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__lib-list{padding:0 0 var(--space-2);overscroll-behavior:contain;flex:auto;align-content:start;gap:2px;min-height:0;margin:0;list-style:none;display:grid;overflow-y:auto}.Canvas-module__ThxZnq__lib-g{margin:var(--space-3) var(--space-1) var(--space-1);color:var(--muted);font:600 var(--text-xs)/1.4 var(--font-ui)}.Canvas-module__ThxZnq__lib-g:first-child{margin-top:0}.Canvas-module__ThxZnq__lib-f{margin-bottom:var(--space-3);color:var(--muted);flex:none;align-items:center;display:flex;position:relative}.Canvas-module__ThxZnq__lib-f svg{left:var(--space-2);fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:16px;height:16px;position:absolute}body .Canvas-module__ThxZnq__lib-f input{width:100%;min-height:var(--control-compact);padding:0 var(--space-2) 0 var(--space-8);background:var(--canvas);border:var(--border-width) solid var(--border);font-size:var(--text-sm)}.Canvas-module__ThxZnq__lib-f input::placeholder{color:var(--muted)}.Canvas-module__ThxZnq__lib-none{margin:0 var(--space-1);color:var(--secondary);font-size:var(--text-xs)}.Canvas-module__ThxZnq__lib-off .Canvas-module__ThxZnq__lib{display:none}body .Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__panel-t[aria-pressed=true]{background:var(--surface-2);border-color:var(--border)}.Canvas-module__ThxZnq__lib-tile{gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-control);color:var(--text);text-align:left;cursor:grab;transition:background var(--duration-feedback) var(--ease-enter);background:0 0;border:1px solid #0000;grid-template-columns:32px minmax(0,1fr);align-items:center;display:grid}.Canvas-module__ThxZnq__lib-tile:active{cursor:grabbing}@media (hover:hover){.Canvas-module__ThxZnq__lib-tile:hover{background:var(--surface-2)}}.Canvas-module__ThxZnq__lib-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Canvas-module__ThxZnq__lib-t{gap:0;min-width:0;display:grid}.Canvas-module__ThxZnq__lib-n{font-size:var(--text-sm);font-weight:500}.Canvas-module__ThxZnq__lib-d{color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__stage.Canvas-module__ThxZnq__dropping{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--accent) 60%, transparent)}.Canvas-module__ThxZnq__objective{width:auto;padding:var(--space-2) 0;box-shadow:none;background:0 0;border:0;border-radius:0;position:static}.Canvas-module__ThxZnq__obj-h{margin:0 0 var(--space-2);font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary)}.Canvas-module__ThxZnq__obj-list{gap:0;margin:0;display:grid}.Canvas-module__ThxZnq__obj-r{gap:var(--space-2);border-top:var(--border-width) solid var(--border);font-size:var(--text-xs);grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:4px 0;display:grid}.Canvas-module__ThxZnq__obj-r:first-child{border-top:0}.Canvas-module__ThxZnq__obj-r dt{color:var(--secondary)}.Canvas-module__ThxZnq__obj-r dd{align-items:center;gap:var(--space-2);font-family:var(--font-mono);white-space:nowrap;margin:0;display:inline-flex}.Canvas-module__ThxZnq__obj-t{color:var(--text)}.Canvas-module__ThxZnq__obj-m{color:var(--secondary)}.Canvas-module__ThxZnq__obj-m:before{content:"→ ";color:var(--muted)}.Canvas-module__ThxZnq__obj-r svg{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.Canvas-module__ThxZnq__obj-r[data-ok=true] svg{stroke:var(--success)}.Canvas-module__ThxZnq__obj-r[data-ok=false] svg{stroke:var(--error)}.Canvas-module__ThxZnq__obj-r[data-ok=false] .Canvas-module__ThxZnq__obj-m{color:var(--error)}.Canvas-module__ThxZnq__n-lock circle{fill:var(--surface-3);stroke:var(--control-border);stroke-width:.75px}.Canvas-module__ThxZnq__n-lock rect,.Canvas-module__ThxZnq__n-lock path{fill:none;stroke:var(--secondary);stroke-width:1.25px;stroke-linecap:round}.Canvas-module__ThxZnq__ch-confirm{z-index:20;width:min(440px,100% - 32px);padding:var(--space-6);background:var(--surface-1);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-panel);box-shadow:0 0 0 100vmax var(--scrim), var(--shadow-overlay);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.Canvas-module__ThxZnq__ch-confirm h2{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:500}.Canvas-module__ThxZnq__ch-confirm p{margin:0 0 var(--space-6);color:var(--secondary)}.Canvas-module__ThxZnq__ch-confirm-f{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.Canvas-module__ThxZnq__ch-confirm-f .Canvas-module__ThxZnq__btn{min-height:40px;padding:0 var(--space-4)}@media (max-width:1180px){.Canvas-module__ThxZnq__lib{width:200px;padding:var(--space-2)}.Canvas-module__ThxZnq__lib-s{display:none}.Canvas-module__ThxZnq__lib-f{margin-top:var(--space-2)}.Canvas-module__ThxZnq__lib-tile{padding:var(--space-2) var(--space-1);grid-template-columns:32px minmax(0,1fr)}}@media (max-width:900px){.Canvas-module__ThxZnq__chbar{grid-template-columns:minmax(0,1fr) auto}.Canvas-module__ThxZnq__ch-center{flex:none}.Canvas-module__ThxZnq__ch-back{padding:0 var(--space-2)}.Canvas-module__ThxZnq__objective{width:auto;right:var(--space-4)}}@media (prefers-reduced-motion:reduce){.Canvas-module__ThxZnq__ch-status[data-st=running] i{animation:none}}.Canvas-module__ThxZnq__ch-status[data-st=partial]{color:var(--warning);border-color:color-mix(in srgb, var(--warning) 50%, var(--border))}.Canvas-module__ThxZnq__ch-status[data-st=partial] i{background:var(--warning);border-radius:1px}.Canvas-module__ThxZnq__btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.Canvas-module__ThxZnq__lab-id{align-items:center;gap:var(--space-2);flex:0 auto;min-width:0;display:flex}.Canvas-module__ThxZnq__lab-meta{align-items:center;gap:var(--space-2);display:flex}.Canvas-module__ThxZnq__lab-saved{color:var(--muted);font-size:var(--text-xs);white-space:nowrap}.Canvas-module__ThxZnq__lab-saved[data-dirty=true]{color:var(--warning)}.Canvas-module__ThxZnq__crumb-input{width:22ch;min-width:8ch;max-width:100%;height:28px;padding:0 var(--space-2);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);color:var(--text);font:500 var(--text-sm)/1 var(--font-ui);background:0 0;margin:0}.Canvas-module__ThxZnq__crumb-input:hover{border-color:var(--border)}.Canvas-module__ThxZnq__crumb-input:focus{border-color:var(--accent);background:var(--surface-2);outline:none}.Canvas-module__ThxZnq__lab-empty{z-index:2;width:min(360px,100% - 32px);padding:var(--space-6);text-align:center;background:color-mix(in srgb, var(--surface-1) 92%, transparent);border:var(--border-width) dashed var(--control-border);border-radius:var(--radius-panel);pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.Canvas-module__ThxZnq__le-t{font-size:var(--text-md);margin:0;font-weight:600}.Canvas-module__ThxZnq__le-s{margin:var(--space-1) 0 0;color:var(--secondary);font-size:var(--text-sm)}.Canvas-module__ThxZnq__le-s b{color:var(--text);font-weight:500}.Canvas-module__ThxZnq__obj-top{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.Canvas-module__ThxZnq__obj-top .Canvas-module__ThxZnq__obj-h{margin:0}.Canvas-module__ThxZnq__obj-rem{color:var(--secondary);font-size:var(--text-xs);white-space:nowrap}.Canvas-module__ThxZnq__obj-rem[data-ok=true]{color:var(--success)}.Canvas-module__ThxZnq__obj-rem[data-ok=false]{color:var(--warning)}.Canvas-module__ThxZnq__obj-rules{margin:var(--space-2) 0 0;padding-top:var(--space-2);border-top:var(--border-width) dashed var(--border);color:var(--muted);font-size:var(--text-xs)}@media (max-width:900px){.Canvas-module__ThxZnq__lab-meta{display:none}.Canvas-module__ThxZnq__crumb-input{width:14ch}}.Canvas-module__ThxZnq__mk{box-sizing:border-box;opacity:.4;width:9px;height:9px;position:absolute;top:50%;transform:translate(-50%,-50%)}.Canvas-module__ThxZnq__challenge{--rv-bottom:52px}.Canvas-module__ThxZnq__work-area{flex:1 1 0;min-width:0;min-height:0;display:flex}.Canvas-module__ThxZnq__ws-objectives{border-top:1px solid var(--border);padding:var(--space-3) var(--space-1);margin-top:auto}.Canvas-module__ThxZnq__ws-objectives>summary{color:var(--text);font-weight:600}.Canvas-module__ThxZnq__ws-objectives+.Canvas-module__ThxZnq__ws-objectives{margin-top:0}.Canvas-module__ThxZnq__lib:has(.Canvas-module__ThxZnq__obj-facts) .Canvas-module__ThxZnq__lib-list{min-height:136px}.Canvas-module__ThxZnq__obj-facts{padding-top:var(--space-2)}.Canvas-module__ThxZnq__obj-facts .Canvas-module__ThxZnq__obj-r{grid-template-columns:minmax(0,1fr);gap:0}.Canvas-module__ThxZnq__obj-facts .Canvas-module__ThxZnq__obj-r dd{white-space:normal;color:var(--text)}.Canvas-module__ThxZnq__obj-r{padding:var(--space-2) 0;grid-template-columns:minmax(0,1fr);gap:0}.Canvas-module__ThxZnq__obj-r dd{justify-content:space-between}.Canvas-module__ThxZnq__lib-tile .Canvas-module__ThxZnq__plate-img{width:32px;height:32px}.Canvas-module__ThxZnq__lib-tile .Canvas-module__ThxZnq__plate-img img{width:24px;height:auto}body .Canvas-module__ThxZnq__topbar .Canvas-module__ThxZnq__lab-id input.Canvas-module__ThxZnq__crumb-input{border-color:var(--border)}@media (hover:hover){body .Canvas-module__ThxZnq__topbar .Canvas-module__ThxZnq__lab-id input.Canvas-module__ThxZnq__crumb-input:hover{border-color:var(--control-border)}}.Canvas-module__ThxZnq__lab-open{gap:2px;max-height:40dvh;display:grid;overflow-y:auto}.Canvas-module__ThxZnq__lab-open-i{justify-content:space-between;gap:var(--space-4);width:100%}.Canvas-module__ThxZnq__lab-open-i>.Canvas-module__ThxZnq__od-truncate{text-align:left;flex:1 1 0;min-width:0}.Canvas-module__ThxZnq__lab-open-i>.Canvas-module__ThxZnq__dim{font-size:var(--text-xs);flex:none;font-weight:400}.Canvas-module__ThxZnq__stage>.Canvas-module__ThxZnq__hint{display:none}.Canvas-module__ThxZnq__ch-crumbs{min-width:0}@media (max-width:1023px){.Canvas-module__ThxZnq__cv-legend{display:none}.Canvas-module__ThxZnq__topbar{flex-wrap:wrap}.Canvas-module__ThxZnq__lab-id{flex:160px}.Canvas-module__ThxZnq__tools{flex:100%;order:2}.Canvas-module__ThxZnq__ch-actions{margin-left:auto}.Canvas-module__ThxZnq__ch-left{flex-basis:50%}}@media (max-width:767px){.Canvas-module__ThxZnq__ws{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.Canvas-module__ThxZnq__ws>.Canvas-module__ThxZnq__lib{border-right:0;border-bottom:1px solid var(--border);grid-column:1;width:auto;max-height:152px}.Canvas-module__ThxZnq__lib-list{flex:none;display:flex;overflow:auto hidden}.Canvas-module__ThxZnq__lib-list>li{flex:0 0 152px}.Canvas-module__ThxZnq__lib-h,.Canvas-module__ThxZnq__lib-s,.Canvas-module__ThxZnq__lib-g,.Canvas-module__ThxZnq__lib-f{display:none}.Canvas-module__ThxZnq__ws-objectives{padding:var(--space-1);margin-top:0}.Canvas-module__ThxZnq__ws-objectives .Canvas-module__ThxZnq__objective{max-height:80px;overflow-y:auto}.Canvas-module__ThxZnq__ws-main{grid-column:1}.Canvas-module__ThxZnq__work-area{flex-direction:column}.Canvas-module__ThxZnq__work-area>.Canvas-module__ThxZnq__inspector.Canvas-module__ThxZnq__open{border-left:0;border-top:1px solid var(--border);width:100%;height:48%}.Canvas-module__ThxZnq__stage{min-height:160px}.Canvas-module__ThxZnq__ch-left{flex-basis:100%}.Canvas-module__ThxZnq__ch-actions{gap:var(--space-1);flex-wrap:wrap}.Canvas-module__ThxZnq__ch-center{margin-right:auto}.Canvas-module__ThxZnq__chbar{row-gap:var(--space-1)}.Canvas-module__ThxZnq__dock{left:var(--space-2);bottom:var(--space-2);gap:0;max-width:calc(100% - 16px)}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__btn{padding-inline:var(--space-2);font-size:var(--text-xs)}.Canvas-module__ThxZnq__dock .Canvas-module__ThxZnq__zoom{min-width:40px}}.Canvas-module__ThxZnq__app{--panel-w:360px;--topbar-h:48px;height:calc(100dvh - var(--sh-nav-h));font:var(--text-sm)/1.5 var(--font-ui);grid-template-rows:auto minmax(0,1fr);overflow:hidden}.Canvas-module__ThxZnq__app kbd{font:var(--text-xs)/1 var(--font-mono);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);white-space:nowrap;border-bottom-width:2px;padding:3px 6px}.Canvas-module__ThxZnq__app input:focus-visible,.Canvas-module__ThxZnq__app select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Canvas-module__ThxZnq__help-h{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.Canvas-module__ThxZnq__lab-open-n{white-space:nowrap;text-overflow:ellipsis;text-align:left;flex:1 1 0;min-width:0;overflow:hidden}.Canvas-module__ThxZnq__ins-acts{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (max-width:900px){.Canvas-module__ThxZnq__app{--topbar-h:52px}}.Canvas-module__ThxZnq__sh-context{align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.Canvas-module__ThxZnq__sh-context strong{font-size:var(--text-sm);overflow-wrap:anywhere;font-weight:600}.Canvas-module__ThxZnq__sh-context .Canvas-module__ThxZnq__mono{color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__topbar .Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__primary[aria-disabled=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);opacity:.5}.Canvas-module__ThxZnq__toast{text-align:center;width:max-content;max-width:calc(100% - 32px)}.Canvas-module__ThxZnq__bpanel{background:var(--surface-1);border-top:var(--border-width) solid var(--border);min-width:0}.Canvas-module__ThxZnq__bp-bar{align-items:center;gap:var(--space-3);min-height:40px;padding:0 var(--space-2) 0 var(--space-3);display:flex}.Canvas-module__ThxZnq__bp-tabs{gap:var(--space-1);display:flex}.Canvas-module__ThxZnq__bp-tabs button{min-height:32px;padding:0 var(--space-3);border-radius:var(--radius-control);color:var(--secondary);cursor:pointer;font-size:var(--text-sm);background:0 0;border:0}@media (hover:hover){.Canvas-module__ThxZnq__bp-tabs button:hover{background:var(--surface-2);color:var(--text)}}.Canvas-module__ThxZnq__bp-tabs button[aria-selected=true]{background:var(--surface-3);color:var(--text);font-weight:500}.Canvas-module__ThxZnq__bp-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.Canvas-module__ThxZnq__bp-sum{color:var(--muted);font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-left:auto;overflow:hidden}.Canvas-module__ThxZnq__bp-toggle svg{transition:transform var(--duration-feedback) var(--ease-enter)}.Canvas-module__ThxZnq__bpanel.Canvas-module__ThxZnq__open .Canvas-module__ThxZnq__bp-toggle svg{transform:rotate(180deg)}.Canvas-module__ThxZnq__bp-body{overscroll-behavior:contain;height:240px;padding:var(--space-3) var(--space-4) var(--space-4);border-top:var(--border-width) solid var(--border);overflow-y:auto}.Canvas-module__ThxZnq__bp-empty{height:100%;color:var(--muted);font-size:var(--text-sm);text-align:center;place-items:center;display:grid}.Canvas-module__ThxZnq__bp-empty p{max-width:44ch;margin:0}.Canvas-module__ThxZnq__bp-tiles{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(168px,1fr));display:grid}.Canvas-module__ThxZnq__bp-tile{gap:var(--space-1);padding:var(--space-2) var(--space-3);border:0;border-bottom:1px solid var(--border);min-width:0;display:grid}.Canvas-module__ThxZnq__bt-l{color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__bt-v{font-size:var(--text-lg);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.Canvas-module__ThxZnq__bt-s{color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__bp-tile[data-ok=true] .Canvas-module__ThxZnq__bt-v{color:var(--success)}.Canvas-module__ThxZnq__bp-tile[data-ok=false] .Canvas-module__ThxZnq__bt-v{color:var(--error)}.Canvas-module__ThxZnq__bp-tile[data-ok=false]{border-color:color-mix(in srgb, var(--error) 40%, var(--border))}.Canvas-module__ThxZnq__bp-logs{font-size:var(--text-xs);gap:2px;margin:0;padding:0;list-style:none;display:grid}.Canvas-module__ThxZnq__bp-logs li{gap:var(--space-3);padding:3px var(--space-2);border-radius:var(--radius-sm);grid-template-columns:56px 104px minmax(0,1fr);display:grid}.Canvas-module__ThxZnq__bp-logs li:nth-child(odd){background:color-mix(in srgb, var(--surface-2) 60%, transparent)}.Canvas-module__ThxZnq__bp-logs time{color:var(--muted)}.Canvas-module__ThxZnq__bp-logs b{color:var(--secondary);font-weight:400}.Canvas-module__ThxZnq__bp-logs span{color:var(--text);overflow-wrap:anywhere}.Canvas-module__ThxZnq__bp-logs .Canvas-module__ThxZnq__lv-warn span{color:var(--warning)}.Canvas-module__ThxZnq__bp-logs .Canvas-module__ThxZnq__lv-error span{color:var(--error)}.Canvas-module__ThxZnq__bp-events{padding:0 0 0 var(--space-3);gap:var(--space-2);border-left:var(--border-width) solid var(--border);margin:0;list-style:none;display:grid}.Canvas-module__ThxZnq__bp-events li{gap:var(--space-3);font-size:var(--text-sm);grid-template-columns:64px minmax(0,1fr);display:grid;position:relative}.Canvas-module__ThxZnq__bp-events li:before{content:"";left:calc(-1 * var(--space-3) - 4px);background:var(--muted);border-radius:50%;width:7px;height:7px;position:absolute;top:7px}.Canvas-module__ThxZnq__bp-events .Canvas-module__ThxZnq__ev-bad:before{background:var(--error);border-radius:1px}.Canvas-module__ThxZnq__bp-events .Canvas-module__ThxZnq__ev-ok:before{background:var(--success)}.Canvas-module__ThxZnq__bp-events .Canvas-module__ThxZnq__ev-bad span{color:var(--error)}.Canvas-module__ThxZnq__bp-events time{color:var(--muted);font-size:var(--text-xs);padding-top:2px}.Canvas-module__ThxZnq__bp-sim{gap:var(--space-8);grid-template-columns:minmax(0,320px) minmax(0,1fr);display:grid}.Canvas-module__ThxZnq__bp-form{gap:var(--space-3);align-content:start;display:grid}.Canvas-module__ThxZnq__bp-h{margin:0 0 var(--space-1);font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary)}.Canvas-module__ThxZnq__bp-verdict{gap:var(--space-2);align-content:start;display:grid}.Canvas-module__ThxZnq__vd{align-items:center;gap:var(--space-2);font-size:var(--text-md);margin:0;font-weight:600;display:inline-flex}.Canvas-module__ThxZnq__vd svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.Canvas-module__ThxZnq__vd.Canvas-module__ThxZnq__pass{color:var(--success)}.Canvas-module__ThxZnq__vd.Canvas-module__ThxZnq__fail{color:var(--error)}.Canvas-module__ThxZnq__vd-s{margin:0 0 var(--space-3);color:var(--secondary);font-size:var(--text-sm)}.Canvas-module__ThxZnq__bp-att{font-size:var(--text-sm);gap:2px;margin:0;padding:0;list-style:none;display:grid}.Canvas-module__ThxZnq__bp-att li{justify-content:space-between;gap:var(--space-3);padding:var(--space-1) 0;border-bottom:var(--border-width) solid var(--border);display:flex}.Canvas-module__ThxZnq__bp-att .Canvas-module__ThxZnq__mono{color:var(--secondary);font-size:var(--text-xs)}@media (max-width:900px){.Canvas-module__ThxZnq__bp-sim{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.Canvas-module__ThxZnq__bp-sum{display:none}}.Canvas-module__ThxZnq__vd.Canvas-module__ThxZnq__partial{color:var(--warning)}.Canvas-module__ThxZnq__result{min-height:0;width:var(--panel-w);background:var(--surface-1);border-left:1px solid var(--border);--vc:var(--error);flex-direction:column;flex:none;display:flex;position:relative}.Canvas-module__ThxZnq__result.Canvas-module__ThxZnq__open{opacity:1;transform:none}.Canvas-module__ThxZnq__result:focus{outline:none}.Canvas-module__ThxZnq__result:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.Canvas-module__ThxZnq__result[data-v=pass]{--vc:var(--success)}.Canvas-module__ThxZnq__result[data-v=partial]{--vc:var(--warning)}.Canvas-module__ThxZnq__res-head{padding:var(--space-4);border-bottom:1px solid var(--border)}.Canvas-module__ThxZnq__res-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.Canvas-module__ThxZnq__res-eyebrow{font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary)}.Canvas-module__ThxZnq__result h2{margin:var(--space-1) 0 0;font-size:var(--text-md);font-weight:600;line-height:var(--leading-heading)}.Canvas-module__ThxZnq__res-ctx{margin:2px 0 var(--space-3);color:var(--secondary);font-size:var(--text-xs)}.Canvas-module__ThxZnq__res-verdict{margin:var(--space-2) 0 0;align-items:center;gap:var(--space-2);color:var(--vc);font:600 var(--text-lg)/1.4 var(--font-ui);display:flex}.Canvas-module__ThxZnq__res-verdict svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.Canvas-module__ThxZnq__res-met{margin:var(--space-1) 0 0;color:var(--secondary);font-size:var(--text-sm)}.Canvas-module__ThxZnq__res-body{overscroll-behavior:contain;min-height:0;padding:var(--space-3) var(--space-4) var(--space-4);gap:var(--space-4);flex:auto;align-content:start;display:grid;overflow-y:auto}.Canvas-module__ThxZnq__res-body section{gap:var(--space-2);display:grid}.Canvas-module__ThxZnq__res-h{font:600 var(--text-xs)/1.4 var(--font-ui);color:var(--secondary);margin:0}.Canvas-module__ThxZnq__res-hrow{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.Canvas-module__ThxZnq__res-n{color:var(--muted);font-size:var(--text-xs);white-space:nowrap}.Canvas-module__ThxZnq__res-stale{padding:var(--space-2) var(--space-3);border:var(--border-width) dashed var(--control-border);border-radius:var(--radius-control);color:var(--secondary);font-size:var(--text-sm);margin:0}.Canvas-module__ThxZnq__res-figs{margin:0;display:grid}.Canvas-module__ThxZnq__rf{align-items:center;gap:var(--space-2);border-top:var(--border-width) solid var(--border);font-size:var(--text-sm);grid-template-columns:minmax(0,1fr) auto;padding:6px 0;display:grid}.Canvas-module__ThxZnq__rf:first-child{border-top:0}.Canvas-module__ThxZnq__rf dt{color:var(--secondary)}.Canvas-module__ThxZnq__rf dd{align-items:center;gap:var(--space-2);white-space:nowrap;margin:0;display:flex}.Canvas-module__ThxZnq__rf-v{font:600 var(--text-sm)/1.2 var(--font-mono);font-variant-numeric:tabular-nums}.Canvas-module__ThxZnq__rf-t{color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__rf svg{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.Canvas-module__ThxZnq__rf[data-ok=true] svg{stroke:var(--success)}.Canvas-module__ThxZnq__rf[data-ok=false] svg{stroke:var(--error)}.Canvas-module__ThxZnq__rf[data-ok=false] .Canvas-module__ThxZnq__rf-v{color:var(--error)}.Canvas-module__ThxZnq__res-obs{padding:0 0 0 var(--space-4);gap:var(--space-2);font-size:var(--text-sm);margin:0;line-height:1.5;display:grid}.Canvas-module__ThxZnq__res-obs li::marker{color:var(--muted)}.Canvas-module__ThxZnq__res-tl{gap:2px;margin:0;padding:0;list-style:none;display:grid}.Canvas-module__ThxZnq__res-tl li>div,.Canvas-module__ThxZnq__res-tl li>button{gap:var(--space-2);width:100%;padding:var(--space-1) var(--space-2);border:0;border-left:2px solid var(--border);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text);font:inherit;font-size:var(--text-xs);text-align:left;background:0 0;grid-template-columns:92px minmax(0,1fr);display:grid}.Canvas-module__ThxZnq__res-tl li>button{cursor:pointer}@media (hover:hover){.Canvas-module__ThxZnq__res-tl li>button:hover{background:var(--surface-2)}}.Canvas-module__ThxZnq__res-tl li>button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.Canvas-module__ThxZnq__res-tl time{color:var(--muted)}.Canvas-module__ThxZnq__res-tl span{overflow-wrap:anywhere}.Canvas-module__ThxZnq__res-tl .Canvas-module__ThxZnq__tl-warn>*{border-left-color:var(--warning)}.Canvas-module__ThxZnq__res-tl .Canvas-module__ThxZnq__tl-bad>*{border-left-color:var(--error)}.Canvas-module__ThxZnq__res-tl .Canvas-module__ThxZnq__tl-bad span{color:var(--error)}.Canvas-module__ThxZnq__res-tl .Canvas-module__ThxZnq__tl-ok>*{border-left-color:var(--success)}.Canvas-module__ThxZnq__res-tl li[aria-current=step]>*{background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--control-border)}.Canvas-module__ThxZnq__res-step{justify-content:space-between;gap:var(--space-2);display:flex}.Canvas-module__ThxZnq__res-step .Canvas-module__ThxZnq__btn svg{width:14px;height:14px}.Canvas-module__ThxZnq__res-hints{padding:var(--space-3);background:var(--canvas);border:var(--border-width) solid var(--border);border-radius:var(--radius-control)}.Canvas-module__ThxZnq__res-note{color:var(--muted);font-size:var(--text-xs);margin:0}.Canvas-module__ThxZnq__res-hl{gap:var(--space-2);font-size:var(--text-sm);margin:0;padding:0;list-style:none;display:grid}.Canvas-module__ThxZnq__res-hl li{gap:2px;display:grid}.Canvas-module__ThxZnq__res-hl li:focus{outline:none}.Canvas-module__ThxZnq__res-hl .Canvas-module__ThxZnq__mono{color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__res-foot{padding:var(--space-3) var(--space-4);border-top:var(--border-width) solid var(--border);gap:var(--space-2);display:grid}.Canvas-module__ThxZnq__res-acts{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.Canvas-module__ThxZnq__res-foot .Canvas-module__ThxZnq__btn{min-height:36px;font-size:var(--text-sm)}.Canvas-module__ThxZnq__res-foot .Canvas-module__ThxZnq__btn[aria-pressed=true]{background:var(--surface-3);border-color:var(--accent)}.Canvas-module__ThxZnq__res-chip{top:var(--space-4);right:var(--space-4);z-index:4;align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);background:var(--surface-2);border:var(--border-width) solid var(--vc,var(--control-border));box-shadow:var(--shadow-control);color:var(--text);font:inherit;font-size:var(--text-sm);cursor:pointer;--vc:var(--error);border-radius:999px;display:inline-flex;position:absolute}.Canvas-module__ThxZnq__res-chip[data-v=pass]{--vc:var(--success)}.Canvas-module__ThxZnq__res-chip[data-v=partial]{--vc:var(--warning)}.Canvas-module__ThxZnq__res-chip[data-v=stale]{--vc:var(--control-border)}.Canvas-module__ThxZnq__res-chip svg{fill:none;width:16px;height:16px;stroke:var(--vc);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.Canvas-module__ThxZnq__res-chip .Canvas-module__ThxZnq__rc-open{color:var(--accent)}@media (hover:hover){.Canvas-module__ThxZnq__res-chip:hover{background:var(--surface-3)}}.Canvas-module__ThxZnq__res-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__ev-warn .Canvas-module__ThxZnq__outline{stroke:var(--warning)}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__ev-crit .Canvas-module__ThxZnq__outline{stroke:var(--error);stroke-width:2px}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__ev-focus .Canvas-module__ThxZnq__outline{stroke:var(--text);stroke-width:2.5px}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__ev-warn .Canvas-module__ThxZnq__line{stroke:var(--warning);opacity:.85}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__ev-bad .Canvas-module__ThxZnq__line{stroke:var(--error);opacity:.9}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__ev-focus .Canvas-module__ThxZnq__line{opacity:1;stroke-width:4px!important}.Canvas-module__ThxZnq__ev-mark rect{fill:var(--surface-2);stroke:var(--tc);stroke-width:1px}.Canvas-module__ThxZnq__ev-mark text{fill:var(--tc);font:11px var(--font-mono)}.Canvas-module__ThxZnq__ev-mark.Canvas-module__ThxZnq__t-warn{--tc:var(--warning)}.Canvas-module__ThxZnq__ev-mark.Canvas-module__ThxZnq__t-crit{--tc:var(--error)}.Canvas-module__ThxZnq__ev-mark.Canvas-module__ThxZnq__t-ok{--tc:var(--success)}.Canvas-module__ThxZnq__ev-mark.Canvas-module__ThxZnq__on rect{fill:var(--surface-3);stroke-width:2px}@media (max-width:900px){.Canvas-module__ThxZnq__result{width:min(320px,45vw)}.Canvas-module__ThxZnq__res-chip{top:auto;bottom:var(--space-16)}}@media (prefers-reduced-motion:reduce){.Canvas-module__ThxZnq__result{transition:none;transform:none}}.Canvas-module__ThxZnq__res-done{gap:var(--space-2);background:0 0;border:0;justify-items:start;padding:0;display:grid}.Canvas-module__ThxZnq__res-done p{font-size:var(--text-sm);color:var(--secondary);margin:0}.Canvas-module__ThxZnq__res-done b{color:var(--success);font-weight:600}.Canvas-module__ThxZnq__res-done .Canvas-module__ThxZnq__btn,.Canvas-module__ThxZnq__res-main .Canvas-module__ThxZnq__btn{color:var(--text);text-decoration:none}.Canvas-module__ThxZnq__res-main{gap:var(--space-2);grid-template-columns:auto minmax(0,1fr);display:grid}.Canvas-module__ThxZnq__res-main .Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__primary{color:var(--on-accent)}.Canvas-module__ThxZnq__replaying .Canvas-module__ThxZnq__ev-layer,.Canvas-module__ThxZnq__replaying .Canvas-module__ThxZnq__objective,.Canvas-module__ThxZnq__replaying .Canvas-module__ThxZnq__hint{display:none}.Canvas-module__ThxZnq__replaying .Canvas-module__ThxZnq__lib,.Canvas-module__ThxZnq__replaying .Canvas-module__ThxZnq__ch-actions .Canvas-module__ThxZnq__btn[aria-disabled=true]{pointer-events:none;opacity:.45}.Canvas-module__ThxZnq__replaying .Canvas-module__ThxZnq__node{cursor:pointer}.Canvas-module__ThxZnq__rp-tag{height:28px;padding:0 var(--space-3);border:var(--border-width) solid color-mix(in srgb, var(--accent) 55%, var(--border));color:var(--accent);font-size:var(--text-xs);white-space:nowrap;border-radius:999px;align-items:center;display:inline-flex}.Canvas-module__ThxZnq__rp-pt{opacity:.9}.Canvas-module__ThxZnq__rp-pt.Canvas-module__ThxZnq__k-http{fill:var(--edge-http)}.Canvas-module__ThxZnq__rp-pt.Canvas-module__ThxZnq__k-db{fill:var(--edge-db)}.Canvas-module__ThxZnq__rp-pt.Canvas-module__ThxZnq__k-cache{fill:var(--edge-cache)}.Canvas-module__ThxZnq__rp-pt.Canvas-module__ThxZnq__k-msg{fill:var(--edge-msg)}.Canvas-module__ThxZnq__rp-mark rect{fill:var(--surface-2);stroke:var(--control-border);stroke-width:1px}.Canvas-module__ThxZnq__rp-mark text{fill:var(--text);font:11px var(--font-mono)}.Canvas-module__ThxZnq__rp-mark.Canvas-module__ThxZnq__on rect,.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__rp-path .Canvas-module__ThxZnq__outline{stroke:var(--accent);stroke-width:2px}.Canvas-module__ThxZnq__edge.Canvas-module__ThxZnq__rp-path .Canvas-module__ThxZnq__line{opacity:1;stroke-width:3.5px!important}.Canvas-module__ThxZnq__rp-panel{width:var(--panel-w)}.Canvas-module__ThxZnq__rp-panel .Canvas-module__ThxZnq__res-head{border-top-color:var(--accent)}.Canvas-module__ThxZnq__rp-tabs{gap:var(--space-1);padding:var(--space-2) var(--space-4) 0;border-bottom:var(--border-width) solid var(--border);display:flex}.Canvas-module__ThxZnq__rp-tabs button{min-height:32px;padding:0 var(--space-3);border-radius:var(--radius-control) var(--radius-control) 0 0;color:var(--secondary);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0}.Canvas-module__ThxZnq__rp-tabs button[aria-selected=true]{background:var(--surface-3);color:var(--text);font-weight:500}.Canvas-module__ThxZnq__rp-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (hover:hover){.Canvas-module__ThxZnq__rp-tabs button:hover{color:var(--text);background:var(--surface-2)}}.Canvas-module__ThxZnq__rp-node{gap:2px;display:grid}.Canvas-module__ThxZnq__rp-k{color:var(--secondary);font:600 var(--text-xs)/1.4 var(--font-ui);margin:0}.Canvas-module__ThxZnq__rp-node h3{font-size:var(--text-lg);margin:0;font-weight:600}.Canvas-module__ThxZnq__rp-at{color:var(--accent);font-size:var(--text-sm);margin:0}.Canvas-module__ThxZnq__rp-panel .Canvas-module__ThxZnq__rf[data-tone=warn] .Canvas-module__ThxZnq__rf-v{color:var(--warning)}.Canvas-module__ThxZnq__rp-panel .Canvas-module__ThxZnq__rf[data-tone=bad] .Canvas-module__ThxZnq__rf-v{color:var(--error)}.Canvas-module__ThxZnq__rp-panel .Canvas-module__ThxZnq__rf dd{white-space:normal;text-align:right}.Canvas-module__ThxZnq__rp-empty{gap:var(--space-2);padding:var(--space-4) 0;text-align:left;display:grid}.Canvas-module__ThxZnq__rp-empty p{margin:0}.Canvas-module__ThxZnq__tx-note{color:var(--secondary);font-size:var(--text-xs);margin:0;line-height:1.5}.Canvas-module__ThxZnq__tx-lanes{--lw:104px;gap:2px;display:grid;position:relative}.Canvas-module__ThxZnq__tx-row{grid-template-columns:var(--lw) minmax(0, 1fr);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);width:100%;min-height:32px;color:var(--text);font:inherit;text-align:left;background:0 0;align-items:center;gap:0;padding:0;display:grid}button.Canvas-module__ThxZnq__tx-row{cursor:pointer}@media (hover:hover){button.Canvas-module__ThxZnq__tx-row:hover{background:var(--surface-2)}}button.Canvas-module__ThxZnq__tx-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.Canvas-module__ThxZnq__tx-row.Canvas-module__ThxZnq__sel{background:var(--surface-2);border-color:var(--accent)}.Canvas-module__ThxZnq__tx-l{padding:2px var(--space-2);gap:0;min-width:0;display:grid}.Canvas-module__ThxZnq__tx-l b,.Canvas-module__ThxZnq__tx-l span{display:block}.Canvas-module__ThxZnq__tx-l b{font:600 var(--text-xs)/1.3 var(--font-mono)}.Canvas-module__ThxZnq__tx-l span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;overflow:hidden}.Canvas-module__ThxZnq__tx-track{height:20px;margin-right:var(--space-2);border-bottom:var(--border-width) dashed var(--border);display:block;position:relative}.Canvas-module__ThxZnq__tx-stale{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--error) 30%, transparent) 0 3px, transparent 3px 6px);border:var(--border-width) solid color-mix(in srgb, var(--error) 55%, transparent);border-radius:2px;min-width:2px;position:absolute;top:3px;bottom:3px}.Canvas-module__ThxZnq__tx-stock .Canvas-module__ThxZnq__tx-track{border-bottom:0}.Canvas-module__ThxZnq__qv{border-left:2px solid var(--traffic);background:color-mix(in srgb, var(--traffic) 10%, transparent);color:var(--traffic);font:600 11px/1 var(--font-mono);white-space:nowrap;opacity:.45;align-items:center;padding-left:3px;display:flex;position:absolute;top:1px;bottom:1px;overflow:hidden}.Canvas-module__ThxZnq__qv.Canvas-module__ThxZnq__done{opacity:1}.Canvas-module__ThxZnq__qv.Canvas-module__ThxZnq__neg{border-left-color:var(--error);background:color-mix(in srgb, var(--error) 12%, transparent);color:var(--error)}.Canvas-module__ThxZnq__tx-cursor{top:0;bottom:0;left:calc(var(--lw) + (100% - var(--lw) - var(--space-2)) * var(--p));border-left:2px solid var(--text);pointer-events:none;width:0;position:absolute}.Canvas-module__ThxZnq__mk,.Canvas-module__ThxZnq__tk{box-sizing:border-box;width:9px;height:9px;position:absolute;top:50%;transform:translate(-50%,-50%)}.Canvas-module__ThxZnq__mk{opacity:.4}.Canvas-module__ThxZnq__mk.Canvas-module__ThxZnq__done{opacity:1}.Canvas-module__ThxZnq__mk.Canvas-module__ThxZnq__tone-bad.Canvas-module__ThxZnq__k-write,.Canvas-module__ThxZnq__mk.Canvas-module__ThxZnq__tone-bad.Canvas-module__ThxZnq__k-commit{box-shadow:0 0 0 2px color-mix(in srgb, var(--error) 70%, transparent)}.Canvas-module__ThxZnq__tx-detail{gap:var(--space-2);display:grid}.Canvas-module__ThxZnq__tx-ops{gap:2px;margin:0;padding:0;list-style:none;display:grid}.Canvas-module__ThxZnq__tx-ops li{gap:var(--space-2);padding:var(--space-1) var(--space-2);border-left:2px solid var(--border);font-size:var(--text-xs);opacity:.5;grid-template-columns:92px minmax(0,1fr);display:grid}.Canvas-module__ThxZnq__tx-ops li.Canvas-module__ThxZnq__done{opacity:1}.Canvas-module__ThxZnq__tx-ops time{color:var(--muted)}.Canvas-module__ThxZnq__tx-ops .Canvas-module__ThxZnq__tl-bad{border-left-color:var(--error)}.Canvas-module__ThxZnq__tx-ops .Canvas-module__ThxZnq__tl-bad span{color:var(--error)}.Canvas-module__ThxZnq__tx-ops .Canvas-module__ThxZnq__tl-ok{border-left-color:var(--success)}.Canvas-module__ThxZnq__tx-ops .Canvas-module__ThxZnq__tl-warn{border-left-color:var(--warning)}.Canvas-module__ThxZnq__rdock{gap:var(--space-2);padding:var(--space-2) var(--space-4) var(--space-3);background:var(--surface-1);border-top:var(--border-width) solid var(--border);min-width:0;display:grid}.Canvas-module__ThxZnq__rd-metrics{gap:var(--space-2);grid-template-columns:repeat(9,minmax(0,1fr));margin:0;display:grid}.Canvas-module__ThxZnq__rd-m{gap:var(--space-1);padding:var(--space-2);min-width:0;display:grid}.Canvas-module__ThxZnq__rd-m dt{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.Canvas-module__ThxZnq__rd-m dd{font-size:var(--text-sm);white-space:nowrap;font-variant-numeric:tabular-nums;margin:0;font-weight:600}.Canvas-module__ThxZnq__rd-m .Canvas-module__ThxZnq__rd-sub{color:var(--muted);font:400 11px var(--font-ui);text-overflow:ellipsis;overflow:hidden}.Canvas-module__ThxZnq__rd-m.Canvas-module__ThxZnq__t-warn dd.Canvas-module__ThxZnq__mono{color:var(--warning)}.Canvas-module__ThxZnq__rd-m.Canvas-module__ThxZnq__t-bad dd.Canvas-module__ThxZnq__mono{color:var(--error)}.Canvas-module__ThxZnq__rd-bar{align-items:center;gap:var(--space-3);min-width:0;display:flex}.Canvas-module__ThxZnq__rd-ctrl{gap:var(--space-1);flex:none;display:flex}.Canvas-module__ThxZnq__rd-play{width:40px}.Canvas-module__ThxZnq__rd-clock{font-size:var(--text-xs);flex:none;gap:0;display:grid}.Canvas-module__ThxZnq__rd-clock b{font-size:var(--text-sm)}.Canvas-module__ThxZnq__rd-clock span{color:var(--muted)}.Canvas-module__ThxZnq__rd-event{min-width:0;color:var(--secondary);font-size:var(--text-xs);overflow-wrap:anywhere;flex:auto;margin:0}.Canvas-module__ThxZnq__rd-seg{background:var(--canvas);border:var(--border-width) solid var(--border);border-radius:var(--radius-control);flex:none;gap:2px;padding:2px;display:flex}.Canvas-module__ThxZnq__rd-seg button{min-height:28px;padding:0 var(--space-2);color:var(--secondary);font:inherit;font-size:var(--text-xs);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px}.Canvas-module__ThxZnq__rd-seg button[aria-checked=true]{background:var(--surface-3);color:var(--text);font-weight:600}.Canvas-module__ThxZnq__rd-seg button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (hover:hover){.Canvas-module__ThxZnq__rd-seg button:hover{color:var(--text)}}.Canvas-module__ThxZnq__rd-scrub{align-items:center;gap:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.Canvas-module__ThxZnq__rd-t{color:var(--muted);font-size:var(--text-xs);white-space:nowrap}.Canvas-module__ThxZnq__rd-track{height:32px;position:relative}.Canvas-module__ThxZnq__rd-ticks{pointer-events:none;border-bottom:var(--border-width) solid var(--border);position:absolute;inset:0 8px}.Canvas-module__ThxZnq__rd-ticks .Canvas-module__ThxZnq__tk{opacity:.85;top:9px}.Canvas-module__ThxZnq__rd-ticks .Canvas-module__ThxZnq__tk.Canvas-module__ThxZnq__sel{outline:2px solid var(--text);outline-offset:1px;opacity:1;top:9px}.Canvas-module__ThxZnq__rd-track input[type=range]{width:100%;height:16px;accent-color:var(--accent);cursor:pointer;background:0 0;margin:0;position:absolute;bottom:0;left:0;right:0}.Canvas-module__ThxZnq__rd-track input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Canvas-module__ThxZnq__rd-foot{align-items:center;gap:var(--space-4);min-width:0;display:flex}.Canvas-module__ThxZnq__rd-legend{gap:var(--space-1) var(--space-3);flex-wrap:wrap;flex:auto;min-width:0;margin:0;padding:0;list-style:none;display:flex}.Canvas-module__ThxZnq__rd-legend li{color:var(--secondary);white-space:nowrap;align-items:center;padding-left:14px;font-size:11px;display:inline-flex;position:relative}.Canvas-module__ThxZnq__rd-legend .Canvas-module__ThxZnq__tk{left:4px}.Canvas-module__ThxZnq__rd-rate{color:var(--muted);flex:none;font-size:11px}@media (max-width:1180px){.Canvas-module__ThxZnq__rd-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (max-width:760px){.Canvas-module__ThxZnq__rd-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.Canvas-module__ThxZnq__rd-bar{flex-wrap:wrap}.Canvas-module__ThxZnq__rd-foot{display:none}}@media (prefers-reduced-motion:reduce){.Canvas-module__ThxZnq__rp-panel{transition:none}}.Canvas-module__ThxZnq__ws-main>.Canvas-module__ThxZnq__bpanel,.Canvas-module__ThxZnq__ws-main>.Canvas-module__ThxZnq__rdock{flex:none}.Canvas-module__ThxZnq__rd-details{order:4}.Canvas-module__ThxZnq__rd-details>summary{padding-block:var(--space-1)}.Canvas-module__ThxZnq__rd-metrics{padding-top:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.Canvas-module__ThxZnq__rd-metrics dt,.Canvas-module__ThxZnq__rd-metrics .Canvas-module__ThxZnq__rd-sub{white-space:normal;text-overflow:clip;overflow:visible}.Canvas-module__ThxZnq__res-metrics>summary{font-weight:600}.Canvas-module__ThxZnq__res-evidence{color:var(--text);line-height:1.6}.Canvas-module__ThxZnq__res-foot{gap:var(--space-2)}.Canvas-module__ThxZnq__res-acts{gap:var(--space-2);flex-wrap:wrap;display:flex}.Canvas-module__ThxZnq__res-chip{border-radius:var(--radius-control);box-shadow:none}@media (max-width:767px){.Canvas-module__ThxZnq__work-area>.Canvas-module__ThxZnq__result{border-left:0;border-top:1px solid var(--border);width:100%;height:48%}.Canvas-module__ThxZnq__bp-tabs{min-width:0;overflow-x:auto}.Canvas-module__ThxZnq__bp-tabs button{padding-inline:var(--space-2)}.Canvas-module__ThxZnq__rd-bar{flex-wrap:wrap}.Canvas-module__ThxZnq__rd-event{flex-basis:100%;order:3}.Canvas-module__ThxZnq__rdock{max-height:40dvh;overflow-y:auto}}.Canvas-module__ThxZnq__k-read{background:var(--accent);border-radius:50%}.Canvas-module__ThxZnq__k-write{background:var(--traffic)}.Canvas-module__ThxZnq__k-commit{background:var(--success);width:3px;height:13px}.Canvas-module__ThxZnq__k-wait{border:2px solid var(--warning);background:0 0;border-radius:50%}.Canvas-module__ThxZnq__k-abort{background:var(--error);clip-path:polygon(20% 0,50% 30%,80% 0,100% 20%,70% 50%,100% 80%,80% 100%,50% 70%,20% 100%,0 80%,30% 50%,0 20%)}.Canvas-module__ThxZnq__k-answer{background:var(--muted);height:3px}.Canvas-module__ThxZnq__k-claim{background:var(--edge-cache);transform:translate(-50%,-50%)rotate(45deg)}.Canvas-module__ThxZnq__k-publish{background:var(--edge-msg);width:5px}.Canvas-module__ThxZnq__k-neg{background:var(--error);clip-path:polygon(50% 0,100% 100%,0 100%)}.Canvas-module__ThxZnq__ev-layer{pointer-events:none}.Canvas-module__ThxZnq__result[hidden],.Canvas-module__ThxZnq__res-chip[hidden],.Canvas-module__ThxZnq__bpanel[hidden],.Canvas-module__ThxZnq__rdock[hidden]{display:none}.Canvas-module__ThxZnq__run-wait{border:1px solid var(--border);background:var(--surface-1);color:var(--text);white-space:nowrap;pointer-events:none;border-radius:6px;align-items:center;gap:10px;padding:10px 16px;font-size:12px;display:flex;position:absolute;top:22px;left:50%;transform:translate(-50%)}.Canvas-module__ThxZnq__run-spinner{border:2px solid var(--muted);border-top-color:var(--accent);border-radius:50%;width:13px;height:13px;animation:.9s linear infinite Canvas-module__ThxZnq__run-spin}.Canvas-module__ThxZnq__preparing .Canvas-module__ThxZnq__edge .Canvas-module__ThxZnq__line{stroke-dasharray:7 7;animation:.9s linear infinite Canvas-module__ThxZnq__run-flow}.Canvas-module__ThxZnq__preparing .Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__plate{animation:1.2s ease-in-out infinite alternate Canvas-module__ThxZnq__run-pulse}.Canvas-module__ThxZnq__instance-sheet{pointer-events:none}.Canvas-module__ThxZnq__instance-sheet :is(rect,path){fill:var(--surface-1);stroke:var(--acc,var(--accent));stroke-width:1px;opacity:.65;transform-box:fill-box;transform-origin:50%;animation:.3s cubic-bezier(.2,0,0,1) both Canvas-module__ThxZnq__instance-enter}.Canvas-module__ThxZnq__runtime-body .Canvas-module__ThxZnq__outline{animation:.4s cubic-bezier(.2,0,0,1) both Canvas-module__ThxZnq__instance-settle}.Canvas-module__ThxZnq__replaying .Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__n-metric{fill:var(--accent)}@keyframes Canvas-module__ThxZnq__run-spin{to{transform:rotate(360deg)}}@keyframes Canvas-module__ThxZnq__run-flow{to{stroke-dashoffset:-28px}}@keyframes Canvas-module__ThxZnq__run-pulse{to{opacity:.5}}@keyframes Canvas-module__ThxZnq__instance-enter{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:.65;transform:translateY(0)scale(1)}}@keyframes Canvas-module__ThxZnq__instance-settle{0%{stroke:var(--accent);opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.Canvas-module__ThxZnq__run-spinner,.Canvas-module__ThxZnq__preparing .Canvas-module__ThxZnq__edge .Canvas-module__ThxZnq__line,.Canvas-module__ThxZnq__preparing .Canvas-module__ThxZnq__node .Canvas-module__ThxZnq__plate,.Canvas-module__ThxZnq__instance-sheet :is(rect,path),.Canvas-module__ThxZnq__runtime-body .Canvas-module__ThxZnq__outline{animation:none}}.Canvas-module__ThxZnq__instance-leaving{pointer-events:none}.Canvas-module__ThxZnq__instance-leaving :is(rect,path){fill:none;stroke:var(--muted);stroke-width:1px;stroke-dasharray:4 3}.Canvas-module__ThxZnq__rd-bar{flex-wrap:wrap}.Canvas-module__ThxZnq__rd-event{white-space:nowrap;text-overflow:ellipsis;flex:220px;overflow:hidden}.Canvas-module__ThxZnq__run-wait{white-space:normal;width:max-content;max-width:calc(100% - 32px)}.Canvas-module__ThxZnq__chbar{row-gap:var(--space-1);flex-wrap:wrap}.Canvas-module__ThxZnq__ch-left{min-width:min(220px,100%)}.Canvas-module__ThxZnq__ch-center,.Canvas-module__ThxZnq__ch-status{min-width:0}.Canvas-module__ThxZnq__ch-status>span{text-overflow:ellipsis;overflow:hidden}@media (max-width:1023px){.Canvas-module__ThxZnq__rp-panel{width:min(320px,42vw)}}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__lv-warn .Canvas-module__ThxZnq__outline{stroke:var(--warning)}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__lv-crit .Canvas-module__ThxZnq__outline{stroke:var(--error);animation:.9s ease-in-out infinite alternate Canvas-module__ThxZnq__crit-pulse}@keyframes Canvas-module__ThxZnq__crit-pulse{0%{stroke-opacity:1}to{stroke-opacity:.3}}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__lv-down .Canvas-module__ThxZnq__body{opacity:.38}.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__lv-down .Canvas-module__ThxZnq__outline{stroke:var(--muted);stroke-dasharray:6 4}.Canvas-module__ThxZnq__stage.Canvas-module__ThxZnq__running .Canvas-module__ThxZnq__edge[data-load=warn] .Canvas-module__ThxZnq__line{opacity:.9;stroke-width:3px!important}.Canvas-module__ThxZnq__stage.Canvas-module__ThxZnq__running .Canvas-module__ThxZnq__edge[data-load=bad] .Canvas-module__ThxZnq__line{opacity:1;stroke-width:4.5px!important}.Canvas-module__ThxZnq__p-retry circle{fill:none;stroke:var(--edge-http);stroke-width:1.5px}.Canvas-module__ThxZnq__p.Canvas-module__ThxZnq__dead>*{fill:var(--muted);stroke:none;transform-box:fill-box;transform-origin:50%;animation:.5s ease-out forwards Canvas-module__ThxZnq__p-pop}.Canvas-module__ThxZnq__p.Canvas-module__ThxZnq__dead.Canvas-module__ThxZnq__rej>*{fill:none;stroke:var(--error);stroke-width:1.5px}@keyframes Canvas-module__ThxZnq__p-pop{to{opacity:0;transform:scale(2.6)}}@media (prefers-reduced-motion:reduce){.Canvas-module__ThxZnq__node.Canvas-module__ThxZnq__lv-crit .Canvas-module__ThxZnq__outline{animation:none}}.Canvas-module__ThxZnq__rp-mark[data-st=warn] rect{stroke:var(--warning)}.Canvas-module__ThxZnq__rp-mark[data-st=warn] text{fill:var(--warning)}.Canvas-module__ThxZnq__rp-mark[data-st=crit] rect{stroke:var(--error)}.Canvas-module__ThxZnq__rp-mark[data-st=crit] text{fill:var(--error)}.Canvas-module__ThxZnq__tour.Canvas-module__ThxZnq__tour{max-width:340px;padding:var(--space-4);background:var(--surface-1);color:var(--text);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-overlay);font-family:var(--font-ui)}.Canvas-module__ThxZnq__tour .driver-popover-title{font:600 var(--text-md)/1.3 var(--font-ui);color:var(--text)}.Canvas-module__ThxZnq__tour .driver-popover-description{margin-top:var(--space-2);color:var(--secondary);font:var(--text-sm)/1.5 var(--font-ui)}.Canvas-module__ThxZnq__tour .driver-popover-footer{margin-top:var(--space-4);align-items:center}.Canvas-module__ThxZnq__tour .driver-popover-progress-text{color:var(--muted);font:var(--text-xs) var(--font-mono)}.Canvas-module__ThxZnq__tour .driver-popover-footer-btn{min-height:var(--control-compact);padding:0 var(--space-3);background:var(--surface-2);color:var(--text);border:var(--border-width) solid var(--control-border);border-radius:var(--radius-control);font:500 var(--text-sm)/var(--control-compact) var(--font-ui);text-shadow:none}.Canvas-module__ThxZnq__tour .driver-popover-next-btn{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.Canvas-module__ThxZnq__tour .driver-popover-close-btn{color:var(--muted)}.Canvas-module__ThxZnq__tour .driver-popover-arrow-side-left{border-left-color:var(--surface-1)}.Canvas-module__ThxZnq__tour .driver-popover-arrow-side-right{border-right-color:var(--surface-1)}.Canvas-module__ThxZnq__tour .driver-popover-arrow-side-top{border-top-color:var(--surface-1)}.Canvas-module__ThxZnq__tour .driver-popover-arrow-side-bottom{border-bottom-color:var(--surface-1)}.Canvas-module__ThxZnq__ch.Canvas-module__ThxZnq__eff{font-style:italic}.Canvas-module__ThxZnq__cr.Canvas-module__ThxZnq__unsimulated .Canvas-module__ThxZnq__cval{opacity:.55}.Canvas-module__ThxZnq__res-acts{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.Canvas-module__ThxZnq__res-acts .Canvas-module__ThxZnq__btn{justify-content:center}.Canvas-module__ThxZnq__res-main .Canvas-module__ThxZnq__btn{min-width:0}.Canvas-module__ThxZnq__res-next{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.Canvas-module__ThxZnq__rp-pool{fill:none;stroke:var(--control-border);stroke-width:1px;stroke-dasharray:5 4;pointer-events:none}.Canvas-module__ThxZnq__rp-pool[data-st=warn]{stroke:var(--warning)}.Canvas-module__ThxZnq__rp-pool[data-st=crit]{stroke:var(--error)}.Canvas-module__ThxZnq__rf>dt{min-width:8ch}.Canvas-module__ThxZnq__rf-v{overflow-wrap:anywhere}.Canvas-module__ThxZnq__rf.Canvas-module__ThxZnq__wide{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}.Canvas-module__ThxZnq__rf.Canvas-module__ThxZnq__wide dd{white-space:normal;text-align:left;justify-content:flex-start}.Canvas-module__ThxZnq__rf.Canvas-module__ThxZnq__wide .Canvas-module__ThxZnq__rf-v{font-weight:500;font-size:var(--text-xs);line-height:1.5}.Canvas-module__ThxZnq__stage{container-type:inline-size}.Canvas-module__ThxZnq__cv-legend{justify-content:flex-end;row-gap:var(--space-1);flex-wrap:wrap;max-width:calc(100% - 352px)}@container (max-width:640px){.Canvas-module__ThxZnq__cv-legend{display:none}}.Canvas-module__ThxZnq__result{overflow-y:auto}.Canvas-module__ThxZnq__result>.Canvas-module__ThxZnq__res-body{min-height:96px}.Canvas-module__ThxZnq__bp-body{height:min(240px,32dvh)}.Canvas-module__ThxZnq__run-fault-tag{align-items:center;gap:var(--space-2);min-height:var(--control-compact);padding:0 var(--space-3);border:var(--border-width) solid color-mix(in srgb, var(--warning) 50%, var(--border));border-radius:var(--radius-control);background:color-mix(in srgb, var(--warning) 10%, var(--surface-1));color:var(--warning);font-size:var(--text-xs);white-space:nowrap;display:inline-flex}.Canvas-module__ThxZnq__run-fault-tag:before{content:"";clip-path:polygon(50% 0,100% 100%,0 100%);background:currentColor;flex:none;width:10px;height:9px}button.Canvas-module__ThxZnq__run-fault-tag{cursor:pointer;font-family:var(--font-mono)}button.Canvas-module__ThxZnq__run-fault-tag:hover{background:color-mix(in srgb, var(--warning) 18%, var(--surface-1))}.Canvas-module__ThxZnq__bp-faults{gap:var(--space-2);padding-top:var(--space-3);border-top:var(--border-width) solid var(--border);display:grid}.Canvas-module__ThxZnq__bp-faults .Canvas-module__ThxZnq__bp-h{margin:0}.Canvas-module__ThxZnq__bp-faults-s{color:var(--secondary);font-size:var(--text-xs);margin:0}.Canvas-module__ThxZnq__bp-fault-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.Canvas-module__ThxZnq__bp-fault-list .Canvas-module__ThxZnq__btn.Canvas-module__ThxZnq__sm{min-height:var(--control-compact);font-size:var(--text-xs)}.Canvas-module__ThxZnq__obj-cost{gap:var(--space-2);padding:var(--space-3) 0 0;margin-top:var(--space-3);border-top:var(--border-width) solid var(--border);display:grid}.Canvas-module__ThxZnq__obj-cost-h{justify-content:space-between;align-items:baseline;gap:var(--space-3);color:var(--secondary);font-size:var(--text-xs);display:flex}.Canvas-module__ThxZnq__obj-cost-h .Canvas-module__ThxZnq__mono{color:var(--text);white-space:nowrap}.Canvas-module__ThxZnq__obj-cost-bar{background:var(--surface-3);border-radius:3px;height:6px;position:relative;overflow:hidden}.Canvas-module__ThxZnq__obj-cost-bar i,.Canvas-module__ThxZnq__obj-cost-bar b{border-radius:3px;transition:width .16s;position:absolute;inset:0 auto 0 0}.Canvas-module__ThxZnq__obj-cost-bar i{z-index:1;background:var(--accent)}.Canvas-module__ThxZnq__obj-cost-bar b{background:color-mix(in srgb, var(--accent) 35%, var(--surface-3))}.Canvas-module__ThxZnq__obj-cost[data-over=true] .Canvas-module__ThxZnq__obj-cost-h .Canvas-module__ThxZnq__mono{color:var(--error)}.Canvas-module__ThxZnq__obj-cost[data-over=true] .Canvas-module__ThxZnq__obj-cost-bar i{background:var(--error)}@media (prefers-reduced-motion:reduce){.Canvas-module__ThxZnq__obj-cost-bar i,.Canvas-module__ThxZnq__obj-cost-bar b{transition:none}}.Canvas-module__ThxZnq__grp-d{margin:0 0 var(--space-2);color:var(--muted);font-size:var(--text-xs)}.Canvas-module__ThxZnq__cr[data-cost] .Canvas-module__ThxZnq__cval{font-family:var(--font-mono)}.Canvas-module__ThxZnq__rp-mark[data-st=down] rect{stroke:var(--muted);stroke-dasharray:4 3}.Canvas-module__ThxZnq__rp-mark[data-st=down] text{fill:var(--muted)}.Canvas-module__ThxZnq__rp-pool[data-st=down]{stroke:var(--muted)}.Canvas-module__ThxZnq__res-faults{color:var(--warning)}
.Inspector-module__DKNUbG__panel.Inspector-module__DKNUbG__panel{width:var(--inspector-w);container:inspector/inline-size}.Inspector-module__DKNUbG__resize{z-index:12;cursor:col-resize;touch-action:none;outline-offset:-3px;width:10px;position:absolute;top:0;bottom:0;left:-5px}.Inspector-module__DKNUbG__resize:before{content:"";background:0 0;width:2px;position:absolute;top:0;bottom:0;left:4px}.Inspector-module__DKNUbG__resize:hover:before,.Inspector-module__DKNUbG__resize:focus-visible:before,.Inspector-module__DKNUbG__resize[data-resizing]:before{background:var(--accent)}.Inspector-module__DKNUbG__resize>span{background:var(--control-border);border-radius:3px;width:4px;height:40px;position:absolute;top:45%;left:3px}.Inspector-module__DKNUbG__resize:hover>span,.Inspector-module__DKNUbG__resize:focus-visible>span,.Inspector-module__DKNUbG__resize[data-resizing]>span{background:var(--accent)}.Inspector-module__DKNUbG__identity{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-xs);min-width:0;display:flex}.Inspector-module__DKNUbG__nodeId{text-overflow:ellipsis;white-space:nowrap;max-width:12ch;font-family:var(--font-mono);margin-left:auto;overflow:hidden}.Inspector-module__DKNUbG__section{border-top:1px solid var(--border);min-width:0}.Inspector-module__DKNUbG__sectionHead{align-items:center;gap:var(--space-1);padding-right:var(--space-3);min-width:0;display:flex}.Inspector-module__DKNUbG__sectionToggle{align-items:center;gap:2px var(--space-2);width:100%;min-width:0;min-height:52px;padding:var(--space-2) var(--space-4);cursor:pointer;text-align:left;color:var(--text);background:0 0;border:0;grid-template-columns:16px minmax(0,1fr);display:grid}.Inspector-module__DKNUbG__sectionToggle:hover{background:var(--surface-2)}.Inspector-module__DKNUbG__sectionToggle[aria-expanded=true]{min-height:40px}.Inspector-module__DKNUbG__sectionTitle{font-weight:600;font-size:var(--text-sm)}.Inspector-module__DKNUbG__sectionSummary{color:var(--muted);font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;grid-column:2;overflow:hidden}.Inspector-module__DKNUbG__chevron,.Inspector-module__DKNUbG__chevronOpen{grid-row:1/span 2;display:flex}.Inspector-module__DKNUbG__chevron svg,.Inspector-module__DKNUbG__chevronOpen svg{fill:none;width:14px;height:14px;stroke:var(--secondary);stroke-width:1.6px}.Inspector-module__DKNUbG__chevronOpen svg{transform:rotate(90deg)}.Inspector-module__DKNUbG__sectionBody{gap:var(--space-3);padding:var(--space-2) var(--space-4) var(--space-4);display:grid}.Inspector-module__DKNUbG__row{align-items:center;gap:var(--space-2) var(--space-3);grid-template-columns:minmax(100px,.9fr) minmax(120px,1.1fr);min-width:0;min-height:36px;display:grid}.Inspector-module__DKNUbG__fieldLabel{min-width:0;font-size:var(--text-sm);color:var(--secondary);flex-wrap:wrap;align-items:center;gap:4px;line-height:1.4;display:flex}.Inspector-module__DKNUbG__fieldLabel>label{cursor:pointer}.Inspector-module__DKNUbG__value{align-items:center;min-width:0;display:flex}.Inspector-module__DKNUbG__value input,.Inspector-module__DKNUbG__value select{width:100%;min-width:0;min-height:36px;padding:0 var(--space-2);border:1px solid var(--control-border);border-radius:var(--radius-control);background:var(--canvas);color:var(--text);font-size:var(--text-sm)}.Inspector-module__DKNUbG__value input:hover,.Inspector-module__DKNUbG__value select:hover{border-color:var(--accent)}.Inspector-module__DKNUbG__value input:focus-visible,.Inspector-module__DKNUbG__value select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.Inspector-module__DKNUbG__value input[type=number]{font-family:var(--font-mono)}.Inspector-module__DKNUbG__value span:has(>input[type=number]){min-width:0}.Inspector-module__DKNUbG__value span:has(>input[type=number]) input{padding-right:42px}.Inspector-module__DKNUbG__group{gap:var(--space-3);border:0;border-top:1px solid var(--border);min-width:0;padding:var(--space-3) 0 0;margin:var(--space-1) 0 0;display:grid}.Inspector-module__DKNUbG__group>legend{padding:0 var(--space-2) 0 0;font-size:var(--text-xs);color:var(--text);font-weight:600}.Inspector-module__DKNUbG__group>legend>span{margin-right:var(--space-2)}.Inspector-module__DKNUbG__effect{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);white-space:nowrap;padding:1px 4px;font-size:10px;line-height:1.4}.Inspector-module__DKNUbG__additional{margin-top:var(--space-1);min-width:0}.Inspector-module__DKNUbG__additional>summary{cursor:pointer;color:var(--muted);font-size:var(--text-xs);padding:var(--space-2) 0}.Inspector-module__DKNUbG__additional>summary span{padding-left:var(--space-2);font-family:var(--font-mono)}.Inspector-module__DKNUbG__additionalBody{gap:var(--space-3);padding-top:var(--space-2);display:grid}.Inspector-module__DKNUbG__help{width:24px;height:24px;color:var(--muted);font:600 11px/1 var(--font-ui);cursor:help;vertical-align:middle;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:inline-grid}.Inspector-module__DKNUbG__help>span{border:1px solid;border-radius:50%;place-items:center;width:14px;height:14px;display:grid}.Inspector-module__DKNUbG__help:hover,.Inspector-module__DKNUbG__help[aria-expanded=true]{color:var(--accent);background:var(--surface-2)}.Inspector-module__DKNUbG__help:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.Inspector-module__DKNUbG__tooltip{z-index:1000;width:min(300px,100vw - 24px);padding:var(--space-3) var(--space-4);color:var(--text);background:var(--surface-3);border:1px solid var(--control-border);border-radius:var(--radius-control);box-shadow:var(--shadow-overlay);font:var(--text-sm)/1.5 var(--font-ui);overflow-wrap:anywhere;position:fixed}.Inspector-module__DKNUbG__tooltip strong{font-weight:600}.Inspector-module__DKNUbG__tooltip p{margin:var(--space-2) 0 0;color:var(--secondary)}@container inspector (max-width:340px){.Inspector-module__DKNUbG__row{grid-template-columns:minmax(0,1fr)}.Inspector-module__DKNUbG__booleanRow{grid-template-columns:minmax(0,1fr) auto}}
