/* v33: live Table2 delivery summary + contractor scores in one line with names below bars. */

@media screen{
  .stats-grid.v33-stats-grid{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
  }
  .v33-delivery-summary{
    border:1px solid #d9e5ef;
    border-top:3px solid var(--teal);
    border-radius:14px;
    background:#fff;
    overflow:hidden;
    box-shadow:0 5px 16px rgba(20,57,92,.045);
  }
  .v33-delivery-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    padding:12px 14px 10px;
    border-bottom:1px solid #e7edf3;
  }
  .v33-delivery-heading span{display:block;font-size:10px;letter-spacing:.14em;font-weight:900;color:#148f83;margin-bottom:3px}
  .v33-delivery-heading h2{margin:0;color:var(--navy);font-size:17px;line-height:1.1}
  .v33-delivery-heading p{margin:4px 0 0;color:#718497;font-size:11px}
  .v33-delivery-heading>strong{flex:0 0 auto;padding:6px 9px;border-radius:8px;background:#edf8f6;color:#168d80;font-size:10px}
  .v33-delivery-table-wrap{overflow-x:auto}
  .v33-delivery-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}
  .v33-delivery-table th,.v33-delivery-table td{padding:9px 10px;border-bottom:1px solid #edf1f5;text-align:center;vertical-align:middle}
  .v33-delivery-table thead th{background:#f4f8fb;color:#536d84;font-size:10px;font-weight:850;line-height:1.15}
  .v33-delivery-table thead th:first-child,.v33-delivery-table tbody th{text-align:left}
  .v33-delivery-table tbody th{color:var(--navy);font-size:12px;font-weight:850;background:#fff}
  .v33-delivery-table tbody td{color:#123659;font-size:12px;font-weight:800}
  .v33-delivery-table tbody tr:last-child th,.v33-delivery-table tbody tr:last-child td{border-bottom:0}
  .v33-delivery-total th,.v33-delivery-total td{background:#eaf3f0!important;color:#133d39!important;font-weight:900!important}

  .v33-ncr-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .v33-ncr-grid .stat-card{min-width:0}

  #tab-contractors .contractor-layout{grid-template-columns:1fr!important}
  #contractorGroups.v33-contractor-grid{
    display:grid!important;
    grid-template-columns:repeat(var(--contractor-count),minmax(0,1fr))!important;
    gap:10px!important;
    overflow:visible!important;
  }
  .v33-contractor-score{
    min-width:0;
    padding:12px 10px 10px;
    border:1px solid #dce7ee;
    border-top:3px solid var(--teal);
    border-radius:12px;
    background:#fff;
    text-align:center;
  }
  .v33-contractor-scoreline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;margin-bottom:8px}
  .v33-contractor-bar{height:9px;border-radius:999px;background:#e7edf3;overflow:hidden}
  .v33-contractor-bar i{display:block;height:100%;border-radius:999px;background:var(--teal);animation:barGrow .7s cubic-bezier(.2,.8,.2,1) both}
  .v33-contractor-scoreline span{font-size:11px;font-weight:900;color:var(--navy);white-space:nowrap}
  .v33-contractor-score>strong{display:block;font-size:12px;line-height:1.15;color:var(--navy);font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

  #qualityGroups.v33-quality-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  .v33-quality-project{min-width:0;padding:13px 14px;border:1px solid #efdeda;border-left:4px solid var(--coral);border-radius:13px;background:#fffdfd}
  .v33-quality-project header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:8px;margin-bottom:7px;border-bottom:1px solid #f1e6e4}
  .v33-quality-project header strong{font-size:14px;color:var(--navy);font-weight:900}
  .v33-quality-project header span{font-size:10px;font-weight:900;color:#b95049;background:#fff0ee;border-radius:7px;padding:4px 7px;white-space:nowrap}
  .v33-quality-project ul{margin:0;padding:0;list-style:none;display:grid;gap:5px}
  .v33-quality-project li{position:relative;padding:6px 8px 6px 18px;border:1px solid #f1e9e7;border-radius:7px;background:#fff;color:#486079;font-size:12px;line-height:1.25}
  .v33-quality-project li:before{content:"";position:absolute;left:8px;top:11px;width:4px;height:4px;border-radius:50%;background:var(--coral)}

  @media(max-width:900px){
    .v33-ncr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    #contractorGroups.v33-contractor-grid{grid-template-columns:repeat(var(--contractor-count),140px)!important;overflow-x:auto!important;padding-bottom:4px}
    #qualityGroups.v33-quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .v33-delivery-table{min-width:760px}
  }
  @media(max-width:620px){
    .v33-ncr-grid{grid-template-columns:1fr}
    #qualityGroups.v33-quality-grid{grid-template-columns:1fr!important}
  }
}

@media print{
  .print25-kpis.v33-print-kpis{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    margin:0 0 1.1mm!important;
  }
  .v33-print-delivery-summary{
    width:100%!important;
    border:1px solid #dbe5ef!important;
    border-top:.7mm solid #27a99b!important;
    border-radius:1.4mm!important;
    background:#fff!important;
    overflow:hidden!important;
    margin:0 0 1mm!important;
  }
  .v33-print-delivery-heading{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:2mm!important;padding:1.2mm 1.5mm .9mm!important;border-bottom:.2mm solid #e5edf3!important}
  .v33-print-delivery-heading span{display:block!important;font-size:4.8pt!important;letter-spacing:.12em!important;font-weight:900!important;color:#188d81!important;margin-bottom:.4mm!important}
  .v33-print-delivery-heading h2{margin:0!important;font-size:9.2pt!important;line-height:1!important;color:#0c3158!important}
  .v33-print-delivery-heading p{margin:.4mm 0 0!important;font-size:4.8pt!important;color:#687f95!important}
  .v33-print-delivery-heading>strong{font-size:5.2pt!important;color:#168d80!important;background:#edf8f6!important;border-radius:.7mm!important;padding:.55mm .8mm!important;white-space:nowrap!important}
  .v33-print-delivery-table-wrap{overflow:visible!important}
  .v33-print-delivery-table{width:100%!important;border-collapse:collapse!important;table-layout:fixed!important}
  .v33-print-delivery-table th,.v33-print-delivery-table td{padding:1.05mm .8mm!important;border-bottom:.18mm solid #e9eef3!important;text-align:center!important;vertical-align:middle!important}
  .v33-print-delivery-table thead th{background:#f3f7fa!important;color:#4f6a81!important;font-size:5.2pt!important;line-height:1.08!important;font-weight:900!important}
  .v33-print-delivery-table thead th:first-child,.v33-print-delivery-table tbody th{text-align:left!important}
  .v33-print-delivery-table tbody th{font-size:6.1pt!important;color:#0c3158!important;font-weight:900!important}
  .v33-print-delivery-table tbody td{font-size:6pt!important;color:#123659!important;font-weight:850!important}
  .v33-print-delivery-total th,.v33-print-delivery-total td{background:#eaf3f0!important;color:#163e39!important;font-weight:900!important;border-bottom:0!important}

  .v33-print-ncr-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:.8mm!important;width:100%!important}
  .v33-print-ncr-grid .print25-kpi{grid-column:auto!important;min-height:17mm!important;height:auto!important}

  .print25-contractor-list{
    display:grid!important;
    grid-template-columns:repeat(var(--contractor-count),minmax(0,1fr))!important;
    gap:.65mm!important;
    width:100%!important;
    overflow:visible!important;
  }
  .print25-contractor{
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:11mm!important;
    max-height:none!important;
    padding:1.05mm .9mm!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    gap:.7mm .65mm!important;
    align-items:center!important;
    border:1px solid #dfe9ef!important;
    border-top:.5mm solid #27a99b!important;
    border-left:1px solid #dfe9ef!important;
    border-radius:1mm!important;
  }
  .print25-score-track{grid-column:1!important;grid-row:1!important;width:100%!important;height:1.2mm!important}
  .print25-contractor strong{grid-column:2!important;grid-row:1!important;font-size:5.5pt!important;line-height:1!important;text-align:right!important;white-space:nowrap!important}
  .print25-contractor b{grid-column:1/-1!important;grid-row:2!important;font-size:5.8pt!important;line-height:1.05!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
}
