
/* V334 — Sửa trực tiếp Phiếu đặt hàng khi XEM trên mobile.
   Mục tiêu: không bóp/chồng chữ, bảng hàng đúng cột khi có/không VAT,
   chữ đủ lớn để đọc trên điện thoại. Không thay đổi @media print/PDF. */

@media screen and (max-width:640px){

  .invoice-print-screen{
    overflow-x:hidden!important;
  }

  .v146-mobile-print-preview,
  .invoice-print-preview{
    overflow-x:hidden!important;
    padding:10px!important;
  }

  .invoice-print-document,
  .invoice-print--portrait .invoice-print-document,
  .invoice-print--landscape .invoice-print-document{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:0!important;
    transform:none!important;
  }

  .invoice-print-document .inv-page{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    border-width:1px!important;
    outline:0!important;
    box-shadow:0 5px 18px rgba(15,23,42,.10)!important;
  }

  /* Dải thương hiệu */
  .invoice-print-document .inv-brand-strip{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-height:26px!important;
    padding:6px 9px!important;
    font-size:7.2px!important;
    line-height:1.25!important;
    letter-spacing:.07em!important;
    white-space:normal!important;
  }

  /* Header công ty: logo + thông tin; Ký hiệu xuống một hàng riêng.
     Ép lại toàn bộ sizing để loại xung đột giữa CSS mobile cũ. */
  .invoice-print-document .inv-header{
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    align-items:stretch!important;
  }

  .invoice-print-document .inv-header > div{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    padding:10px!important;
    border-top:0!important;
  }

  .invoice-print-document .inv-logo{
    grid-column:1!important;
    grid-row:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    padding:8px 6px!important;
    border-left:0!important;
  }

  .invoice-print-document .inv-logo-image{
    width:70px!important;
    max-width:70px!important;
    height:auto!important;
    max-height:48px!important;
    object-fit:contain!important;
  }

  .invoice-print-document .inv-company{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
    border-left:1px solid var(--inv-rule)!important;
    padding:9px 10px!important;
  }

  .invoice-print-document .inv-company-kicker{
    margin:0 0 3px!important;
    font-size:7px!important;
    line-height:1.25!important;
    letter-spacing:.08em!important;
    white-space:normal!important;
  }

  .invoice-print-document .inv-company-name{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.3!important;
    letter-spacing:.01em!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  .invoice-print-document .inv-company-sub,
  .invoice-print-document .inv-company-bank{
    width:100%!important;
    max-width:100%!important;
    margin-top:3px!important;
    font-size:8.5px!important;
    line-height:1.4!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  .invoice-print-document .inv-mst{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    padding:7px 10px!important;
    border-left:0!important;
    border-top:1px solid var(--inv-rule)!important;
    text-align:left!important;
  }

  .invoice-print-document .inv-mst-box{
    width:auto!important;
    min-width:92px!important;
    padding:4px 8px!important;
  }

  .invoice-print-document .inv-mst-label{
    font-size:7px!important;
  }

  .invoice-print-document .inv-mst-value{
    font-size:12px!important;
    line-height:1.2!important;
  }

  /* Tiêu đề */
  .invoice-print-document .inv-title-block{
    width:100%!important;
    min-width:0!important;
    padding:11px 8px 10px!important;
    overflow:hidden!important;
  }

  .invoice-print-document .inv-title-kicker{
    margin:0 0 4px!important;
    font-size:7px!important;
    line-height:1.2!important;
    letter-spacing:.14em!important;
  }

  .invoice-print-document .inv-title{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    justify-content:center!important;
    align-items:center!important;
    gap:7px!important;
    padding:0!important;
    border:0!important;
    font-size:clamp(18px,5.2vw,23px)!important;
    line-height:1.15!important;
    letter-spacing:.04em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }

  .invoice-print-document .inv-title-accent{
    flex:0 1 18px!important;
    width:18px!important;
    min-width:8px!important;
    max-width:18px!important;
    height:2px!important;
  }

  /* Khách hàng / giao nhận: xếp dọc, không còn chồng text */
  .invoice-print-document .inv-info{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    min-width:0!important;
    font-size:11px!important;
  }

  .invoice-print-document .inv-info-left,
  .invoice-print-document .inv-info-right{
    width:100%!important;
    min-width:0!important;
    padding:11px 12px!important;
    border-left:0!important;
  }

  .invoice-print-document .inv-info-right{
    border-top:1px solid var(--inv-rule)!important;
  }

  .invoice-print-document .inv-info-section-label{
    margin-bottom:8px!important;
    padding-bottom:4px!important;
    font-size:9px!important;
    line-height:1.25!important;
  }

  .invoice-print-document .inv-infoline{
    display:grid!important;
    grid-template-columns:minmax(104px,36%) minmax(0,1fr)!important;
    align-items:start!important;
    gap:8px!important;
    margin:0 0 6px!important;
    font-size:11px!important;
    line-height:1.42!important;
  }

  .invoice-print-document .inv-infoline-k{
    min-width:0!important;
    font-weight:800!important;
    white-space:normal!important;
  }

  .invoice-print-document .inv-infoline-v,
  .invoice-print-document .inv-infoline-v-strong{
    min-width:0!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  /* Caption hàng hóa */
  .invoice-print-document .inv-table-caption{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    padding:10px 11px!important;
    font-size:9px!important;
    line-height:1.3!important;
  }

  .invoice-print-document .inv-table-caption span:last-child{
    font-size:8px!important;
    text-align:right!important;
  }

  /* Card sản phẩm */
  .invoice-print-document .inv-table,
  .invoice-print-document .inv-table tbody,
  .invoice-print-document .inv-table tr,
  .invoice-print-document .inv-table td{
    width:100%!important;
  }

  .invoice-print-document .inv-table{
    display:block!important;
    table-layout:auto!important;
  }

  .invoice-print-document .inv-table thead{
    clip:rect(0,0,0,0)!important;
    width:1px!important;
    height:1px!important;
    position:absolute!important;
    overflow:hidden!important;
  }

  .invoice-print-document .inv-table tbody{
    display:grid!important;
    gap:10px!important;
    padding:10px!important;
    background:#f4f7f6!important;
  }

  .invoice-print-document .inv-table tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row){
    display:block!important;
    width:100%!important;
    overflow:hidden!important;
    border:1px solid var(--inv-rule)!important;
    border-radius:8px!important;
    background:#fff!important;
  }

  .invoice-print-document .inv-table tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td{
    display:grid!important;
    grid-template-columns:minmax(92px,34%) minmax(0,1fr)!important;
    align-items:start!important;
    gap:10px!important;
    min-height:42px!important;
    padding:10px 11px!important;
    border:0!important;
    border-bottom:1px solid #e4ebea!important;
    background:#fff!important;
    color:var(--inv-ink)!important;
    text-align:left!important;
    font-size:12px!important;
    line-height:1.4!important;
    overflow-wrap:anywhere!important;
  }

  .invoice-print-document .inv-table tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td::before{
    color:var(--inv-ink-soft)!important;
    font-size:9px!important;
    line-height:1.3!important;
    letter-spacing:.055em!important;
    font-weight:900!important;
  }

  .invoice-print-document .inv-table tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(2){
    font-size:13px!important;
    font-weight:750!important;
  }

  /* Có VAT: 1 STT,2 tên,3 ĐVT,4 SL,5 VAT,6 giá bán,7 thành tiền,8/9 nội bộ */
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(1)::before{content:"STT"!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(2)::before{content:"TÊN HÀNG"!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(3)::before{content:"ĐƠN VỊ"!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(4)::before{content:"SỐ LƯỢNG"!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(5)::before{content:"VAT"!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(6)::before{content:"GIÁ BÁN"!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(7)::before{content:"THÀNH TIỀN"!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(8),
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(9){display:none!important}
  .invoice-print-document .inv-table-has-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(7){border-bottom:0!important;font-weight:850!important}

  /* Không VAT: tuyệt đối không để giá bán bị gắn nhãn VAT */
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(1)::before{content:"STT"!important}
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(2)::before{content:"TÊN HÀNG"!important}
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(3)::before{content:"ĐƠN VỊ"!important}
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(4)::before{content:"SỐ LƯỢNG"!important}
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(5)::before{content:"GIÁ BÁN"!important}
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(6)::before{content:"THÀNH TIỀN"!important}
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(7),
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(8){display:none!important}
  .invoice-print-document .inv-table-no-vat tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td:nth-child(6){border-bottom:0!important;font-weight:850!important}

  /* Tổng tiền */
  .invoice-print-document .inv-sum-row,
  .invoice-print-document .inv-vat-row,
  .invoice-print-document .inv-total-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    padding:11px 12px!important;
    border-radius:8px!important;
    font-size:12px!important;
  }

  .invoice-print-document .inv-total-row{
    border:1.5px solid var(--inv-amber)!important;
    font-size:13px!important;
  }

  .invoice-print-document .inv-sum-row td,
  .invoice-print-document .inv-vat-row td,
  .invoice-print-document .inv-total-row td{
    display:block!important;
    width:auto!important;
    padding:0!important;
    border:0!important;
  }

  .invoice-print-document .inv-sum-row td:nth-child(n+3),
  .invoice-print-document .inv-vat-row td:nth-child(n+3),
  .invoice-print-document .inv-total-row td:nth-child(n+3){
    display:none!important;
  }

  .invoice-print-document .inv-sum-row td:nth-child(2),
  .invoice-print-document .inv-vat-row td:nth-child(2),
  .invoice-print-document .inv-total-row td:nth-child(2){
    text-align:right!important;
    white-space:nowrap!important;
    font-weight:850!important;
  }

  .invoice-print-document .inv-words{
    padding:11px 12px!important;
    font-size:11.5px!important;
    line-height:1.5!important;
  }

  /* QR: trên điện thoại hẹp chuyển dọc, QR đủ lớn quét dễ */
  .invoice-print-document .inv-payment-qr{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:10px!important;
    width:auto!important;
    margin:10px!important;
    padding:12px!important;
    border-radius:8px!important;
  }

  .invoice-print-document .inv-payment-qr-visual{
    width:100%!important;
    justify-items:center!important;
  }

  .invoice-print-document .inv-payment-qr-image,
  .invoice-print-document .inv-payment-qr-fallback{
    width:148px!important;
    height:148px!important;
    min-height:148px!important;
  }

  .invoice-print-document .inv-payment-qr-content{
    width:100%!important;
    min-width:0!important;
    font-size:11px!important;
    line-height:1.5!important;
    text-align:left!important;
  }

  .invoice-print-document .inv-payment-qr-title{
    font-size:12px!important;
    text-align:center!important;
  }

  .invoice-print-document .inv-payment-qr-amount{
    margin:2px 0 7px!important;
    font-size:20px!important;
    line-height:1.15!important;
    text-align:center!important;
  }

  .invoice-print-document .inv-payment-qr-line,
  .invoice-print-document .inv-payment-qr-note{
    margin:3px 0!important;
    overflow-wrap:anywhere!important;
  }

  .invoice-print-document .inv-payment-qr-help{
    font-size:9.5px!important;
    line-height:1.45!important;
  }

  .invoice-print-document .inv-payment-qr-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    gap:6px!important;
  }

  .invoice-print-document .inv-payment-qr-action{
    width:100%!important;
    min-width:0!important;
    min-height:34px!important;
    font-size:9px!important;
  }

  .invoice-print-document .inv-req{
    padding:10px 12px!important;
    font-size:11px!important;
  }

  .invoice-print-document .inv-note{
    padding:11px 12px!important;
    font-size:10px!important;
    line-height:1.55!important;
  }

  .invoice-print-document .inv-sign{
    gap:10px!important;
    margin-top:14px!important;
    padding:0 12px 14px!important;
  }
}

/* Điện thoại rất hẹp */
@media screen and (max-width:380px){
  .invoice-print-document .inv-header{
    grid-template-columns:72px minmax(0,1fr)!important;
  }
  .invoice-print-document .inv-logo-image{
    width:62px!important;
    max-width:62px!important;
  }
  .invoice-print-document .inv-company-name{
    font-size:10.5px!important;
  }
  .invoice-print-document .inv-company-sub{
    font-size:7.8px!important;
  }
  .invoice-print-document .inv-infoline{
    grid-template-columns:96px minmax(0,1fr)!important;
    gap:7px!important;
    font-size:10.5px!important;
  }
  .invoice-print-document .inv-table tbody > tr:not(.inv-sum-row):not(.inv-vat-row):not(.inv-total-row) td{
    grid-template-columns:86px minmax(0,1fr)!important;
    padding:9px 10px!important;
    font-size:11.5px!important;
  }
}

/* Quan trọng: bản in/PDF vẫn dùng CSS A4 hiện có */
@media print{
  .inv-table-has-vat,
  .inv-table-no-vat{
    /* Không đổi layout in */
  }
}
