/**
 * Стили прямой печати на термопринтеры и офисные/лазерные принтеры (A4 / рулон)
 */

@media print {
  @page {
    margin: 0 !important;
  }

  /* Скрытие всех элементов панели инструментов, окон и лишних индикаторов */
  html, body {
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    color: #000000 !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .app-header,
  .app-sidebar,
  .canvas-toolbar,
  .zoom-indicator,
  .modal-overlay,
  .toast-container,
  .preview-background-controls,
  .dimensions-badge {
    display: none !important;
  }

  .app-main {
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
  }

  /* Полный сброс всех промежуточных контейнеров холста, динамических margins и трансформаций зума */
  .canvas-workspace,
  .canvas-viewport,
  #canvasViewport,
  .canvas-stage,
  #canvasStage,
  .label-sticker-wrapper,
  #stickerMountPoint {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    transform: none !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    display: block !important;
    position: static !important;
    background: transparent !important;
    overflow: visible !important;
  }

  /* Этикетка строго сверху слева листа (с безопасным отступом 5 мм от края бумаги) */
  .label-sticker {
    position: absolute !important;
    top: 5mm !important;
    left: 5mm !important;
    width: var(--label-width) !important;
    height: var(--label-height) !important;
    max-width: var(--label-width) !important;
    max-height: var(--label-height) !important;
    min-width: var(--label-width) !important;
    min-height: var(--label-height) !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: scale(var(--print-scale, 1.0)) !important;
    transform-origin: 0 0 !important;
    background-color: var(--label-bg-color, #ffffff) !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    box-shadow: none !important;
    page-break-after: avoid !important;
    break-after: avoid !important;
    page-break-inside: avoid !important;
  }

  .label-sticker.has-border {
    border: 0.3mm solid #000000 !important;
  }

  /* Высокая резкость штрих-кодов при печати */
  svg, rect, path {
    shape-rendering: crispEdges !important;
  }
}

