/* Only the Lenovo illustration changes; surrounding layout and native details stay intact. */
#public-main #b-diagram-infra-lenovo {
  --ls-text:#183850;--ls-muted:#496278;--ls-blue:#3c79a8;--ls-line:#c7d7e5;
  --ls-device:#d8e8f5;--ls-top:#edf6fd;--ls-side:#acc6dc;--ls-face:#fafdff;
  --ls-shadow:#234e741c;--ls-orange:#a95119;--ls-brand:#c03440;
  color:var(--ls-text);font-size:14px;line-height:1.65;font-weight:400;
}
html[data-theme="dark"] #public-main #b-diagram-infra-lenovo {
  --ls-text:#e4effb;--ls-muted:#aec2d6;--ls-blue:#8dbbe3;--ls-line:#34516a;
  --ls-device:#24435c;--ls-top:#3a5f7b;--ls-side:#1a344d;--ls-face:#173247;
  --ls-shadow:#0004;--ls-orange:#ffbb88;--ls-brand:#f17d89;
}
#public-main #b-diagram-infra-lenovo * {box-sizing:border-box;min-width:0;}
#public-main #b-diagram-infra-lenovo :where(h4,p) {margin:0;word-break:keep-all;font-weight:400;}
#public-main #b-diagram-infra-lenovo .ls-responsive {width:100%;max-width:100%;margin-inline:auto;container:infra-lenovo / inline-size;}
#public-main #b-diagram-infra-lenovo .ls-map {position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 100px;max-width:560px;margin:29px auto 0;--ls-mobile:0;}
#public-main #b-diagram-infra-lenovo .ls-wires {position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1;}
#public-main #b-diagram-infra-lenovo .ls-wire {fill:none;stroke:var(--ls-blue);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
#public-main #b-diagram-infra-lenovo .ls-node {position:relative;text-align:center;z-index:2;}
#public-main #b-diagram-infra-lenovo .ls-art {position:relative;width:140px;max-width:100%;height:146px;margin-inline:auto;}
#public-main #b-diagram-infra-lenovo .ls-depth::before {content:'';position:absolute;top:-6px;left:-1px;width:calc(100% + 8px);height:6px;clip-path:polygon(0 100%,12% 0,100% 0,88% 100%);background:linear-gradient(160deg,var(--ls-top),var(--ls-side));}
#public-main #b-diagram-infra-lenovo .ls-depth::after {content:'';position:absolute;left:calc(100% - 1px);top:-6px;width:8px;height:calc(100% + 6px);clip-path:polygon(0 6px,100% 0,100% calc(100% - 6px),0 100%);background:var(--ls-side);}
#public-main #b-diagram-infra-lenovo .ls-rack {position:absolute;left:28px;top:10px;width:76px;height:124px;border:1px solid var(--ls-blue);border-radius:3px;padding:12px 8px;background:linear-gradient(90deg,var(--ls-side) 0 3px,var(--ls-top) 3px,var(--ls-device) calc(100% - 4px),var(--ls-side) calc(100% - 4px));display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:5px;box-shadow:0 8px 13px var(--ls-shadow);}
#public-main #b-diagram-infra-lenovo .ls-rack > span {position:relative;border:1px solid var(--ls-blue);border-radius:2px;background:linear-gradient(120deg,var(--ls-face),var(--ls-top));}
#public-main #b-diagram-infra-lenovo .ls-rack > span::before {content:'';position:absolute;left:5px;top:5px;width:calc(100% - 21px);height:6px;background:repeating-linear-gradient(90deg,var(--ls-blue) 0 1px,transparent 1px 3px);opacity:.65;}
#public-main #b-diagram-infra-lenovo .ls-rack > span::after {content:'';position:absolute;right:5px;top:6px;width:3px;height:3px;border-radius:50%;background:var(--ls-orange);box-shadow:0 5px 0 var(--ls-blue);}
#public-main #b-diagram-infra-lenovo .ls-rack > span i {position:absolute;left:5px;right:15px;bottom:4px;border-top:1px solid var(--ls-line);}
#public-main #b-diagram-infra-lenovo .ls-rack-mark {position:absolute;top:17px;left:-1px;width:4px;height:22px;background:var(--ls-brand);}
#public-main #b-diagram-infra-lenovo .ls-rack-base {position:absolute;left:8px;right:7px;bottom:-5px;height:4px;border-left:4px solid var(--ls-blue);border-right:4px solid var(--ls-blue);}
#public-main #b-diagram-infra-lenovo .ls-array {position:absolute;left:10px;top:30px;width:112px;height:84px;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;}
#public-main #b-diagram-infra-lenovo .ls-chassis {position:relative;border:1px solid var(--ls-blue);border-radius:3px;background:linear-gradient(140deg,var(--ls-top),var(--ls-device));padding:7px 6px;display:flex;gap:4px;box-shadow:0 7px 11px var(--ls-shadow);}
#public-main #b-diagram-infra-lenovo .ls-chassis > span {position:relative;flex:1;border:1px solid var(--ls-blue);border-radius:1px;background:linear-gradient(90deg,var(--ls-face),var(--ls-top));}
#public-main #b-diagram-infra-lenovo .ls-chassis > span::before {content:'';position:absolute;left:3px;top:2px;bottom:4px;border-left:1px solid var(--ls-line);}
#public-main #b-diagram-infra-lenovo .ls-chassis > span::after {content:'';position:absolute;right:2px;bottom:2px;width:2px;height:2px;background:var(--ls-orange);}
#public-main #b-diagram-infra-lenovo .ls-node h4 {font-size:14px;line-height:1.5;font-weight:500;margin-top:8px;}
#public-main #b-diagram-infra-lenovo .ls-node > p {font-size:11px;line-height:1.7;color:var(--ls-muted);margin-top:5px;}
#public-main #b-diagram-infra-lenovo .ls-connection-label {position:absolute;top:0;left:50%;width:116px;text-align:center;transform:translateX(-50%);font-size:11px;line-height:1.5;z-index:3;color:var(--ls-muted);pointer-events:none;}
#public-main #b-diagram-infra-lenovo .ls-connection-label span {display:block;white-space:nowrap;}
#public-main #b-diagram-infra-lenovo .ls-connection-label span + span {margin-top:27px;color:var(--ls-text);}
#public-main #b-diagram-infra-lenovo .ls-scope {margin:18px auto 0;max-width:560px;text-align:center;font-size:11px;line-height:1.7;color:var(--ls-muted);}
@container infra-lenovo (max-width:500px) {
  #public-main #b-diagram-infra-lenovo .ls-map {--ls-mobile:1;gap:0 44px;margin-top:24px;max-width:380px;}
  #public-main #b-diagram-infra-lenovo .ls-art {width:110px;height:122px;}
  #public-main #b-diagram-infra-lenovo .ls-rack {left:20px;top:8px;width:62px;height:104px;padding:10px 7px;gap:4px;}
  #public-main #b-diagram-infra-lenovo .ls-rack > span::before {left:4px;top:4px;width:calc(100% - 19px);height:5px;}
  #public-main #b-diagram-infra-lenovo .ls-rack > span::after {right:4px;top:4px;width:2px;height:2px;box-shadow:0 4px 0 var(--ls-blue);}
  #public-main #b-diagram-infra-lenovo .ls-rack > span i {left:4px;right:13px;bottom:3px;}
  #public-main #b-diagram-infra-lenovo .ls-rack-mark {top:15px;height:20px;}
  #public-main #b-diagram-infra-lenovo .ls-array {left:4px;top:25px;width:94px;height:70px;gap:10px;}
  #public-main #b-diagram-infra-lenovo .ls-chassis {padding:6px 5px;gap:4px;}
  #public-main #b-diagram-infra-lenovo .ls-node h4 {font-size:13px;margin-top:7px;}
  #public-main #b-diagram-infra-lenovo .ls-node > p {margin-top:4px;}
  #public-main #b-diagram-infra-lenovo .ls-scope {max-width:330px;margin-top:15px;}
}
