
/* V519 - Quote preview matched to approved VIFOOD design */
.v372-preview-page{
  min-height:100vh!important;
  background:#f7f9fb!important;
  padding:0 0 24px!important;
}
.v372-preview-actions{
  position:sticky!important;
  top:0!important;
  z-index:30!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-height:68px!important;
  padding:12px 22px!important;
  border-bottom:1px solid #e5eaf0!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 1px 5px rgba(15,23,42,.035)!important;
  backdrop-filter:blur(10px)!important;
}
.v372-preview-actions>div:first-child{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.v372-preview-actions>div:first-child span{
  margin:0!important;
  color:#0f5132!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
}
.v372-preview-actions>div:first-child strong{
  font-size:15px!important;
  color:#172033!important;
}
.v372-preview-actions>div:last-child{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
}
.v372-preview-actions button{
  min-height:38px!important;
  padding:0 14px!important;
  border-radius:7px!important;
  border:1px solid #dce3e9!important;
  background:#fff!important;
  color:#253047!important;
  font-size:11px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.v372-preview-actions button.print{
  border-color:#169c48!important;
  background:#169c48!important;
  color:#fff!important;
}
.v372-preview-actions .v519-pdf{
  border-color:#9dceb0!important;
  background:#f3fbf6!important;
  color:#0f6b38!important;
}

/* Paper */
.v379-a4-paper{
  width:min(100%,1240px)!important;
  max-width:calc(100vw - 46px)!important;
  margin:18px auto 0!important;
  padding:24px 28px 20px!important;
  border:1px solid #e1e7ec!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 8px 30px rgba(15,23,42,.045)!important;
}
.v379-a4-paper .v372-header{
  display:grid!important;
  grid-template-columns:1.15fr .85fr .75fr!important;
  gap:20px!important;
  padding:0 0 18px!important;
  border-bottom:0!important;
}
.v379-a4-paper .v372-company{
  align-items:flex-start!important;
}
.v379-a4-paper .v372-company img,
.v379-a4-paper .v372-logo-fallback{
  width:116px!important;
  height:62px!important;
  object-fit:contain!important;
}
.v379-a4-paper .v372-company h2{
  display:none!important;
}
.v379-a4-paper .v372-company p{
  font-size:10.5px!important;
  line-height:1.45!important;
}
.v379-a4-paper .v372-title{
  text-align:center!important;
}
.v379-a4-paper .v372-title h1{
  margin:6px 0 4px!important;
  color:#0c5b2d!important;
  font-size:34px!important;
  line-height:1!important;
  letter-spacing:.01em!important;
}
.v379-a4-paper .v372-title>p,
.v379-a4-paper .v372-title .v372-date,
.v379-a4-paper .v372-title small{
  font-size:10px!important;
}
.v379-a4-paper .v372-qr{
  align-items:flex-end!important;
}
.v379-a4-paper .v378-real-qr{
  width:68px!important;
  height:68px!important;
}

/* Customer / notes */
.v379-a4-paper .v372-info{
  grid-template-columns:1.1fr .9fr!important;
  gap:18px!important;
  padding:14px 0 16px!important;
}
.v379-a4-paper .v372-info>div{
  border:0!important;
  background:transparent!important;
  padding:0!important;
}
.v379-a4-paper .v372-info h3{
  margin-bottom:8px!important;
  padding:0!important;
  background:transparent!important;
  color:#0f5132!important;
  font-size:11px!important;
}
.v379-a4-paper .v372-info p{
  margin:3px 0!important;
  font-size:10px!important;
  line-height:1.45!important;
}

/* Table */
.v379-a4-paper .v372-table-wrap{
  padding:0!important;
}
.v379-a4-paper .v372-table{
  border-collapse:collapse!important;
  table-layout:fixed!important;
  width:100%!important;
  font-size:10px!important;
}
.v379-a4-paper .v372-table th{
  background:#eff7f1!important;
  color:#0f5132!important;
  border:1px solid #9daa9f!important;
  padding:8px 6px!important;
  font-size:9.5px!important;
  font-weight:900!important;
}
.v379-a4-paper .v372-table td{
  border:1px solid #aeb8b0!important;
  padding:7px 6px!important;
  background:#fff!important;
}
.v379-a4-paper .v372-table th:nth-child(1),
.v379-a4-paper .v372-table td:nth-child(1){width:6%!important}
.v379-a4-paper .v372-table th:nth-child(2),
.v379-a4-paper .v372-table td:nth-child(2){width:10%!important}
.v379-a4-paper .v372-table th:nth-child(3),
.v379-a4-paper .v372-table td:nth-child(3){width:30%!important}
.v379-a4-paper .v372-table th:nth-child(4),
.v379-a4-paper .v372-table td:nth-child(4){width:8%!important}
.v379-a4-paper .v372-table th:nth-child(5),
.v379-a4-paper .v372-table td:nth-child(5){width:10%!important}
.v379-a4-paper .v372-table th:nth-child(6),
.v379-a4-paper .v372-table td:nth-child(6){width:14%!important}
.v379-a4-paper .v372-table th:nth-child(7),
.v379-a4-paper .v372-table td:nth-child(7){width:7%!important}
.v379-a4-paper .v372-table th:nth-child(8),
.v379-a4-paper .v372-table td:nth-child(8){width:15%!important}

/* Summary: notes left / total right */
.v379-a4-paper .v372-summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 43%!important;
  gap:22px!important;
  align-items:start!important;
  padding:18px 0 16px!important;
}
.v379-a4-paper .v372-thankyou{
  border:0!important;
  background:transparent!important;
  padding:0!important;
}
.v379-a4-paper .v372-thankyou strong{
  color:#0f5132!important;
  font-size:11px!important;
}
.v379-a4-paper .v372-thankyou p{
  font-size:10px!important;
  line-height:1.55!important;
}
.v379-a4-paper .v372-total{
  border:1px solid #9faa9f!important;
}
.v379-a4-paper .v372-total>div{
  border-top:1px solid #aeb8b0!important;
  padding:7px 10px!important;
  font-size:10px!important;
}
.v379-a4-paper .v372-total>div:first-child{border-top:0!important}
.v379-a4-paper .v372-total .grand{
  background:#fff!important;
  color:#0f5132!important;
}
.v379-a4-paper .v372-total .grand b{
  color:#e21c1c!important;
  font-size:13px!important;
}

/* Remove old upper/buyer-seller style footer completely */
.v372-preview-page .v372-footer,
.v379-public-quote-page .v372-footer{
  display:none!important;
}

/* Keep ONLY the approved three-column signature block */
.v372-preview-page .v517-doc-signatures,
.v379-public-quote-page .v517-doc-signatures{
  margin-top:6px!important;
  border:1px solid #9fb2a5!important;
  border-radius:8px!important;
  overflow:visible!important;
  background:#fff!important;
}
.v372-preview-page .v517-doc-signatures>div,
.v379-public-quote-page .v517-doc-signatures>div{
  min-height:220px!important;
  padding:16px 12px 12px!important;
  overflow:visible!important;
}
.v372-preview-page .v517-doc-signatures strong,
.v379-public-quote-page .v517-doc-signatures strong{
  font-size:11px!important;
  color:#0f5b2c!important;
}
.v372-preview-page .v517-doc-signatures small,
.v379-public-quote-page .v517-doc-signatures small{
  margin-top:4px!important;
  font-size:9px!important;
}
.v372-preview-page .v517-sign-space,
.v372-preview-page .v517-blank-sign,
.v379-public-quote-page .v517-sign-space,
.v379-public-quote-page .v517-blank-sign{
  height:140px!important;
}

/* Bigger employee signature */
.v372-preview-page .v517-employee-sign,
.v379-public-quote-page .v517-employee-sign{
  max-width:210px!important;
  max-height:92px!important;
}

/* Bigger company representative signature */
.v372-preview-page .v517-company-sign,
.v379-public-quote-page .v517-company-sign{
  max-width:230px!important;
  max-height:98px!important;
}

/* Much larger, realistic red company stamp */
.v372-preview-page .v517-company-stamp,
.v379-public-quote-page .v517-company-stamp{
  width:154px!important;
  height:154px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-3%,-48%) rotate(-6deg)!important;
  opacity:.97!important;
  filter:saturate(1.18) contrast(1.05)!important;
}
.v372-preview-page .v517-doc-signatures b,
.v379-public-quote-page .v517-doc-signatures b{
  margin-top:-10px!important;
  font-size:10.5px!important;
}

/* Contact/footer */
.v379-a4-paper .v374-contact-strip{
  margin-top:18px!important;
  padding:12px 4px 0!important;
  border-top:1px solid #e1e7e3!important;
  font-size:9px!important;
}
.v379-a4-paper .v374-brand-footer{
  padding:8px 0 0!important;
  color:#0f5132!important;
  font-size:9px!important;
  font-weight:800!important;
}

/* Mobile */
@media(max-width:820px){
  .v372-preview-actions{padding:10px 12px!important;align-items:flex-start!important}
  .v372-preview-actions>div:first-child{display:block!important}
  .v372-preview-actions>div:last-child{justify-content:flex-end!important}
  .v379-a4-paper{
    max-width:calc(100vw - 18px)!important;
    margin:10px auto 0!important;
    padding:16px 12px!important;
  }
  .v379-a4-paper .v372-header{grid-template-columns:1fr!important;text-align:left!important}
  .v379-a4-paper .v372-title{text-align:left!important}
  .v379-a4-paper .v372-qr{display:none!important}
  .v379-a4-paper .v372-info,
  .v379-a4-paper .v372-summary{grid-template-columns:1fr!important}
  .v372-preview-page .v517-doc-signatures,
  .v379-public-quote-page .v517-doc-signatures{grid-template-columns:1fr!important}
}

/* Printing stays A4, but adopts the approved signing section */
@media print{
  .v372-preview-actions{display:none!important}
  .v372-preview-page{background:#fff!important;padding:0!important}
  .v379-a4-paper{
    width:196mm!important;
    max-width:196mm!important;
    margin:0 auto!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .v372-preview-page .v517-doc-signatures,
  .v379-public-quote-page .v517-doc-signatures{
    border:0.25mm solid #829489!important;
    border-radius:1.5mm!important;
    margin-top:3mm!important;
  }
  .v372-preview-page .v517-doc-signatures>div,
  .v379-public-quote-page .v517-doc-signatures>div{
    min-height:36mm!important;
    padding:3mm 2mm!important;
  }
  .v372-preview-page .v517-sign-space,
  .v372-preview-page .v517-blank-sign,
  .v379-public-quote-page .v517-sign-space,
  .v379-public-quote-page .v517-blank-sign{
    height:24mm!important;
  }
  .v372-preview-page .v517-employee-sign,
  .v379-public-quote-page .v517-employee-sign{
    max-width:42mm!important;
    max-height:18mm!important;
  }
  .v372-preview-page .v517-company-sign,
  .v379-public-quote-page .v517-company-sign{
    max-width:44mm!important;
    max-height:19mm!important;
  }
  .v372-preview-page .v517-company-stamp,
  .v379-public-quote-page .v517-company-stamp{
    width:29mm!important;
    height:29mm!important;
    transform:translate(-2%,-48%) rotate(-6deg)!important;
  }
}

/* V520 - company stamp overlaps approximately 1/3 of VIFOOD representative signature */
.v372-preview-page .v517-company-sign-cell .v517-sign-space,
.v379-public-quote-page .v517-company-sign-cell .v517-sign-space{
  position:relative!important;
  overflow:visible!important;
}

/* Representative signature is kept slightly to the right. */
.v372-preview-page .v517-company-sign,
.v379-public-quote-page .v517-company-sign{
  position:relative!important;
  z-index:2!important;
  max-width:235px!important;
  max-height:100px!important;
  transform:translateX(24px)!important;
}

/* Stamp sits on the LEFT side of the representative signature and covers ~1/3 of it. */
.v372-preview-page .v517-company-stamp,
.v379-public-quote-page .v517-company-stamp{
  position:absolute!important;
  z-index:3!important;
  width:150px!important;
  height:150px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-88%,-49%) rotate(-6deg)!important;
  opacity:.97!important;
  object-fit:contain!important;
  filter:saturate(1.18) contrast(1.05)!important;
  pointer-events:none!important;
}

/* Keep the VIFOOD name clear below the signature/stamp. */
.v372-preview-page .v517-company-sign-cell>b,
.v379-public-quote-page .v517-company-sign-cell>b{
  position:relative!important;
  z-index:5!important;
  margin-top:-8px!important;
}

/* A4 print/PDF: same 1/3 overlap using millimeters. */
@media print{
  .v372-preview-page .v517-company-sign,
  .v379-public-quote-page .v517-company-sign{
    max-width:44mm!important;
    max-height:19mm!important;
    transform:translateX(4.5mm)!important;
  }

  .v372-preview-page .v517-company-stamp,
  .v379-public-quote-page .v517-company-stamp{
    width:29mm!important;
    height:29mm!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-88%,-49%) rotate(-6deg)!important;
  }

  .v372-preview-page .v517-company-sign-cell>b,
  .v379-public-quote-page .v517-company-sign-cell>b{
    margin-top:-1.5mm!important;
  }
}

/* Tablet/mobile preview remains readable. */
@media(max-width:820px) and (not print){
  .v372-preview-page .v517-company-sign,
  .v379-public-quote-page .v517-company-sign{
    max-width:210px!important;
    transform:translateX(18px)!important;
  }
  .v372-preview-page .v517-company-stamp,
  .v379-public-quote-page .v517-company-stamp{
    width:132px!important;
    height:132px!important;
    transform:translate(-86%,-49%) rotate(-6deg)!important;
  }
}
