/* topology3d のラベル（CSS2D）とカーソル。色は devteam-theme.css のトークンを使う */
.lbl3d { color: #e2ecff; font-size: 11px; line-height: 1.25; text-align: center; pointer-events: none; padding: 2px 7px; border-radius: 6px;
  background: rgba(5, 12, 26, 0.62); border: 1px solid rgba(120, 180, 255, 0.22); backdrop-filter: blur(2px);
  text-shadow: 0 0 4px #000; transition: opacity 0.25s; max-width: 150px; white-space: normal; }
.lbl3d.stack { border-color: rgba(255, 138, 61, 0.45); }
.lbl3d.edge { font-size: 10px; color: #a5f3fc; background: rgba(4, 8, 20, 0.75); }
.lbl3d.hide { opacity: 0; }

.dt-topo[data-zone="pan"] canvas { cursor: grab; }
.dt-topo[data-zone="node"] canvas { cursor: pointer; }
.dt-topo[data-drag="pan"] canvas { cursor: grabbing; }
.dt-topo[data-zone="rotate"] canvas, .dt-topo[data-drag="rotate"] canvas {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 14a8 8 0 1 1-2.4-5.7' stroke='%23040814' stroke-width='5'/%3E%3Cpath d='M20 3v6h-6' stroke='%23040814' stroke-width='5'/%3E%3Cpath d='M22 14a8 8 0 1 1-2.4-5.7' stroke='%2322d3ee' stroke-width='2.4'/%3E%3Cpath d='M20 3v6h-6' stroke='%2322d3ee' stroke-width='2.4'/%3E%3C/g%3E%3C/svg%3E") 14 14, alias; }
