/* 自動補樣式：js/platform.js（_build/style.py） */
/* ==========================================================================
   body.is-printing
   platform.js 的 webPrint() 在 #print-root 有內容時，會替 body 加上此 class，
   接著呼叫 window.print()，列印結束（afterprint）後移除。
   作用：列印時只輸出 #print-root 的報告內容，隱藏導覽、頂部列、浮層與提示，
   並固定使用淺色紙張色票，避免深色模式下印出深底。
   ========================================================================== */

/* 列印期間（螢幕上短暫存在）：先收起會閃爍或干擾的浮動元素，並停用動畫 */
body.is-printing .l-toast-root,
body.is-printing .c-confetti,
body.is-printing .c-btn--fab {
  display: none !important;
}

body.is-printing *,
body.is-printing *::before,
body.is-printing *::after {
  animation: none !important;
  transition: none !important;
}

@media print {
  /* 紙張一律使用淺色，不跟隨深色模式 */
  html:has(body.is-printing) {
    color-scheme: light;
    background: var(--paper-bg);
  }

  body.is-printing {
    color-scheme: light;
    min-height: 0;
    margin: 0;
    padding: 0;
    overflow: visible;
    background: var(--paper-bg);
    color: var(--paper-text);
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* 隱藏整個 App 外框與所有浮層 */
  body.is-printing #app,
  body.is-printing #tabbar,
  body.is-printing #topbar,
  body.is-printing #lock-root,
  body.is-printing .l-tabbar,
  body.is-printing .l-topbar,
  body.is-printing .l-view,
  body.is-printing .l-toast-root,
  body.is-printing .c-sheet-backdrop,
  body.is-printing .c-sheet,
  body.is-printing .c-dialog,
  body.is-printing .c-demo-banner,
  body.is-printing .c-btn--fab,
  body.is-printing .c-confetti,
  body.is-printing .u-skip {
    display: none !important;
  }

  /* 只顯示報告內容，順著文件流分頁 */
  body.is-printing #print-root {
    display: block !important;
    position: static !important;
    inset: auto;
    width: 100%;
    max-width: none;
    height: auto;
    margin: 0;
    padding: 0;
    overflow: visible;
    background: var(--paper-bg);
    color: var(--paper-text);
    font-size: 11pt;
    line-height: 1.5;
    visibility: visible;
    transform: none;
    filter: none;
  }

  body.is-printing #print-root * {
    visibility: visible;
    box-shadow: none;
  }

  /* 區塊避免被切在頁面中間 */
  body.is-printing #print-root table,
  body.is-printing #print-root figure,
  body.is-printing #print-root svg,
  body.is-printing #print-root img,
  body.is-printing #print-root .c-card {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  body.is-printing #print-root thead {
    display: table-header-group;
  }

  body.is-printing #print-root tr {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  body.is-printing #print-root h1,
  body.is-printing #print-root h2,
  body.is-printing #print-root h3 {
    break-after: avoid;
    page-break-after: avoid;
  }

  /* 紙上的連結不需要底線色彩，維持與內文一致 */
  body.is-printing #print-root a {
    color: inherit;
    text-decoration: none;
  }
}
