/* DaNet 5.231 — exact Work scene image, scale-only stage. */
.spacePlan .roomZone.zone-stage,
.spacePlan .roomZone.zone-speaker{
  background:transparent!important;background-image:none!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;overflow:visible!important;
  color:transparent!important;padding:0!important;opacity:1!important;
  min-width:0!important;min-height:0!important;
}
.spacePlan .roomZone.zone-stage .hallStageVisual5224,
.spacePlan .roomZone.zone-speaker .hallSpeakerVisual5224{
  position:absolute;left:50%;top:50%;display:block;max-width:none;
  transform-origin:center;pointer-events:none;user-select:none;overflow:visible;
  filter:drop-shadow(0 1.5px 2px #1c110a70);
}
.spacePlan .roomZone.zone-stage .hallStageVisual5224{object-fit:contain}
.spacePlan .roomZone.zone-stage .stageTone-light{filter:brightness(1.25) saturate(.76) drop-shadow(0 1.5px 2px #1c110a70)}
.spacePlan .roomZone.zone-stage .stageTone-dark{filter:brightness(.79) saturate(.85) drop-shadow(0 1.5px 2px #1c110a70)}
.spacePlan .roomZone.zone-stage{z-index:2!important}
.spacePlan .roomZone.zone-speaker{z-index:3!important}
#floorEditor .roomZone.zone-stage.zoneSelected,
#floorEditor .roomZone.zone-speaker.zoneSelected{z-index:7!important}
#floorEditor .roomZone.zone-stage>.zoneResize,
#floorEditor .roomZone.zone-speaker>.zoneResize{display:none!important}
#floorEditor .objectTransform5224{
  position:absolute;z-index:30;pointer-events:none;box-sizing:border-box;
  outline:2px solid #2563eb;outline-offset:3px;border-radius:3px;
}
#floorEditor .objectTransform5224 button{
  position:absolute;display:grid;place-items:center;width:27px;height:27px;min-width:27px;
  padding:0;border:2px solid #fff;border-radius:50%;background:#2563eb;color:#fff;
  box-shadow:0 0 0 1px #174db4,0 2px 6px #13274866;touch-action:none;
  pointer-events:auto;cursor:grab;font-size:16px;font-weight:850;line-height:1;
}
#floorEditor .objectTransform5224 button:active{cursor:grabbing}
#floorEditor .objectRotate5224{left:50%;top:-44px;transform:translateX(-50%)}
#floorEditor .objectScale5224{right:-14px;bottom:-14px}
#floorEditor .objectRotateStem5224{position:absolute;left:50%;top:-19px;height:19px;border-left:2px solid #2563eb}
@media(pointer:coarse){
 #floorEditor .objectTransform5224 button{width:32px;height:32px;min-width:32px}
 #floorEditor .objectRotate5224{top:-48px}
 #floorEditor .objectScale5224{right:-16px;bottom:-16px}
}
.stageSettings5224{margin-top:10px;padding:11px;border:1px solid #d7e0eb;border-radius:12px;background:#f8fafc}
.stageSettings5224 label{display:block;margin-top:8px}
.stageSettings5224 select,.stageSettings5224 input[type=number]{width:100%;margin-top:4px}
.stageSettings5224 .stageMusic5224{display:flex;align-items:center;gap:8px}
.stageSettings5224 .stageMusic5224 input{width:auto;margin:0}

/* 5.224: keep photographic stage and detailed acoustic objects fully opaque. */
.spacePlan .roomZone.zone-stage .hallStageVisual5224,
.spacePlan .roomZone.zone-speaker .hallSpeakerVisual5224{opacity:1!important}
.spacePlan .roomZone.zone-speaker .hallSpeakerVisual5224{shape-rendering:geometricPrecision}

/* 5.231: stage uses the exact approved Work image. */
.spacePlan .roomZone.zone-stage .hallStageWork5230{opacity:1!important;filter:drop-shadow(0 1.5px 2px #1c110a70)!important;object-fit:contain!important}
