/* Atölye nesne tutamaçları (js/atolye-handles.js): seçili nesnenin çevresinde beyaz kareler, döndürme oku, canlı ölçü etiketi. */
.hd-layer { position: absolute; inset: 0; z-index: 6; pointer-events: none; overflow: hidden; display: none; }
.hd-layer.hd-on { display: block; }
.hd { position: absolute; left: 0; top: 0; pointer-events: auto; border: 2px solid #1d4ed8; background: #fff; padding: 0; margin: 0; box-shadow: 0 1px 4px rgba(0, 0, 0, .35); touch-action: none; }
.hd[hidden] { display: none; }
.hd-corner, .hd-edge, .hd-top { width: 12px; height: 12px; border-radius: 2px; }
.hd-edge { width: 10px; height: 10px; border-color: #475569; }
.hd-top { border-color: #15803d; }
.hd-corner { cursor: nwse-resize; }
.hd-edge { cursor: move; cursor: ew-resize; }
.hd-top { cursor: ns-resize; }
.hd-corner:hover, .hd-edge:hover, .hd-top:hover, .hd-active { background: #fde047; transform-origin: center; }
.hd-rot { width: 28px; height: 28px; border-radius: 50%; border-color: #1d4ed8; color: #1d4ed8; display: flex; align-items: center; justify-content: center; cursor: grab; }
.hd-rot:hover, .hd-rot.hd-active { background: #dbeafe; }
.hd-layer.hd-dragging .hd:not(.hd-active) { opacity: .35; pointer-events: none; }
.hd-label { position: absolute; left: 0; top: 0; pointer-events: none; white-space: nowrap; font: 600 12px/1 system-ui, sans-serif; color: #fff; background: #0f172a; border: 1px solid #fde047; border-radius: 6px; padding: 5px 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, .4); }
.hd-label[hidden] { display: none; }
@media (pointer: coarse) {
  .hd-corner, .hd-top { width: 20px; height: 20px; }
  .hd-edge { width: 18px; height: 18px; }
  .hd-rot { width: 36px; height: 36px; }
}
