/* Lab: the approved isometric explorer, within the shared portfolio frame. */
.lab-explorer{--lx-cyan:#78dce8;--lx-grid:#405966;--lx-map:#202930;--lx-note:#18242c}
[data-theme=light] .lab-explorer{--lx-cyan:#006b7d;--lx-grid:#ccdde5;--lx-map:#f4f9fb;--lx-note:#e5f0f5}
.lx-main{display:flex;flex-direction:column;gap:18px;padding-top:22px;padding-bottom:16px}
.lx-main svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.lx-main .lx-sprite{width:0;height:0;position:absolute;overflow:hidden}
.lx-main button,.lx-main select{color:var(--text);background:transparent;border:0}
.lx-main [hidden]{display:none!important}
.lx-main button:disabled{opacity:.42}
.lx-intro{display:flex;align-items:center;justify-content:space-between;gap:28px}
.lx-intro h1{font-size:clamp(30px,3.2vw,52px);line-height:1.12;letter-spacing:-.035em}
.lx-intro h1 span{color:var(--accent);font-style:italic}
.lx-intro>div>p{font-size:13px;margin-top:10px;color:var(--muted)}
.lx-source{display:flex;flex-direction:column;gap:2px;max-width:300px;font-size:11px;line-height:1.5;flex-shrink:0}
#live-connection{display:flex;align-items:center;gap:8px}
#live-connection::before{content:'';width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--warning)}
#live-connection[data-mode=live]::before{background:var(--success)}
.lx-source-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted)}
#refresh-lab{height:36px;min-width:44px;display:grid;place-items:center}
#refresh-lab svg{width:17px;height:17px}
.lx-totals{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:4px 0 9px}
.lx-totals>div{display:flex;align-items:center;gap:18px;border-left:1px solid var(--subtle);padding:0 28px}
.lx-totals>div:first-child{padding-left:0;border:0}
.lx-totals>div>svg{width:31px;height:31px;color:var(--lx-cyan)}
.lx-totals dt{font-size:11px;color:var(--muted);line-height:1.5}
.lx-totals dd{font-size:25px;font-weight:600;color:var(--lx-cyan);line-height:1.2;margin:0;font-variant-numeric:tabular-nums}
.lx-totals .lx-attention svg,.lx-totals .lx-attention dd{color:var(--warning)}
.lx-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,28%);gap:14px;align-items:stretch}
.lx-explorer{min-width:0;display:flex;flex-direction:column;border:1px solid var(--subtle);border-radius:12px;overflow:hidden}
.lx-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;background:var(--bg);z-index:1;border-bottom:1px solid var(--subtle)}
.lx-layers{display:flex;gap:8px;flex-shrink:0;min-width:0}
.lx-layers button{font-size:11px;min-height:48px;display:flex;align-items:center;gap:7px;padding:0 8px;position:relative;white-space:nowrap}
.lx-layers svg{width:19px;height:19px}
.lx-layers button[aria-selected=true]{color:var(--accent)}
.lx-layers button[aria-selected=true]::after{content:'';position:absolute;bottom:0;left:0;right:0;border-bottom:2px solid var(--accent)}
.aui-enabled .lx-layers button[aria-selected=true]::after{display:none}
#start-tour{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--lx-cyan);min-height:44px;padding:0 4px;white-space:nowrap}
#start-tour svg{width:16px;height:16px}
.lx-map{display:flex;flex:1;flex-direction:column;background:var(--lx-map);min-height:380px;overflow:auto;scrollbar-color:var(--line) var(--lx-map)}
.lx-map-stage{position:relative;flex:1;min-height:340px;isolation:isolate;background-image:linear-gradient(24deg,transparent 49.8%,var(--lx-grid) 50%,transparent 50.2%),linear-gradient(114deg,transparent 49.8%,var(--lx-grid) 50%,transparent 50.2%);background-size:38px 42px}
.lx-map-stage::before{content:'';position:absolute;inset:0;background:linear-gradient(var(--lx-map),transparent 35%);pointer-events:none;z-index:-1}
.lx-map-stage .lx-paths{position:absolute;inset:0;width:100%;height:100%;stroke:var(--lx-cyan);stroke-width:1.8;opacity:.65;pointer-events:none}
.lx-paths path{transition:opacity .25s,stroke .25s;vector-effect:non-scaling-stroke}
.lx-paths .lx-monitor-path{stroke-dasharray:4 6}
[data-layer=dependencies] .lx-paths path{opacity:.16}
[data-layer=dependencies] .lx-paths path.is-related{opacity:1;stroke:var(--accent);stroke-width:3}
.lx-zone{position:absolute;font-size:12px;font-weight:600;color:var(--text);pointer-events:none}
.lx-zone span{display:block;font-size:9px;font-weight:400;color:var(--muted);margin-top:3px}
.lx-zone-network{top:13%;left:7%}.lx-zone-arm{top:9%;left:40%}.lx-zone-compute{top:11%;right:5%}.lx-zone-storage{top:57%;right:5%}
.lx-components{position:absolute;inset:0}
.lx-node{position:absolute;left:var(--x);top:var(--y);width:var(--w);transform:translate(-50%,-50%);padding:0!important;display:flex;flex-direction:column;align-items:center;line-height:1.3;isolation:isolate}
.lx-node img{width:100%;height:auto;display:block;filter:drop-shadow(0 10px 10px #00000033);transition:transform .3s cubic-bezier(.16,1,.3,1),filter .3s}
.lx-node:hover img{transform:translateY(-5px)}
.lx-node>strong{font-size:clamp(10px,.8vw,13px);font-weight:600;white-space:nowrap;color:var(--text);background:var(--lx-map);padding:4px 7px;border-radius:4px;margin-top:-12%;z-index:1;border-bottom:2px solid transparent}
.lx-node[aria-pressed=true]>strong{color:var(--accent);border-color:var(--accent)}
.lx-node[aria-pressed=true] img{transform:translateY(-5px);filter:drop-shadow(0 9px 11px #00000040)}
.lx-node[aria-pressed=true]::after{content:'';position:absolute;inset:12% 0 1%;border:1.5px solid var(--accent);border-radius:12px;z-index:-1;background:color-mix(in srgb,var(--accent) 5%,transparent)}
.lx-node-state{position:absolute;top:17%;right:13%;width:8px;height:8px;border:1.5px solid var(--bg);border-radius:50%;background:var(--muted);z-index:2}
.lx-node-state[data-state=available]{background:var(--success)}.lx-node-state[data-state=attention]{background:var(--warning)}
.lx-monitor{position:absolute;left:59%;top:12%;display:flex;gap:6px;align-items:center;padding:6px 9px!important;background:var(--surface)!important;border:1px solid var(--subtle)!important;border-radius:6px;font-size:10px;line-height:1.3;text-align:left;min-height:44px}
.lx-monitor small{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.lx-monitor svg{width:22px;height:22px;color:var(--lx-cyan)}
.lx-monitor[aria-pressed=true]{border-color:var(--accent)!important;color:var(--accent)}
.lx-map-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 12px 5px 16px;min-height:40px;background:var(--lx-map);z-index:2}
.lx-map-caption p{font-size:10px;line-height:1.5;color:var(--muted)}
.lx-zoom{display:flex;align-items:center;gap:4px}
.lx-zoom button{width:32px;height:32px;font-size:19px;border:1px solid var(--line);border-radius:5px}
.lx-zoom #map-zoom-reset{width:44px;font-size:10px}
.lx-workload-label{position:absolute;display:none;align-items:center;gap:8px;padding:9px 12px;background:var(--surface);border:1px solid var(--line);border-radius:7px;font-size:10px;line-height:1.3;pointer-events:none;z-index:3}
.lx-workload-label strong{display:block;font-size:11px;margin-top:3px;color:var(--lx-cyan)}
.lx-workload-label svg{width:20px;height:20px;color:var(--lx-cyan)}
.lx-workload-swarm{top:47%;left:38%}.lx-workload-compute{top:47%;right:2%}.lx-workload-storage{bottom:4%;right:4%}
[data-layer=workloads] .lx-workload-label{display:flex}
[data-layer=workloads] .lx-node:not([aria-pressed=true]) img{opacity:.65}
.lx-inspector{border:1px solid var(--subtle);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:15px;min-width:0}
#component-title{font-size:23px;line-height:1.2;scroll-margin-top:20px}
.lx-component-model{display:flex;gap:9px;align-items:center;margin-top:12px}
#component-marks{display:flex;gap:5px;flex-shrink:0}
#component-marks img{height:34px;width:34px;object-fit:contain;background:white;border-radius:5px;padding:5px}
#component-model{font-size:11px;line-height:1.5;color:var(--muted)}
.lx-component-state{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted);margin:9px 0 12px}
.lx-component-state::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--muted)}
.lx-component-state[data-state=available]{color:var(--success)}.lx-component-state[data-state=available]::before{background:var(--success)}
.lx-component-state[data-state=attention]{color:var(--warning)}.lx-component-state[data-state=attention]::before{background:var(--warning)}
.lx-reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 12px}
.lx-reading-grid>div+div{border-left:1px solid var(--subtle);padding-left:8px}
.lx-reading-grid dt{font-size:9px;color:var(--muted);margin-top:4px}
.lx-reading-grid dd{font-size:22px;font-weight:600;line-height:1.25;color:var(--lx-cyan);margin:0;font-variant-numeric:tabular-nums}
.lx-reading-grid.single{grid-template-columns:1fr}.lx-reading-grid.single dd{font-size:30px}
.lx-meter-row{display:flex;gap:14px;align-items:center;font-size:9px;margin:9px 0;color:var(--muted)}
.lx-meter-row>span{width:42px}.lx-meter{height:6px;border-radius:6px;background:var(--subtle);flex:1;overflow:hidden}
.lx-meter>i{height:100%;display:block;width:0;background:var(--lx-cyan);border-radius:6px;transition:width .45s cubic-bezier(.16,1,.3,1)}
.lx-metrics-note{font-size:10px;color:var(--muted);margin:10px 0 14px}
#component-description{font-size:11px;line-height:1.65;color:var(--muted);margin-top:15px}
.lx-decision{margin-top:15px;padding-top:14px;border-top:1px solid var(--subtle)}
.lx-decision h3{font-size:13px;letter-spacing:-.01em;margin-bottom:7px}
.lx-decision p{font-size:11px;line-height:1.65;color:var(--muted)}
.lx-text-link{display:inline-flex;align-items:center;gap:7px;min-height:38px;color:var(--accent);font-size:11px;text-decoration:underline;text-underline-offset:4px}
.lx-text-link svg{width:16px;height:16px}
.lx-health{display:flex;align-items:start;gap:9px;padding-top:12px;border-top:1px solid var(--subtle);margin-top:auto;font-size:10px;line-height:1.55;color:var(--warning)}
.lx-health>svg{width:17px;height:17px;margin-top:2px}
.lx-health small{font-size:9px;color:var(--muted);display:block;margin-top:4px}
.lx-resource-rail{display:flex;align-items:center;gap:22px;padding:12px 16px;border:1px solid var(--subtle);border-radius:10px}
.lx-resource-heading h2{font-size:13px;letter-spacing:-.015em;margin-bottom:5px;white-space:nowrap}
.lx-resource-heading>span{font-size:10px;color:var(--muted);display:block}
.lx-latency-summary{display:flex;align-items:center;gap:14px;text-align:left;font-size:10px;padding:0 24px!important;border-left:1px solid var(--subtle)!important;min-width:185px;line-height:1.5}
.lx-latency-summary svg{color:var(--lx-cyan)}
.lx-latency-summary strong{display:inline-block;font-size:20px;font-weight:600;color:var(--lx-cyan);margin-right:9px;font-variant-numeric:tabular-nums}
.lx-latency-summary small{display:block;font-size:9px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.lx-node-resources{display:grid;grid-template-columns:repeat(5,minmax(40px,1fr));gap:20px;flex:1}
.lx-node-resource{padding:0!important;text-align:left;font-size:10px;min-height:44px;line-height:1.4}
.lx-node-resource strong{display:block;font-size:13px;color:var(--lx-cyan);font-variant-numeric:tabular-nums;margin:2px 0}
.lx-node-resource .lx-meter{height:5px;display:block}
.lx-node-resource[aria-pressed=true]>span:first-child{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.lx-provenance{display:flex;gap:16px;justify-content:space-between;font-size:9px;color:var(--muted);line-height:1.5}
.lx-history{display:grid;grid-template-columns:280px 1fr;gap:30px;background:var(--surface);padding:22px;border-radius:12px}
.lx-history h2{font-size:20px;margin-bottom:10px}.lx-history p{font-size:11px;color:var(--muted)}
.lx-history #latency-chart{width:100%;height:150px;stroke:var(--lx-cyan)}
#latency-chart .guide{stroke:var(--subtle);stroke-width:1}#latency-chart text{stroke:none;fill:var(--muted);font-size:11px;font-family:inherit}
.lx-tour{border-bottom:1px solid var(--subtle);padding-bottom:13px;margin-bottom:1px}
.lx-tour>div:first-child{display:flex;align-items:center;justify-content:space-between;color:var(--accent);font-size:11px}
.lx-tour #close-tour{display:grid;place-items:center;width:32px;height:32px;color:var(--muted)}
.lx-tour svg{width:16px;height:16px}
.lx-tour h2{font-size:18px;margin:7px 0}
.lx-tour p{font-size:11px;line-height:1.6;color:var(--muted)}
.lx-tour-controls{display:flex;justify-content:space-between;margin-top:12px;gap:8px}
.lx-tour-controls button{display:flex;align-items:center;gap:8px;min-height:38px;padding:6px 10px;font-size:11px;border-radius:5px}
.lx-tour-controls #tour-next{background:var(--action);color:#fff}
.tour-active #component-description,.tour-active .lx-decision{display:none}
.lx-mobile-selector,.lx-mobile-art{display:none}
.lx-main button:hover:not(:disabled),.lx-main a:hover{color:var(--accent)}
.lx-tour-controls #tour-next:hover{color:#fff;background:#b90043}
.lx-totals>div{display:grid;position:relative;gap:1px;grid-template-columns:1fr}
.lx-totals dt{display:contents}.lx-totals dt>span{grid-row:2;margin-left:49px}.lx-totals dd{grid-row:1;margin-left:49px}
.lx-totals dt svg{position:absolute;left:28px;top:50%;transform:translateY(-50%);width:31px;height:31px;color:var(--lx-cyan)}
.lx-totals>div:first-child dt svg{left:0}
.lx-reading-grid>div{display:flex;flex-direction:column-reverse}
.lx-map-viewport{position:relative;flex:1;min-height:340px;overflow:auto;scrollbar-width:thin}
.lx-map-stage{position:absolute;inset:0 auto auto 0;width:100%;height:100%;min-height:0}
.lx-map-stage{background-image:repeating-linear-gradient(30deg,transparent 0 31px,color-mix(in srgb,var(--lx-grid) 30%,transparent) 32px,transparent 33px),repeating-linear-gradient(150deg,transparent 0 31px,color-mix(in srgb,var(--lx-grid) 30%,transparent) 32px,transparent 33px);background-size:auto}
.lx-zone-compute{top:3%}.lx-zone-storage{top:55%}
.lx-latency-summary strong{display:block}
.lx-notes{margin:4px 0 0;border:0}.lx-notes summary{font-size:10px;min-height:32px;padding:6px 0;color:var(--muted)}.lx-notes p{font-size:11px;line-height:1.65;padding:4px 0 10px;color:var(--muted)}
.tour-active .lx-notes{display:none}
@media(min-width:1280px) and (min-height:720px){
 .lx-workspace{flex:1}.lx-main{min-height:calc(100svh - var(--site-header) - 80px)}
 .lx-map{min-height:0}.lx-map-viewport{min-height:330px}
}
@media(min-width:1600px) and (min-height:1000px){
 .lx-main{gap:22px;padding-top:24px;padding-bottom:18px}.lx-intro h1{font-size:clamp(48px,3vw,72px)}.lx-intro>div>p{font-size:17px}
 .lx-source{font-size:13px;max-width:360px}.lx-totals{padding:10px 0 12px}.lx-totals dd{font-size:30px}.lx-totals dt{font-size:14px}.lx-totals>div>svg{width:38px;height:38px}
 .lx-workspace{gap:18px;grid-template-columns:minmax(0,1fr) minmax(340px,26%)}.lx-toolbar{padding-inline:18px}.lx-layers button,#start-tour{font-size:14px;min-height:56px}.lx-layers{gap:12px}
 .lx-map-viewport{min-height:460px}.lx-zone{font-size:15px}.lx-zone span{font-size:11px}.lx-monitor{font-size:12px}.lx-monitor small{font-size:10px}
 .lx-node>strong{font-size:14px}.lx-map-caption p{font-size:12px}.lx-inspector{padding:24px;gap:18px}
 #component-title{font-size:28px}#component-model{font-size:13px}#component-marks img{width:42px;height:42px}.lx-component-state{font-size:12px}
 .lx-reading-grid dd{font-size:28px}.lx-reading-grid dt{font-size:11px}.lx-meter-row{font-size:11px}.lx-metrics-note{font-size:11px}
 #component-description,.lx-decision p{font-size:13px}.lx-decision h3{font-size:16px}.lx-text-link{font-size:13px;min-height:44px}.lx-health{font-size:12px}.lx-health small{font-size:11px}
 .lx-resource-rail{padding:15px 20px;gap:30px}.lx-resource-heading h2{font-size:16px}.lx-resource-heading>span{font-size:12px}.lx-latency-summary{font-size:12px}.lx-latency-summary strong{font-size:24px}.lx-latency-summary small{font-size:10px}
 .lx-node-resource{font-size:12px}.lx-node-resource strong{font-size:16px}.lx-provenance{font-size:11px}.lx-tour h2{font-size:22px}.lx-tour p{font-size:13px}.lx-tour-controls button{font-size:13px;min-height:44px}
}
@media(max-width:1200px){
 .lx-main{gap:16px}.lx-intro{gap:20px}.lx-intro h1{font-size:34px}.lx-workspace{grid-template-columns:minmax(0,1fr) 290px}
 .lx-toolbar{flex-wrap:wrap;gap:0;padding:0 8px}.lx-layers{gap:3px}.lx-layers button{padding:0 5px;font-size:10px}#start-tour{font-size:10px;min-height:36px}
 .lx-map-viewport{min-height:365px}.lx-zone{font-size:10px}.lx-zone span{font-size:8px}.lx-monitor{font-size:9px;padding:5px!important;left:59%}.lx-monitor small{font-size:8px}.lx-monitor svg{width:16px;height:16px}
 .lx-node>strong{font-size:9px;padding-inline:3px}.lx-inspector{padding:16px}.lx-totals>div{padding-inline:18px;gap:10px}.lx-resource-rail{gap:16px}.lx-node-resources{gap:12px}
}
@media(max-width:1000px){
 .lx-intro{align-items:start}.lx-intro h1{font-size:32px}.lx-intro>div>p{font-size:12px;max-width:42ch}.lx-source{max-width:230px;font-size:10px}
 .lx-workspace{grid-template-columns:1fr}.lx-map{min-height:440px}.lx-map-viewport{min-height:390px}.lx-toolbar{flex-wrap:nowrap}.lx-layers button{font-size:12px;padding:0 10px}#start-tour{font-size:12px}
 .lx-zone{font-size:13px}.lx-zone span{font-size:10px}.lx-node>strong{font-size:12px}.lx-monitor{font-size:11px;left:60%;padding:6px 9px!important}.lx-monitor small{font-size:10px}
 .lx-inspector{padding:22px}.lx-inspector #lab-inspector-content{display:grid;grid-template-columns:1fr 1fr;column-gap:30px;align-items:start}#component-title,.lx-component-model,.lx-component-state,#component-metrics{grid-column:1}.lx-decision{grid-column:2;grid-row:2/6;margin:10px 0 0;padding:0;border:0}#component-description{grid-column:2;grid-row:1;margin:0}
 .lx-tour{max-width:65ch}.lx-resource-rail{flex-wrap:wrap}.lx-node-resources{flex-basis:100%}.lx-totals>div{padding-inline:12px}.lx-totals dt{font-size:10px}.lx-totals dd{font-size:23px}
 .lx-provenance{font-size:9px}.lx-workload-label{font-size:11px}
}
@media(max-width:760px){
 .lx-main{gap:18px;padding-top:24px;padding-bottom:24px}.lx-intro{display:block}.lx-intro h1{font-size:36px;max-width:15ch}.lx-intro>div>p{font-size:13px;max-width:36ch;line-height:1.6}
 .lx-source{margin-top:16px;max-width:none;font-size:11px}.lx-source-meta{justify-content:start}#refresh-lab{margin-left:auto}
 .lx-totals{grid-template-columns:1fr 1fr;gap:20px 12px;padding:2px 0 7px}.lx-totals>div{padding:0;border:0;gap:13px}.lx-totals>div>svg{width:27px;height:27px}.lx-totals dd{font-size:23px}.lx-totals dt{font-size:11px}
 .lx-workspace{gap:0}.lx-explorer{border-radius:12px 12px 0 0}.lx-toolbar{display:block;padding:0 8px}.lx-layers{justify-content:space-between;gap:0}.lx-layers button{font-size:11px;min-height:48px;gap:5px;padding:0 5px}.lx-layers svg{width:17px;height:17px}
 #start-tour{width:100%;justify-content:space-between;border-top:1px solid var(--subtle);min-height:44px;font-size:12px;padding:0 8px}
 .lx-mobile-selector{display:flex;align-items:center;gap:4px;padding:8px;background:var(--lx-map)}.lx-mobile-selector button{width:40px;min-height:44px;display:grid;place-items:center;flex-shrink:0}.lx-mobile-selector select{min-width:0;flex:1;min-height:44px;font-size:13px;text-align:center;appearance:auto;color:var(--text);padding:4px}.lx-mobile-selector select option{background:var(--surface);color:var(--text)}.lx-back{transform:rotate(180deg)}
 .lx-map{min-height:0;overflow:hidden}.lx-map-viewport{min-height:0;height:250px;flex:none}.lx-map-stage{width:100%!important;height:100%!important;min-height:0}.lx-map .lx-components,.lx-zone,.lx-map .lx-paths,.lx-map .lx-monitor,.lx-workload-label{display:none!important}
 .lx-mobile-art{display:flex;align-items:center;flex-direction:column;height:100%;justify-content:center;padding:0 12px 12px}.lx-mobile-art img{width:240px;height:225px;object-fit:contain;filter:drop-shadow(0 12px 14px #00000026)}.lx-mobile-art>span{font-size:11px;color:var(--muted);text-align:center}
 .lx-map-caption{padding:10px 14px;min-height:42px}.lx-map-caption p{font-size:10px;max-width:34ch}.lx-zoom{display:none}
 .lx-inspector{border-top:0;border-radius:0 0 12px 12px;padding:22px;gap:16px}.lx-inspector #lab-inspector-content{display:block}#component-title{font-size:25px}.lx-component-model{margin-top:13px}#component-model{font-size:12px}#component-marks img{width:38px;height:38px}.lx-component-state{font-size:11px;margin:12px 0 17px}
 .lx-reading-grid dd{font-size:25px}.lx-reading-grid dt{font-size:11px}.lx-reading-grid{margin-bottom:16px;gap:10px}.lx-meter-row{font-size:10px;margin:11px 0}.lx-meter{height:7px}
 #component-description{font-size:13px;line-height:1.65;margin-top:22px}.lx-decision{border-top:1px solid var(--subtle);padding-top:18px;margin-top:20px}.lx-decision h3{font-size:15px}.lx-decision p{font-size:13px}.lx-text-link{font-size:12px;min-height:44px}.lx-metrics-note{font-size:12px}
 .lx-health{font-size:12px;padding-top:18px}.lx-health small{font-size:10px}.lx-health>svg{width:20px;height:20px}
 .lx-resource-rail{padding:16px;gap:18px;justify-content:space-between}.lx-resource-heading h2{font-size:13px}.lx-resource-heading>span{font-size:9px;max-width:16ch}.lx-latency-summary{min-width:0;padding:0 0 0 14px!important;gap:8px}.lx-latency-summary strong{font-size:20px}.lx-latency-summary svg{width:20px;height:20px}
 .lx-node-resources{gap:12px}.lx-node-resource{font-size:10px}.lx-node-resource strong{font-size:12px;min-height:18px}.lx-node-resource .lx-meter{height:5px}
 .lx-provenance{display:block;font-size:10px}.lx-provenance span{display:block;margin-top:5px}.lx-history{grid-template-columns:1fr;gap:16px;padding:18px}.lx-history h2{font-size:20px}
 .lx-tour h2{font-size:21px}.lx-tour p{font-size:13px}.lx-tour-controls button{min-height:44px;font-size:12px}.lx-tour #close-tour{width:44px;height:44px}.lx-tour>div:first-child{font-size:12px}
 .tour-active #component-description,.tour-active .lx-decision{display:none}
 .lx-totals dt>span,.lx-totals dd{margin-left:40px}.lx-totals dt svg{left:0;width:27px;height:27px}
}
@media(max-width:360px){.lx-intro h1{font-size:32px}.lx-layers button{font-size:10px;gap:4px}.lx-layers svg{width:14px}.lx-inspector{padding:18px}.lx-reading-grid dd{font-size:22px}.lx-resource-rail{padding:13px}.lx-latency-summary{gap:7px}.lx-resource-heading h2{font-size:12px}.lx-node-resources{gap:8px}.lx-node-resource strong{font-size:10px}}
@media(min-width:1280px){
 .lx-main{gap:12px;padding-top:16px;padding-bottom:10px}.lx-intro h1{font-size:clamp(32px,3vw,58px)}.lx-intro>div>p{font-size:13px;margin-top:8px}
 .lx-map-viewport{min-height:360px}.lx-inspector{padding:18px;gap:10px}#component-description{margin-top:12px}.lx-decision{margin-top:12px;padding-top:12px}
 .lx-notes summary{font-size:11px}.lx-resource-rail{padding-block:9px}.lx-health{padding-top:10px}
}
@media(min-width:1600px) and (min-height:1000px){
 .lx-map-viewport{min-height:420px}.lx-inspector{padding:22px;gap:12px}#component-description,.lx-decision p{font-size:13px}.lx-notes summary{font-size:12px}.lx-notes p{font-size:13px}
}
@media(min-width:1280px) and (max-height:850px){
 .lx-main{gap:10px;padding-top:10px;padding-bottom:8px}.lx-intro h1{font-size:34px}.lx-intro>div>p{font-size:11px;margin-top:5px}.lx-source{font-size:10px}
 .lx-totals{padding:0}.lx-totals dd{font-size:22px}.lx-totals dt{font-size:10px}.lx-workspace{gap:12px}.lx-toolbar .lx-layers button{min-height:42px}.lx-map-viewport{min-height:290px}
 .lx-inspector{padding:14px;gap:8px}#component-title{font-size:21px}.lx-component-model{margin-top:7px}#component-marks img{width:28px;height:28px}#component-model{font-size:10px}.lx-component-state{font-size:9px;margin:6px 0 9px}
 .lx-reading-grid{margin-bottom:7px}.lx-reading-grid dd{font-size:22px}.lx-reading-grid dt{font-size:9px}.lx-meter-row{display:none}#component-description{font-size:10px;margin-top:9px}.lx-decision{padding-top:9px;margin-top:9px}.lx-decision h3{font-size:12px;margin-bottom:5px}.lx-decision p{font-size:10px;line-height:1.55}.lx-text-link{font-size:10px;min-height:32px}.lx-notes summary{min-height:26px;font-size:10px;padding-block:4px}.lx-health{font-size:9px;gap:6px}.lx-health small{font-size:8px}
 .lx-resource-rail{padding-block:7px}.lx-latency-summary{font-size:9px}.lx-latency-summary strong{font-size:18px}.lx-latency-summary small{display:none}.lx-provenance{font-size:8px}.lx-node{width:calc(var(--w) * .92)}
}
@media(max-width:760px){.lx-notes{margin-top:8px}.lx-notes summary{font-size:12px;min-height:44px}.lx-notes p{font-size:13px}}

/* Finish review: meaningful group geometry, reserved workload space and readable copy. */
.lx-sector-planes{position:absolute;inset:0;width:100%!important;height:100%!important;fill:color-mix(in srgb,var(--lx-cyan) 3%,transparent)!important;stroke:color-mix(in srgb,var(--lx-cyan) 40%,var(--line))!important;stroke-width:1;pointer-events:none;z-index:-1}
.lx-sector-planes path{vector-effect:non-scaling-stroke}
.lx-main .lx-selection-plane{position:absolute;inset:0;width:100%;height:100%;fill:color-mix(in srgb,var(--accent) 8%,transparent);stroke:var(--accent);stroke-width:1.3;overflow:visible;opacity:0;pointer-events:none;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--accent) 40%,transparent))}
.lx-node[aria-pressed=true]::after{display:none}.lx-node[aria-pressed=true] .lx-selection-plane{opacity:1}
.lx-node-pin{position:absolute;top:8%;left:48%;width:25px;height:25px;display:grid;place-items:center;border:2px solid var(--lx-cyan);border-radius:50%;background:var(--lx-map);color:var(--lx-cyan);font-size:13px;font-weight:600;z-index:2}
.lx-node[aria-pressed=true] .lx-node-pin{background:var(--action);border-color:var(--accent);color:white}
.lx-workload-strip{display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 16px;background:var(--lx-map);border-top:1px solid var(--subtle)}
[data-layer=workloads] .lx-workload-strip{display:grid}
.lx-workload-strip .lx-workload-label{position:static!important;inset:auto!important;display:flex;padding:0;border:0;border-radius:0;background:none;min-width:0;font-size:12px}
.lx-workload-label strong{font-size:12px}.lx-workload-label svg{width:22px;height:22px}
@media(min-width:761px){
 .lx-source,.lx-totals dt,.lx-layers button,#start-tour,.lx-zone span,.lx-monitor,.lx-monitor small,.lx-map-caption p,.lx-node>strong,#component-model,.lx-component-state,.lx-reading-grid dt,.lx-meter-row,.lx-metrics-note,#component-description,.lx-decision p,.lx-text-link,.lx-health,.lx-health small,.lx-resource-heading>span,.lx-latency-summary,.lx-latency-summary small,.lx-node-resource,.lx-provenance,.lx-notes summary,.lx-notes p,.lx-tour p,.lx-tour-controls button{font-size:12px}
 .lx-decision h3,.lx-zone{font-size:14px}.lx-intro>div>p{font-size:13px}.lx-layers button{min-height:44px}
 .lx-inspector{padding:18px;gap:12px}.lx-component-state{margin:9px 0 12px}.lx-reading-grid{margin-bottom:10px}.lx-decision p{line-height:1.6}.lx-health small{line-height:1.5}
 .lx-notes summary{min-height:34px}.lx-text-link{min-height:38px}.lx-resource-rail{min-height:72px}.lx-provenance{flex-wrap:wrap}
}
@media(min-width:1001px) and (max-width:1200px){.lx-workspace{grid-template-columns:minmax(0,1fr) 310px}.lx-monitor{left:55%}.lx-workload-strip{gap:8px;padding:10px}.lx-workload-label svg{display:none}}
@media(max-width:760px){
 .lx-main{padding-top:16px;gap:14px}.lx-intro>div>p{font-size:12px;margin-top:8px}.lx-source{flex-direction:row;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:10px}.lx-source-meta{gap:5px}#refresh-lab{min-width:32px;height:32px}.lx-totals{gap:12px;padding-bottom:2px}
 .lx-sector-planes{display:none}.lx-map-viewport{height:150px}.lx-mobile-art{display:grid;grid-template-columns:50% 50%;padding:0 14px;height:150px;gap:6px}.lx-mobile-art img{width:100%;height:146px;object-fit:contain}.lx-mobile-art>span{display:none}
 #mobile-component-metrics{font-size:12px;line-height:1.5}#mobile-component-metrics>p>span{font-size:10px;color:var(--muted)}.lx-mobile-readings{display:grid;gap:7px;margin:0}.lx-mobile-readings>div{display:flex;align-items:baseline;justify-content:space-between;gap:5px}.lx-mobile-readings dt{font-size:11px;color:var(--muted)}.lx-mobile-readings dd{font-size:19px;font-weight:600;line-height:1.3;margin:0;color:var(--lx-cyan);font-variant-numeric:tabular-nums}
 #component-metrics{display:none}.lx-workload-strip{display:none!important}.lx-map-caption{padding:7px 14px;min-height:32px}.lx-map-caption p{font-size:10px}
}
/* Keep the cluster descriptor in its own clear area above the plane and pins. */
.lx-zone-arm{top:2%;padding:2px 6px;background:var(--lx-map);border-radius:4px}
