/* RuGo v077 — LAB SPACE mirror layout + particle field.
   Scope:
   - primary LAB SPACE screen only;
   - mirrored relation against SERVICES grammar;
   - interactive particle field on the left;
   - text stack on the right;
   - shared Projects/Lab branch intentionally unchanged. */

.core-panel--lab{
  --lab-red:var(--launch-accent,#e1261c);
  --lab-ink:var(--launch-ink,#11110f);
  --lab-paper:var(--launch-paper,#f4f1ea);
  --lab-muted:rgba(17,17,15,.64);
  --lab-soft:rgba(17,17,15,.44);
  --lab-line:rgba(17,17,15,.11);
  --lab-line-strong:rgba(17,17,15,.18);
  --lab-title-scale:clamp(38px,calc((100cqh / 8) * .585),74px);
  --lab-title-leading:.90;
  --lab-statement-scale:clamp(13px,calc((100cqh / 8) * .175),18px);
  --lab-copy-measure:min(100%,540px);
}

.lab-space-v077{
  position:absolute;
  inset:8.4vh 8.9vw 8.7vh 8.9vw;
  z-index:18;
  color:var(--lab-ink);
  font-family:var(--launch-font);
  overflow:visible;
  container-type:size;
}

.lab-space-v077__frame{
  position:absolute;
  left:50%;
  top:50%;
  width:min(100cqw,calc(100cqh * 13 / 8));
  height:min(100cqh,calc(100cqw * 8 / 13));
  transform:translate(-50%,-50%);
}

.lab-space-v077__visual{
  position:absolute;
  left:0;
  top:50%;
  width:min(35.5%,420px);
  height:min(86%,760px);
  transform:translateY(-50%);
  margin:0;
  z-index:1;
}

.lab-particle-v077{
  position:relative;
  width:100%;
  height:100%;
  border:1px solid var(--lab-line);
  background:
    linear-gradient(180deg, rgba(255,255,255,.42), rgba(255,255,255,0)),
    rgba(255,255,255,.18);
  overflow:hidden;
  isolation:isolate;
}

.lab-particle-v077::before,
.lab-particle-v077::after{
  content:"";
  position:absolute;
  inset:16px;
  pointer-events:none;
}

.lab-particle-v077::before{
  border:1px solid rgba(17,17,15,.055);
}

.lab-particle-v077::after{
  inset:auto 0 0 0;
  height:18%;
  background:linear-gradient(180deg, rgba(244,241,234,0), rgba(244,241,234,.38));
}

.lab-particle-v077__hud{
  position:absolute;
  left:16px;
  right:16px;
  top:14px;
  z-index:2;
  display:flex;
  justify-content:space-between;
  gap:12px;
  pointer-events:none;
}

.lab-particle-v077__hud span{
  font-size:10px;
  line-height:1;
  letter-spacing:.14em;
  color:rgba(17,17,15,.44);
}

.lab-particle-v077__hud span:first-child{
  color:var(--lab-red);
  font-weight:650;
}

.lab-particle-v077__canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  cursor:crosshair;
}

.lab-space-v077__content{
  position:absolute;
  right:0;
  top:50%;
  width:min(49.5%,590px);
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  gap:0;
  z-index:2;
}

.lab-space-v077__intro{
  margin:0 0 calc((100cqh / 8) * .24);
}

.lab-space-v077__kicker{
  display:block;
  margin:0 0 clamp(7px,.7vh,11px);
  font-size:clamp(10px,.72vw,12px);
  line-height:1;
  font-weight:650;
  letter-spacing:.12em;
  color:var(--lab-red);
}

.lab-space-v077__lead{
  margin:0;
  max-width:48ch;
  font-size:clamp(13px,1.02vw,17px);
  line-height:1.42;
  letter-spacing:-.012em;
  color:var(--lab-muted);
}

.lab-space-v077__lead strong{
  color:var(--lab-ink);
  font-weight:650;
}

.lab-space-v077__territories{
  display:flex;
  flex-direction:column;
  gap:calc((100cqh / 8) * .26);
}

.lab-space-v077__territory{
  margin:0;
  padding:0;
  cursor:default;
}

.lab-space-v077__territory-title{
  display:block;
  margin:0;
  font-size:var(--lab-title-scale)!important;
  font-weight:650;
  line-height:var(--lab-title-leading);
  letter-spacing:-.055em;
  color:var(--lab-ink);
  transition:color 180ms ease;
}

.lab-space-v077__territory:hover .lab-space-v077__territory-title{
  color:var(--lab-red);
}

.lab-space-v077__territory-copy{
  display:block;
  width:var(--lab-copy-measure);
  margin:calc((100cqh / 8) * .07) 0 0 .08em;
  font-size:var(--lab-statement-scale);
  line-height:1.42;
  letter-spacing:-.012em;
  color:var(--lab-muted);
  font-weight:400;
}

.lab-space-v077__territory-copy strong{
  color:var(--lab-red);
  font-weight:650;
}

.lab-space-v077__note{
  margin:calc((100cqh / 8) * .22) 0 0;
  width:min(90%,530px);
  font-size:clamp(10.5px,.78vw,13px);
  line-height:1.42;
  letter-spacing:-.006em;
  color:rgba(17,17,15,.50);
}

@media (max-width:1180px){
  .lab-space-v077{
    inset:9vh 7.4vw 9.2vh;
  }

  .lab-space-v077__visual{
    width:min(34%,360px);
  }

  .lab-space-v077__content{
    width:min(53%,620px);
  }

  .lab-space-v077__lead,
  .lab-space-v077__territory-copy{
    font-size:13px;
  }

  .lab-space-v077__note{
    font-size:10.5px;
  }
}

@media (prefers-reduced-motion:reduce){
  .lab-particle-v077__canvas{
    cursor:default;
  }
}