/* LenoLabs Core: responsive HTML and SVG, with live capability states. */
.lab-scene .lab-grid{grid-template-columns:1fr;gap:34px}
.lab-scene .lab-copy{max-width:850px;text-align:center;margin:auto}
.lab-scene .lab-copy h2{font-size:clamp(36px,4vw,58px);margin:12px 0 20px}
.lab-scene .lab-copy>p{max-width:760px;margin-inline:auto}
.lab-scene .lab-tabs{justify-content:center;margin:22px 0 16px}
.lab-scene .lab-note{min-height:0;margin-block:0 14px;font-size:15px}
.core-diagram.system-canvas{width:100%;max-width:1200px;aspect-ratio:1200/740;min-height:0;margin:auto;isolation:isolate;border:none;border-radius:28px;background:radial-gradient(ellipse at 50% 45%,#151c4b 0,transparent 51%),linear-gradient(135deg,#0b1127,#080f22);box-shadow:0 20px 65px #02061630;overflow:hidden}
.core-diagram.system-canvas:before{background-image:linear-gradient(#4552a00b 1px,transparent 1px),linear-gradient(90deg,#4552a00b 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse,#000,transparent 80%);z-index:-1}
.diagram-aura{position:absolute;inset:20% 25%;background:radial-gradient(ellipse,#3737f028,transparent 65%);pointer-events:none}
.core-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:0}
.core-connections path{fill:none;stroke:url(#wire-gradient);stroke-width:2.5;filter:drop-shadow(0 0 7px #5454ff60)}
.connection-dots circle{fill:#69e2ff;stroke:#7282ff;stroke-width:2;filter:drop-shadow(0 0 7px #4fceff)}
.core-hub{position:absolute;left:38%;top:31%;width:24%;height:38%;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2;border:2px solid #8289ff;border-radius:42px;background:linear-gradient(145deg,#253e79,#0d1634 55%,#101346);box-shadow:inset 0 2px 5px #bcc5ffb0,inset 0 -3px 12px #5133ff80,0 0 30px #3d46ff65,0 20px 45px #03081950}
.core-hub:after{content:"";position:absolute;inset:-2px;border-radius:inherit;pointer-events:none;box-shadow:-3px 4px 9px #20caff48}
.core-hub img{width:34%;height:auto;max-height:110px;margin-bottom:12px;filter:drop-shadow(0 0 12px #9d7eff25)}
.core-hub h3{font-size:clamp(19px,2.4vw,30px);letter-spacing:-.04em;color:#fff;margin:0;white-space:nowrap}.core-hub h3 span{color:#a26bff}.core-hub p{color:#a9b9ef;font-size:clamp(12px,1.4vw,18px);margin:7px 0 0;white-space:nowrap}
.core-node{--node-color:#9249ff;--node-glow:#7331f328;position:absolute;z-index:1;width:32%;min-height:29%;padding:26px 28px;border:2px solid var(--node-color);border-radius:30px;background:linear-gradient(125deg,var(--node-glow),#101831 80%);box-shadow:inset 0 1px 0 #ffffff06,0 12px 32px #00000018;transition:box-shadow .3s,border-color .3s}
.core-node-1{left:5%;top:8%}.core-node-2{right:5%;top:8%;--node-color:#168eff;--node-glow:#148dff22}.core-node-3{left:5%;bottom:8%;--node-color:#08bed6;--node-glow:#08cddd20}.core-node-4{right:5%;bottom:8%;--node-color:#8143ff;--node-glow:#7331f328}
.core-node-heading{display:flex;align-items:center;gap:22px}.core-node-heading h3{font-size:clamp(19px,2vw,26px);color:#f5f7ff;margin:0 0 3px;letter-spacing:-.025em}.core-node-heading>div>span{display:block;font-size:clamp(13px,1.45vw,18px);color:#afc2f4}.core-node-icon{width:66px;height:66px;flex-shrink:0;border:1px solid var(--node-color);background:linear-gradient(140deg,color-mix(in srgb,var(--node-color) 60%,#111730),color-mix(in srgb,var(--node-color) 30%,#111730));border-radius:18px;display:grid;place-items:center;box-shadow:inset 0 1px 5px #ffffff25,0 0 22px var(--node-glow);color:#ecf9ff}.core-node-icon svg{width:36px;height:36px}
.core-node>p{color:#a7bcea;font-size:clamp(14px,1.55vw,18px);line-height:1.5;margin:18px 0 0;max-width:340px}
.core-diagram[data-mode="build"] .core-node-3,.core-diagram[data-mode="automate"] .core-node-2,.core-diagram[data-mode="intelligence"] .core-node-2,.core-diagram[data-mode="scale"] .core-node-4{box-shadow:0 0 24px var(--node-glow),inset 0 0 28px var(--node-glow);border-color:color-mix(in srgb,var(--node-color) 65%,#fff)}
@media(max-width:1050px){.core-node{padding:20px;min-height:29%;border-radius:24px}.core-node-heading{gap:14px}.core-node-icon{width:49px;height:49px;border-radius:14px}.core-node-icon svg{width:28px;height:28px}.core-node>p{font-size:14px;margin-top:13px}.core-hub{border-radius:30px}.core-hub h3{font-size:22px}.core-hub p{font-size:13px}.core-hub img{margin-bottom:8px}}
@media(max-width:760px){.core-diagram.system-canvas{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px;aspect-ratio:auto;padding:28px 20px;overflow:hidden}.core-hub{position:relative;left:auto;top:auto;grid-column:1/-1;grid-row:1;width:240px;height:220px;margin:0 auto 14px;border-radius:32px}.core-hub:before{content:"";position:absolute;top:100%;height:36px;width:2px;background:linear-gradient(#8166ff,#25bde7)}.core-hub img{width:76px}.core-hub h3{font-size:25px}.core-hub p{font-size:15px}.core-node{position:relative;inset:auto;width:auto;min-height:0;padding:20px;border-radius:22px}.core-node-heading{gap:12px}.core-node-heading h3{font-size:20px}.core-node-heading>div>span{font-size:12px}.core-node-icon{width:43px;height:43px}.core-node>p{font-size:14px;line-height:1.6}.core-connections{display:none}.lab-scene .lab-grid{gap:28px}}
@media(max-width:520px){.core-diagram.system-canvas{grid-template-columns:1fr;padding:26px 18px;gap:18px}.core-hub{grid-column:1;width:230px;height:220px}.core-node{padding:22px}.core-node-icon{width:56px;height:56px;border-radius:16px}.core-node-icon svg{width:30px;height:30px}.core-node-heading{gap:17px}.core-node-heading h3{font-size:23px}.core-node-heading>div>span{font-size:14px}.core-node>p{font-size:15px;margin-top:14px}.core-node:not(:last-child):after{content:"";position:absolute;top:100%;left:50%;width:2px;height:20px;background:linear-gradient(var(--node-color),#6485ed);opacity:.65}}
