/* GlasERP – Zeichenfenster im Modul Digitaldruck (Fabian 8.11.2026: «mache hier wie ein zeichnungsprogramm damit das bild perfekt positionier werden kann»).
   Schwarz auf Weiss; Druckfläche orange wie auf dem Papier, Bohrungen und Randfreistellung rot. */
.dl-fenster { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.dl-werkzeuge { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.dl-trenner { flex: 1 1 8px; }
.dl-buehne { position: relative; min-width: 0; border: 1px solid #c9ccd1; border-radius: 6px; background: #fafafa; }
.dl-blatt { display: block; width: 100%; height: clamp(320px, 62vh, 720px); touch-action: none; user-select: none; cursor: grab; outline: none; }
.dl-blatt:focus-visible { box-shadow: inset 0 0 0 2px #111; }
.dl-blatt:active { cursor: grabbing; }
.dl-glas { fill: #f1f3f5; stroke: #111; }
.dl-druck { fill: rgba(194, 65, 12, 0.08); stroke: #c00; }
.dl-bild-blass { opacity: 0.22; pointer-events: none; }
.dl-bild { pointer-events: none; }
.dl-form { fill: #fff; stroke: #c00; pointer-events: none; }
.dl-teil { fill: rgba(194, 65, 12, 0.10); stroke: #c2410c; cursor: move; }
.dl-rahmen { fill: transparent; stroke: #111; cursor: move; pointer-events: all; }
.dl-gewaehlt { stroke: #111; }
.dl-teil.dl-gewaehlt { stroke: #c2410c; stroke-dasharray: none; }
.dl-griff { fill: #fff; stroke: #111; cursor: nwse-resize; }
.dl-griff[data-griff$=":ur"], .dl-griff[data-griff$=":ol"] { cursor: nesw-resize; }
.dl-fuehrung { stroke: #0a66c2; pointer-events: none; }
.dl-null { fill: none; stroke: #111; }
.dl-text { fill: #111; font-family: inherit; font-weight: 600; pointer-events: none; }
.dl-felder { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: flex-start; }
.dl-gruppe { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 0; padding: 8px 10px 10px; border: 1px solid #e3e5e8; border-radius: 6px; }
.dl-gruppe legend { padding: 0 4px; font-size: 12px; font-weight: 700; }
.dl-gruppe[hidden] { display: none; }
.dl-feld { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; }
.dl-feld input { width: 74px; min-height: 32px; padding: 3px 6px; text-align: right; font-variant-numeric: tabular-nums; }
.dl-feld input[aria-invalid="true"] { border-color: #b91c1c; outline: 1px solid #b91c1c; }
.dl-feld small { color: #5f646b; }
.dl-haken { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; }
.dl-umfang { flex-direction: column; align-items: flex-start; }
.dl-hinweis { display: block; max-width: 280px; color: #5f646b; font-size: 12px; }
.dl-fuss { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.dl-status { margin: 0; color: #5f646b; font-size: 12px; }
.dl-knoepfe { display: flex; flex-wrap: wrap; gap: 6px; }
@media (pointer: coarse) {
  .dl-feld input { min-height: 44px; }
  .dl-werkzeuge button, .dl-knoepfe button { min-height: 44px; }
}
@media (max-width: 700px) {
  .dl-blatt { height: 56vh; }
  .dl-felder { flex-direction: column; }
}
