.patent-panel.modular-lab-host{grid-template-columns:minmax(0,1fr);gap:8px}.modular-lab{width:100%;max-width:100%;min-width:0;color:inherit;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",-apple-system,BlinkMacSystemFont,Arial,sans-serif}.modular-lab *{box-sizing:border-box}.modular-canvas{position:relative;width:100%;overflow:hidden;background:transparent}.modular-board{position:relative;transform-origin:top left;overflow:hidden;isolation:isolate;background:transparent}.modular-ground-shadow{position:absolute;width:330px;height:30px;border-radius:50%;background:#071c122e;filter:blur(16px);pointer-events:none;z-index:0}.modular-piece{position:absolute;user-select:none;touch-action:none;cursor:grab;outline:none;border:0;background:transparent;padding:0;filter:drop-shadow(5px 10px 7px #071c1226)}.modular-piece>svg{display:block;overflow:visible;pointer-events:none;background:transparent;transform-origin:center;transition:transform .24s cubic-bezier(.2,.7,.2,1)}.modular-piece::after{content:"↻";position:absolute;right:-11px;top:-11px;display:grid;place-items:center;width:27px;height:27px;border:1px solid rgba(237,242,232,.55);border-radius:50%;background:#163b39;color:#edf2e8;font-size:15px;line-height:1;opacity:0;transform:scale(.84);transition:opacity .18s ease,transform .18s ease;pointer-events:none;box-shadow:0 5px 16px rgba(3,20,18,.2)}.modular-piece:hover::after,.modular-piece.is-selected::after,.modular-piece:focus-visible::after{opacity:1;transform:scale(1)}.modular-piece.is-dragging{cursor:grabbing;filter:drop-shadow(7px 15px 9px #071c1233)}.modular-piece.is-dragging::after{opacity:0}.modular-piece:focus-visible{outline:1px dashed #d1d9bf;outline-offset:5px;border-radius:3px}.modular-support-source{position:absolute;right:20px;bottom:18px;display:flex;flex-direction:column;align-items:center;gap:8px;user-select:none;touch-action:none;cursor:grab;background:transparent;border:0;padding:0;opacity:.75}.modular-support-source:hover,.modular-support-source:focus-visible{opacity:1}.modular-support-source:focus-visible{outline:1px dashed #d1d9bf;outline-offset:6px;border-radius:2px}.modular-support-source[aria-disabled=true]{opacity:.35;cursor:default}.modular-support-source.is-dragging{cursor:grabbing}.modular-support-art{display:block;width:90px;height:69px;filter:drop-shadow(3px 6px 5px #071c1226);background:transparent}.modular-support-art svg{display:block;width:100%;height:100%;pointer-events:none;background:transparent}.modular-support-label{font-size:9px;line-height:1.5;letter-spacing:.04em;color:#c1cdb2}.patent-panel .modular-hint{font-size:10px;line-height:1.65;color:#bdcbb0;text-align:center;margin:0;padding:4px 10px 0}.modular-announcement{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.modular-copy-ghost{position:fixed;z-index:9999;pointer-events:none;transform:translate(-50%,-55%);width:110px;height:84px;background:transparent;border:0;filter:drop-shadow(5px 10px 7px #071c1230)}.modular-copy-ghost svg{display:block;width:100%;height:100%;background:transparent}@media(max-width:700px){.patent-panel.modular-lab-host{padding:24px 18px;gap:8px}.modular-support-source{right:11px;bottom:17px;gap:6px}.modular-support-art{width:70px;height:54px}.modular-support-label{font-size:8px}.patent-panel .modular-hint{font-size:9px;line-height:1.7;padding:5px 0 0}.modular-piece::after{opacity:.85;transform:scale(.92)}}@media(prefers-reduced-motion:reduce){.modular-lab *{transition:none!important;animation:none!important}}@media print{.modular-support-source,.modular-hint,.modular-announcement{display:none!important}.modular-canvas{break-inside:avoid}}
.modular-piece[data-modular-id^="frame"]::before{content:"";position:absolute;left:-30%;right:-30%;bottom:-9px;height:24px;border-radius:50%;background:#071c1230;filter:blur(14px);pointer-events:none;z-index:-1}

/* Product-page presentation */
.patent-panel.modular-lab-host.product-modular-experience{
  position:relative;
  display:grid;
  grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);
  gap:clamp(24px,4vw,72px);
  align-items:center;
  margin:0 0 72px;
  padding:clamp(32px,4vw,64px);
  overflow:hidden;
  border:1px solid rgba(16,43,45,.18);
  background:#102f2f;
  color:#edf2e8;
}
.product-modular-experience::before{
  content:"";
  position:absolute;
  inset:auto -12% -48% 30%;
  height:70%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(151,179,154,.18),rgba(151,179,154,0) 68%);
  pointer-events:none;
}
.product-modular-experience-head{
  position:relative;
  z-index:2;
  align-self:start;
  padding-top:12px;
}
.product-modular-experience-head .kicker{
  margin:0 0 22px;
  color:#c7d4b9;
}
.product-modular-experience-head h3{
  max-width:560px;
  margin:0;
  font-family:Georgia,"Songti SC",serif;
  font-size:clamp(30px,3.2vw,52px);
  font-weight:400;
  line-height:1.24;
  letter-spacing:-.025em;
}
.product-modular-experience-head p:last-child{
  max-width:480px;
  margin:24px 0 0;
  color:rgba(237,242,232,.66);
  font-size:12px;
  line-height:1.9;
}
.product-modular-experience .modular-lab{
  position:relative;
  z-index:2;
  min-width:0;
}
.product-modular-experience .modular-canvas{
  border:1px solid rgba(237,242,232,.16);
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
}
.product-modular-experience .modular-hint{
  padding-top:13px;
  color:#c7d4b9;
  font-size:11px;
  letter-spacing:.04em;
}
.product-modular-experience .modular-support-label{color:#c7d4b9}
.modular-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.modular-control{appearance:none;border:1px solid rgba(237,242,232,.28);border-radius:3px;background:transparent;padding:9px 13px;color:#c7d4b9;font-family:inherit;font-size:12px;font-weight:500;line-height:1.2;cursor:pointer;transition:background .18s,color .18s}
.modular-control[aria-pressed=true]{background:#d2deca;color:#163b39;border-color:#d2deca}
.modular-control:hover{border-color:#edf2e8;color:#fff}
.modular-control[aria-pressed=true]:hover{color:#163b39}
.modular-control:focus-visible{outline:2px solid #d2deca;outline-offset:3px}
.modular-reset{margin-left:auto}
/* Hit-test only the painted, clipped equipment, never the transparent SVG box.
   A placed module can also sit above the spare-support tray without the tray
   stealing the drag. Empty canvas areas still pass through to the tray. */
.modular-board{pointer-events:none;z-index:1}
.modular-piece{pointer-events:none}
.modular-piece>svg>image,.modular-piece>svg>.module-closure{pointer-events:visiblePainted}
.modular-support-source{z-index:0}

@media(max-width:900px){
  .patent-panel.modular-lab-host.product-modular-experience{
    grid-template-columns:minmax(0,1fr);
    gap:24px;
    margin-bottom:48px;
    padding:32px 24px 28px;
  }
  .product-modular-experience-head{padding-top:0}
  .product-modular-experience-head p:last-child{margin-top:16px}
}
@media(max-width:560px){
  .product-modular-experience{padding:26px 16px 22px}
  .product-modular-experience-head h3{font-size:clamp(27px,8vw,38px)}
}
