﻿
.offscreen {
    position: fixed;
    left: -10000px;
    top: 0;
    z-index: -100;
}

#ping-print-container {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    all: initial;
    font-family: "Microsoft JhengHei", "Heiti TC", "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
}

    #ping-print-container * {
        box-sizing: border-box;
        font-family: inherit;
    }

    #ping-print-container table,
    #ping-print-container tr,
    #ping-print-container td,
    #ping-print-container th,
    #ping-print-container div,
    #ping-print-container p,
    #ping-print-container span,
    #ping-print-container img {
        margin: 0;
        padding: 0;
        border: none;
        background: transparent;
        font-weight: normal;
        float: none; /* 防止外部 float 影響 */
    }

/* ================= 预览与打印容器 ================= */
#ping-print-container {
    width: 200mm;
}

    /* 每一页的具体样式 */
    #ping-print-container .pdf-page {
        width: 200mm;
        background: white;
        position: relative;
        display: flex;
        flex-direction: column;
        page-break-after: always;
        break-after: page;
        overflow: hidden;
    }

        #ping-print-container .pdf-page:last-child {
            page-break-after: avoid !important;
            break-after: avoid !important;
            margin-bottom: 0 !important;
        }

    /* ================= 头部样式 ================= */
    #ping-print-container header {
        position: relative;
        height: 100px;
        text-align: center;
    }

    #ping-print-container .logo-placeholder {
        position: absolute;
        left: 0;
        top: 10px;
    }

        #ping-print-container .logo-placeholder img {
            height: 70px;
        }

    #ping-print-container .logo-hw {
        font-family: Arial, sans-serif;
        font-weight: bold;
        font-size: 24px;
        color: #cc0000;
        line-height: 1;
    }

        #ping-print-container .logo-hw span {
            color: #006633;
        }

    #ping-print-container .logo-arc {
        width: 50px;
        height: 20px;
        border-bottom: 4px solid #006633;
        border-radius: 50%;
        margin-top: -10px;
        transform: skewX(-20deg);
    }

    #ping-print-container .company-name-en {
        font-size: 20px;
        font-family: "Times New Roman", serif;
        font-weight: bold;
    }

    #ping-print-container .company-name-cn {
        font-size: 18px;
        font-weight: bold;
    }

    #ping-print-container .company-info {
        font-size: 11px;
        margin-bottom: 12px;
    }

    #ping-print-container .contact-info {
        font-size: 11px;
        color: black;
    }

    #ping-print-container .statement-title {
        text-align: center;
        height: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

        #ping-print-container .statement-title h2 {
            font-size: 18px;
            font-weight: normal;
            letter-spacing: 2px;
            margin: 0;
        }

    #ping-print-container .statement-month {
        font-size: 13px;
    }

    #ping-print-container .meta-grid {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        height: 65px;
        margin-top: -25px;
    }

    #ping-print-container .meta-left {
        padding-left: 20px;
    }

    #ping-print-container .meta-right {
        padding-right: 73px;
    }

    #ping-print-container .info-row {
        margin-bottom: 2px;
        display: flex;
        font-size: 13px;
        line-height: 1.6;
    }

    #ping-print-container .label {
        width: 50px;
        display: inline-block;
    }

    /* ================= 表格样式 ================= */
    #ping-print-container .table-wrapper {
        flex-grow: 1;
        position: relative;
    }

    #ping-print-container table {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
    }

    #ping-print-container thead tr {
        border-top: 1px solid #000;
        border-bottom: 1px solid #000;
        height: 30px;
    }

        #ping-print-container thead tr th:first-child {
            border-left: 1px solid #000;
        }

        #ping-print-container thead tr th:last-child {
            border-right: 1px solid #000;
        }

    #ping-print-container th {
        font-weight: normal;
        text-align: left;
        font-size: 13px;
    }

    #ping-print-container .data-tr {
        height: 30px;
    }

    #ping-print-container .total-tr {
        height: 20px;
    }

        #ping-print-container .total-tr td {
            border-top: 1px solid #000;
        }

            #ping-print-container .total-tr td:first-child,
            #ping-print-container .total-tr td:last-child {
                border-top: none;
            }

    #ping-print-container td {
        vertical-align: middle;
        font-size: 13px;
        padding-right: 20px;
        word-break: break-all;
    }

    #ping-print-container .col-emtry1 {
        width: 20px;
    }

    #ping-print-container .col-code {
        width: 10%;
    }

    #ping-print-container .col-desc {
        width: calc(38% - 20px);
    }

    #ping-print-container .col-dn {
        width: 15%;
    }

    #ping-print-container .col-date {
        width: 13%;
    }

    #ping-print-container .col-qty {
        width: 7%;
        text-align: right;
    }

    #ping-print-container .col-emtry2 {
        width: 17%;
    }

    #ping-print-container .qty-cell {
        text-align: right;
        padding-right: 5px;
    }

    #ping-print-container .total-label {
        padding-right: 0;
    }

    #ping-print-container .total-label-box {
        display: inline-block;
        float: right;
        text-align: right;
        font-weight: bold;
        height: 30px;
        line-height: 30px;
        border: 1px solid #000;
        padding-right: 0;
    }

        #ping-print-container .total-label-box:first-child {
            border-left: none;
            padding-left: 40px;
            padding-right: 5px;
        }

        #ping-print-container .total-label-box:last-child {
            border-right: none;
            padding-left: 5px;
        }

    #ping-print-container .total-box {
        height: 30px;
        line-height: 30px;
        font-weight: bold;
        display: inline-block;
        min-width: 30px;
        text-align: right;
        border: 1px solid #000;
        border-left: none;
    }

    /* ================= 底部总结块样式 ================= */
    #ping-print-container .summary-wrapper {
        padding-top: 15px;
        width: 100%;
    }

    #ping-print-container .summary-box {
        border: 1px solid #000;
        padding: 10px 15px;
        display: flex;
        justify-content: space-between;
        font-size: 12px;
        line-height: 1.8;
    }

    #ping-print-container .summary-col {
        display: flex;
        flex-direction: column;
    }

    #ping-print-container .summary-label {
        display: inline-block;
        min-width: 90px;
    }

    #ping-print-container .summary-val {
        font-weight: bold;
        font-size: 14px;
        margin-left: 5px;
    }

    #ping-print-container .money-val {
        font-weight: bold;
        font-size: 16px;
        margin-left: 5px;
    }

    #ping-print-container .fts18 {
        font-size: 18px;
    }

    #ping-print-container .disclaimer-text {
        margin-top: 8px;
        font-size: 11px;
        line-height: 1.4;
        text-align: justify;
    }
