/* print.css - 印刷専用スタイル（横書き専用版） */

@media print {
  /* 印刷時に非表示にする要素 */
  .no-print {
    display: none !important;
  }

  /* ページ設定 */
  @page {
    size: A4;
    margin: 0;
  }

  body {
    margin: 0;
    padding: 0;
    background: white;
  }

  /* メインコンテナを全画面に */
  main {
    margin: 0;
    padding: 0;
  }

  .container {
    max-width: none;
    padding: 0;
    margin: 0;
  }

  /* ツールレイアウトを印刷用に調整 */
  .label-tool-layout {
    display: block;
    margin: 0;
    padding: 0;
  }

  /* プレビューパネルのみ表示 */
  .preview-panel {
    margin: 0;
    padding: 0;
  }

  .preview-header {
    display: none;
  }

  /* ラベルラッパーを全画面に */
  .label-wrapper {
    background: white;
    padding: 0;
    margin: 0;
    min-height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
  }

  /* ラベルを実寸サイズで印刷 */
  .label {
    box-shadow: none;
    border: 3px solid #000000 !important;
    page-break-inside: avoid;
  }

  /* 切り取り線を印刷 */
  .label::before {
    content: '✂️ 切り取り線' !important;
    display: block !important;
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 10pt;
    color: #666666;
    background: white;
    padding: 2px 10px;
    font-family: 'Noto Sans JP', sans-serif;
  }

  .label::after {
    content: '' !important;
    display: block !important;
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    border: 2px dashed #999999 !important;
    pointer-events: none;
  }

  /* 実寸サイズで印刷 */
  .label.naga3 {
    width: 235mm !important;
    height: 120mm !important;
  }

  .label.kaku2 {
    width: 332mm !important;
    height: 240mm !important;
  }

  /* === 長形3号 横書き === */
  .label.naga3.horizontal .label-content {
    writing-mode: horizontal-tb !important;
    padding: 15mm !important;
  }

  .label.naga3.horizontal .zip-area {
    font-size: 11pt !important;
    letter-spacing: 0.2em !important;
    margin-bottom: 8mm !important;
  }

  .label.naga3.horizontal .address-area {
    font-size: 11pt !important;
    line-height: 1.8 !important;
    margin-bottom: 6mm !important;
  }

  .label.naga3.horizontal .company-area {
    font-size: 9pt !important;
    line-height: 1.6 !important;
    margin-bottom: 6mm !important;
    color: #555555 !important;
  }

  .label.naga3.horizontal .name-area {
    font-size: 15pt !important;
    font-weight: 700 !important;
    line-height: 1.8 !important;
    margin-bottom: 8mm !important;
  }

  .label.naga3.horizontal .annotation-area {
    position: absolute !important;
    bottom: 15mm !important;
    right: 15mm !important;
    font-size: 9pt !important;
    border: 2px solid #E53E3E !important;
    color: #E53E3E !important;
    padding: 2mm 4mm !important;
    font-weight: 700 !important;
  }

  /* === 角形2号 横書き === */
  .label.kaku2.horizontal .label-content {
    writing-mode: horizontal-tb !important;
    padding: 20mm !important;
  }

  .label.kaku2.horizontal .zip-area {
    font-size: 14pt !important;
    letter-spacing: 0.3em !important;
    margin-bottom: 10mm !important;
  }

  .label.kaku2.horizontal .address-area {
    font-size: 14pt !important;
    line-height: 2 !important;
    margin-bottom: 8mm !important;
  }

  .label.kaku2.horizontal .company-area {
    font-size: 12pt !important;
    line-height: 1.8 !important;
    margin-bottom: 8mm !important;
    color: #555555 !important;
  }

  .label.kaku2.horizontal .name-area {
    font-size: 20pt !important;
    font-weight: 700 !important;
    line-height: 2 !important;
    margin-bottom: 10mm !important;
  }

  .label.kaku2.horizontal .annotation-area {
    position: absolute !important;
    bottom: 20mm !important;
    right: 20mm !important;
    font-size: 11pt !important;
    border: 2px solid #E53E3E !important;
    color: #E53E3E !important;
    padding: 2.5mm 5mm !important;
    font-weight: 700 !important;
  }

  /* テキストの印刷品質を向上 */
  .label-content,
  .zip-area,
  .address-area,
  .company-area,
  .name-area,
  .annotation-area {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
  }
}