.app-shell{max-width:none!important;width:100%!important;margin:0!important;padding:18px 20px!important}
.panel{width:100%!important}
.table-wrap{width:100%!important}

.table-wrap.service-table-v2-ready>table:not(.service-jobs-v2){display:none!important}
.table-wrap.service-table-v2-ready>.service-jobs-v2{display:table!important;width:max-content!important;min-width:100%!important;table-layout:auto!important;border-collapse:collapse!important;font-size:10.5px!important}
.service-jobs-v2 th,.service-jobs-v2 td{white-space:nowrap!important;vertical-align:middle!important;padding:7px 7px!important;border-bottom:1px solid #2b333a!important}
.service-jobs-v2 th{overflow:visible!important;text-overflow:clip!important;font-weight:700!important;font-size:9px!important}
.service-jobs-v2 td[data-col="job-id"],.service-jobs-v2 th[data-col="job-id"]{width:54px!important;min-width:54px!important;max-width:62px!important;text-align:center!important}
.service-jobs-v2 td[data-col="date"],.service-jobs-v2 th[data-col="date"]{min-width:84px!important}
.service-jobs-v2 td[data-col="customer"],.service-jobs-v2 th[data-col="customer"],
.service-jobs-v2 td[data-col="site"],.service-jobs-v2 th[data-col="site"],
.service-jobs-v2 td[data-col="product"],.service-jobs-v2 th[data-col="product"],
.service-jobs-v2 td[data-col="work-type"],.service-jobs-v2 th[data-col="work-type"],
.service-jobs-v2 td[data-col="technicians"],.service-jobs-v2 th[data-col="technicians"],
.service-jobs-v2 td[data-col="device-model"],.service-jobs-v2 th[data-col="device-model"],
.service-jobs-v2 td[data-col="device-sn"],.service-jobs-v2 th[data-col="device-sn"],
.service-jobs-v2 td[data-col="device-password"],.service-jobs-v2 th[data-col="device-password"],
.service-jobs-v2 td[data-col="device-module"],.service-jobs-v2 th[data-col="device-module"],
.service-jobs-v2 td[data-col="device-lot"],.service-jobs-v2 th[data-col="device-lot"],
.service-jobs-v2 td[data-col="device-ic"],.service-jobs-v2 th[data-col="device-ic"],
.service-jobs-v2 td[data-col="device-receiver"],.service-jobs-v2 th[data-col="device-receiver"],
.service-jobs-v2 td[data-col="device-auth"],.service-jobs-v2 th[data-col="device-auth"],
.service-jobs-v2 td[data-col="anydesk-id"],.service-jobs-v2 th[data-col="anydesk-id"],
.service-jobs-v2 td[data-col="anydesk-password"],.service-jobs-v2 th[data-col="anydesk-password"],
.service-jobs-v2 td[data-col="device-login"],.service-jobs-v2 th[data-col="device-login"]{width:max-content!important;min-width:max-content!important;max-width:none!important}
.service-jobs-v2 td[data-col="map"],.service-jobs-v2 th[data-col="map"]{width:58px!important;min-width:58px!important;text-align:center!important}
.service-jobs-v2 td[data-col="map"] a{color:#ff7479!important;text-decoration:underline!important}
.service-jobs-v2 td[data-col="issue"],.service-jobs-v2 td[data-col="solution"]{width:185px!important;max-width:185px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.service-jobs-v2 th[data-col="issue"],.service-jobs-v2 th[data-col="solution"]{min-width:150px!important}
.service-jobs-v2 td[data-col="status"],.service-jobs-v2 th[data-col="status"]{min-width:max-content!important}
.service-jobs-v2 td[data-col="actions"]{display:flex!important;gap:4px!important;align-items:center!important}

@media(max-width:900px){.app-shell{padding:12px!important}}

/* Print: use the whole A4 sheet and distribute the report vertically instead of bunching everything at the top. */
@page{size:A4 portrait;margin:8mm}
@media print{
  html,body{width:210mm!important;height:297mm!important;min-height:0!important;margin:0!important;padding:0!important;background:#fff!important;overflow:hidden!important}
  .app-shell{width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important}
  .report-wrap{width:100%!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important}
  .report-page{display:flex!important;flex-direction:column!important;width:194mm!important;height:281mm!important;min-height:281mm!important;max-height:281mm!important;margin:0 auto!important;padding:4mm 5mm!important;border:0!important;box-sizing:border-box!important;font-size:9.2px!important;overflow:hidden!important;background:#fff!important}
  .report-head{flex:0 0 auto!important;padding:1.8mm 0 2.4mm!important}
  .report-head img{width:42mm!important;height:auto!important;max-height:13mm!important;object-fit:contain!important}
  .report-address{font-size:7.8px!important;line-height:1.3!important}
  .report-title{flex:0 0 auto!important;font-size:11.5px!important;margin-top:2mm!important;padding:1.6mm!important}
  .report-table{flex:0 0 auto!important}
  .report-table th,.report-table td{padding:1.35mm 1.6mm!important;font-size:8.3px!important;line-height:1.22!important}
  .report-details{height:auto!important;min-height:13mm!important;line-height:1.3!important;white-space:pre-wrap!important}
  .signature{flex:0 0 auto!important;padding:3mm 0 2.5mm!important;line-height:1.4!important;font-size:8.4px!important}
  .photo-grid{flex:1 1 auto!important;min-height:0!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:1.2mm!important;margin-top:1.5mm!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .photo-grid>div{height:auto!important;min-height:0!important;background:#eee!important;overflow:hidden!important}
  .photo-grid img{width:100%!important;height:100%!important;object-fit:cover!important}
  .remote-report-note{flex:1 1 auto!important;min-height:0!important;margin-top:1.5mm!important;padding:8mm!important;font-size:12px!important;break-inside:avoid!important;page-break-inside:avoid!important}
}
