.lab-reports-page{min-width:0}
.lab-report-list{display:grid;gap:1rem}
.lab-report-card{min-width:0;padding:1.15rem;border:1px solid var(--border-color,#dfe3e8);border-radius:1rem;background:#fff;box-shadow:0 6px 18px rgba(24,39,75,.04)}
.lab-report-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.lab-report-card-head h2{margin:.15rem 0 0;font-size:1.05rem;line-height:1.35;overflow-wrap:anywhere}
.lab-report-card-head h2 a{color:inherit;text-decoration:none}
.lab-report-card-head h2 a:hover,.lab-report-card-head h2 a:focus{text-decoration:underline}
.lab-report-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.25rem}
.lab-report-card-grid>div{display:grid;gap:.18rem;min-width:0}
.lab-report-card-grid strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}
.lab-report-card-grid span{overflow-wrap:anywhere}
.lab-report-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem;margin:0 0 1.25rem}
.lab-report-metrics>div{min-width:0;padding:1rem;border:1px solid var(--border-color,#dfe3e8);border-radius:.9rem;background:#fff}
.lab-report-metrics dt{font-size:.78rem;color:#6b7280}
.lab-report-metrics dd{margin:.2rem 0 0;font-size:1.55rem;font-weight:700}
.lab-report-filters{align-items:end}
.lab-report-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.lab-report-field-wide{grid-column:1/-1}
.lab-report-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.lab-report-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem;max-width:34rem}
.lab-report-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.lab-reports-page.lab-report-detail .empty-state{min-height:0;padding:18px 20px;text-align:left}
.lab-reports-page.lab-report-detail .empty-state .empty-icon{display:none}
.lab-reports-page.lab-report-detail .empty-state h3{margin:0 0 6px;font-size:1rem}
.lab-reports-page.lab-report-detail .empty-state p{margin:0}
.lab-reports-page.lab-report-detail .empty-state .btn{margin-top:12px}
.lab-report-wide{grid-column:1/-1}
.lab-report-definitions{display:grid;grid-template-columns:minmax(8rem,.7fr) minmax(0,1.3fr);gap:.55rem 1rem;margin:0}
.lab-report-definitions dt{color:#6b7280;font-weight:500}
.lab-report-definitions dd{margin:0;min-width:0;overflow-wrap:anywhere}
.lab-report-timeline{display:grid;gap:.75rem}
.lab-report-timeline-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding:.85rem;border:1px solid var(--border-color,#dfe3e8);border-radius:.75rem;background:#fbfcfd}
.lab-report-timeline-item h3{margin:0 0 .2rem;font-size:1rem}
.lab-report-timeline-item p{margin:0;overflow-wrap:anywhere}
.lab-report-decisions{display:grid;gap:.85rem;margin:0;padding-left:1.25rem}
.lab-report-decisions li{padding-left:.25rem}
.lab-report-decisions li>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem}
.lab-report-decisions span{color:#6b7280;font-size:.88rem}
.lab-report-decisions p{margin:.25rem 0 0}
.lab-report-note{margin:1rem 0 0;padding:.8rem;border-radius:.7rem;background:#f5f7fa;overflow-wrap:anywhere}
.lab-report-form-errors{margin-top:1rem}
.lab-report-form-errors:empty{display:none}
.lab-report-modal .modal-body,.lab-report-modal .modal-footer{min-width:0}
.lab-reports-page .long-text{white-space:pre-wrap;overflow-wrap:anywhere}

@media(max-width:991px){
  .lab-report-detail-head{display:grid}
  .lab-report-actions{justify-content:flex-start;max-width:none}
  .lab-reports-page .btn-sm,.lab-report-modal .btn-sm{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .lab-report-modal .modal-header>.btn-close{min-width:44px;min-height:44px}
  .lab-reports-page .workspace-chip{min-height:44px}
}

@media(max-width:767px){
  .lab-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
  .lab-report-metrics>div{padding:.65rem .85rem}
  .lab-report-metrics>div:last-child:nth-child(odd){grid-column:1/-1}
  .lab-report-metrics dd{font-size:1.3rem;line-height:1.2}
  .lab-report-card-grid,.lab-report-detail-grid,.lab-report-form-grid{grid-template-columns:minmax(0,1fr)}
  .lab-report-wide,.lab-report-field-wide{grid-column:auto}
  .lab-report-card-head{display:grid}
  .lab-report-definitions{grid-template-columns:minmax(0,1fr);gap:.15rem}
  .lab-report-definitions dd{margin:0 0 .6rem}
  .lab-report-actions,.lab-report-card-head .status-badge{justify-self:start}
  .lab-report-timeline-item{align-items:flex-start}
}

@media(max-width:430px){
  .lab-report-card,.lab-report-timeline-item{padding:.9rem}
  .lab-report-actions,.lab-report-actions .btn,.lab-report-timeline-item{width:100%}
  .lab-report-timeline-item{display:grid}
  .lab-report-timeline-item .btn{width:100%}
}

.lab-repeat-page,.lab-repeat-filters,.lab-repeat-commercial,.lab-repeat-contacts,.lab-repeat-person,.lab-repeat-comparison,.lab-repeat-project-context{display:grid;gap:14px;min-width:0}.lab-repeat-page p,.lab-repeat-card p{margin:0;line-height:1.55;overflow-wrap:anywhere}.lab-repeat-filter-grid,.lab-repeat-workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.lab-repeat-workspace{margin:20px 0}.lab-repeat-workspace h3{font-size:1rem;margin:0}.lab-repeat-channels{display:flex;flex-wrap:wrap;gap:8px}.lab-repeat-channel{display:inline-flex;align-items:center;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.lab-repeat-person{padding:12px;border:1px solid var(--line);border-radius:10px}.lab-repeat-person>a{min-height:44px;display:flex;align-items:center;overflow-wrap:anywhere}.lab-repeat-commercial{align-content:start;padding:14px;background:#f6f8fa;border-radius:10px}.lab-repeat-commercial>.btn{justify-self:start}.lab-repeat-page .btn,.lab-repeat-page .form-control,.lab-repeat-page .form-select,.lab-repeat-contact-form .btn,.lab-repeat-contact-form .form-control,.lab-repeat-contact-form .form-select{min-height:44px;white-space:normal;max-width:100%;overflow-wrap:anywhere}.lab-repeat-contact-form .btn-close{min-width:44px;min-height:44px}.lab-repeat-page>.btn{justify-self:start}.lab-repeat-saved:empty,.lab-repeat-comparison:empty{display:none}.lab-repeat-comparison:not(:empty){padding:12px;border:1px solid var(--line);border-radius:10px;margin-top:14px}.lab-repeat-contact-form .form-text{line-height:1.55}.lab-repeat-card h2,.lab-repeat-card a{overflow-wrap:anywhere}
@media(max-width:768px){.lab-repeat-filter-grid,.lab-repeat-workspace{grid-template-columns:minmax(0,1fr)}.lab-repeat-card-head{display:grid}.lab-repeat-filters>.card-action-row>.btn{flex:1 1 180px}.lab-repeat-contact-form .lab-report-definitions{grid-template-columns:minmax(0,1fr)}}

.lab-repeat-created,.lab-repeat-project-fields,.lab-repeat-project-action,.lab-repeat-analytics,.lab-repeat-project-retry:not(:empty){display:grid;gap:12px;min-width:0}.lab-repeat-created>.btn,.lab-repeat-project-action>.btn{justify-self:start}.lab-repeat-project-action{margin:16px 0}.lab-repeat-analytics h2,.lab-repeat-analytics h3{margin:0;font-size:1.1rem}.lab-repeat-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}.lab-repeat-metrics>div{padding:12px;border:1px solid var(--line);border-radius:10px}.lab-repeat-metrics dt{font-size:.85rem;font-weight:400}.lab-repeat-metrics dd{font-size:1.6rem;font-weight:700;margin:5px 0 0}.lab-repeat-financial-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.lab-repeat-financial-summary>section{display:grid;gap:10px;align-content:start;min-width:0;padding:14px;background:#f6f8fa;border-radius:10px}.lab-repeat-amounts{margin:0;padding-left:20px;font-size:1.1rem;font-weight:600}.lab-repeat-project-form .btn,.lab-repeat-project-form .form-control,.lab-repeat-project-form .form-select,.lab-repeat-project-form summary{min-height:44px;white-space:normal;overflow-wrap:anywhere}.lab-repeat-project-form .btn-close{min-width:44px;min-height:44px}.lab-repeat-project-form summary{display:flex;align-items:center;cursor:pointer}.lab-repeat-project-retry:empty{display:none}.lab-repeat-project-fields .form-text,.lab-repeat-created{overflow-wrap:anywhere}
@media(max-width:768px){.lab-repeat-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-repeat-financial-summary,.lab-repeat-project-form .lab-report-form-grid{grid-template-columns:minmax(0,1fr)}}

.lab-report-detail .lab-builder-remark{background:#fff9eb;border:1px solid #ead8a8;border-radius:12px;padding:16px;margin:12px 0;min-width:0}
.lab-report-detail .lab-builder-remark h3{font-size:1rem;margin:0 0 8px}
.lab-report-detail .lab-builder-comment{white-space:pre-wrap;overflow-wrap:anywhere}
.lab-report-detail .lab-report-actions .btn{min-height:44px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:768px){.lab-report-detail .lab-report-actions{width:100%;display:flex;flex-wrap:wrap}.lab-report-detail .lab-report-actions .btn{flex:1 1 220px}.lab-report-detail .lab-builder-remark{padding:12px}}

.lab-signed-copies{min-width:0;scroll-margin-top:20px}
.lab-signed-copy-form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;background:#f6f9fc;border:1px solid #dce5ef;border-radius:12px;padding:16px;margin:16px 0}
.lab-signed-copy-form[hidden]{display:none}
.lab-signed-copy-target{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-width:0}
.lab-signed-copy-target strong{flex:1 1 250px}
.lab-signed-copy-list{display:grid;gap:12px;margin:16px 0}
.lab-signed-copy{border:1px solid #dce5ef;border-radius:12px;padding:16px;min-width:0}
.lab-signed-copy h3{font-size:1rem;margin:0 0 8px}
.lab-signed-filename{font-weight:600;overflow-wrap:anywhere}
.lab-signed-comment{white-space:pre-wrap;overflow-wrap:anywhere}
.lab-signed-copies .btn,.lab-signed-copies .form-control,.lab-signed-copies .form-select{min-height:44px}
.lab-signed-copies .btn{white-space:normal;overflow-wrap:anywhere}
@media(max-width:768px){.lab-signed-copies .panel-heading{align-items:stretch;flex-direction:column}.lab-signed-copies .card-action-row{align-items:stretch}.lab-signed-copies .card-action-row>.btn{flex:1 1 220px}.lab-signed-copy-form,.lab-signed-copy{padding:12px}.lab-signed-copy-target{align-items:stretch;flex-direction:column}.lab-signed-copy-target strong{flex-basis:auto}}

.lab-handovers{min-width:0;scroll-margin-top:20px}
.lab-handover-form{display:grid;gap:12px;background:#f6f9fc;border:1px solid #dce5ef;border-radius:12px;padding:16px;margin:16px 0}
.lab-handover-form[hidden]{display:none}
.lab-handover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lab-handover-target{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-width:0}
.lab-handover-target strong{flex:1 1 250px;overflow-wrap:anywhere}
.lab-handover-list{display:grid;gap:12px;margin:16px 0}
.lab-handover{border:1px solid #dce5ef;border-radius:12px;padding:16px;min-width:0}
.lab-handover h3{font-size:1rem;margin:0}
.lab-handover-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.lab-handover-filename{font-weight:600;overflow-wrap:anywhere}
.lab-handover-recipient{overflow-wrap:anywhere}
.lab-handover-comment{white-space:pre-wrap;overflow-wrap:anywhere}
.lab-handovers .btn,.lab-handovers .form-control,.lab-handovers .form-select{min-height:44px}
.lab-handovers .btn{white-space:normal;overflow-wrap:anywhere}
@media(max-width:768px){.lab-handovers .panel-heading{align-items:stretch;flex-direction:column}.lab-handover-grid{grid-template-columns:1fr}.lab-handovers .card-action-row{align-items:stretch}.lab-handovers .card-action-row>.btn{flex:1 1 220px}.lab-handover-form,.lab-handover{padding:12px}.lab-handover-target{align-items:stretch;flex-direction:column}.lab-handover-target strong{flex-basis:auto}}

.lab-handover-responses{border-top:1px solid #dce5ef;padding-top:16px;margin-top:16px;min-width:0}
.lab-handover-responses h4{font-size:1rem;margin:0 0 12px}
.lab-handover-response-form{display:grid;gap:12px;background:#f6f9fc;border:1px solid #dce5ef;border-radius:12px;padding:16px;margin:12px 0}
.lab-handover-response-form[hidden]{display:none}
.lab-response-target{font-weight:600;overflow-wrap:anywhere}
.lab-response-comment{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0}
.lab-response-latest{margin-bottom:12px;overflow-wrap:anywhere}
.lab-response-history{margin-top:12px}
.lab-response-history summary{min-height:44px;display:flex;align-items:center;cursor:pointer}
.lab-response-history article{border-top:1px solid #dce5ef;padding:12px 0;overflow-wrap:anywhere}
@media(max-width:768px){.lab-handover-response-form{padding:12px}.lab-handover-responses>.btn{width:100%}}

.lab-handover-queue-filters{display:grid;gap:12px;background:#fff;border:1px solid #dce5ef;border-radius:12px;padding:16px;margin:20px 0}
.lab-handover-queue-scope{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0}
.lab-handover-queue-summary{margin:20px 0}
.lab-handover-queue-summary h2{font-size:1.15rem}
.lab-handover-queue-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.lab-handover-queue-results{display:grid;gap:16px}
.lab-handover-queue-card{background:#fff;border:1px solid #dce5ef;border-radius:14px;padding:20px;min-width:0}
.lab-handover-queue-card h2{font-size:1.15rem;margin:0;overflow-wrap:anywhere}
.lab-handover-queue-file,.lab-queue-response{background:#f6f9fc;padding:12px;border-radius:10px;margin:12px 0;min-width:0}
.lab-handover-queue .btn,.lab-handover-queue .form-control,.lab-handover-queue .form-select{min-height:44px}
.lab-handover-queue .btn{white-space:normal;overflow-wrap:anywhere}
@media(max-width:768px){.lab-handover-queue-card,.lab-handover-queue-filters{padding:14px}.lab-handover-queue .card-action-row{align-items:stretch}.lab-handover-queue .card-action-row>.btn{flex:1 1 220px}.lab-handover-queue-scope>.btn{flex:1 1 220px}}

/* Corrections keep the original remark alongside the new file. */
.lab-handover-chain:empty,.lab-handover-correction-context:empty{display:none}
.lab-handover-chain>div,.lab-handover-correction-context:not(:empty){padding:14px;border:1px solid var(--line,#dce2ea);border-radius:12px;background:var(--surface-soft,#f6f8fb);margin:12px 0;overflow-wrap:anywhere}
.lab-handover-correction-context h3{font-size:1.05rem}
.lab-handover-chain .btn,.lab-handover-correction-context .btn,.lab-response-latest .btn{min-height:44px;white-space:normal}
@media(max-width:767px){.lab-handover-chain .btn,.lab-handover-target .card-action-row>.btn{width:100%}}

/* A project task stays attached to the exact customer remark. */
.lab-response-task{display:grid;gap:10px;padding:14px;border:1px solid var(--line,#dce2ea);border-radius:12px;margin:12px 0;overflow-wrap:anywhere}
.lab-response-task .badge{justify-self:start}
.lab-response-task .btn{justify-self:start}
.lab-response-task-form{padding:16px;margin:14px 0;border:1px solid var(--line,#dce2ea);border-radius:12px}
.lab-response-task-workspace .btn,.lab-response-task-form .form-control,.lab-response-task-form .form-select,.lab-response-task .btn{min-height:44px;white-space:normal}
.lab-response-task-source{margin-bottom:18px;overflow-wrap:anywhere}
@media(max-width:767px){.lab-response-task .btn,.lab-response-task-form .card-action-row>.btn{width:100%}.lab-response-task-form{padding:12px}}

.lab-handovers [id^="report-response-"]{scroll-margin-top:100px}

/* Internal review queue keeps stage decisions in the report card. */
.lab-review-queue,.lab-review-filters,.lab-review-results,.lab-review-project-picker,.lab-review-project-finder{display:grid;gap:16px;min-width:0}
.lab-review-queue>.btn{justify-self:start}
.lab-review-filters,.lab-review-card{padding:20px;border:1px solid var(--line,#dce5ef);border-radius:14px;background:#fff;min-width:0}
.lab-review-filter-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px}
.lab-review-project-finder[hidden]{display:none}
.lab-review-project-results{display:grid;gap:8px;min-width:0}
.lab-review-project-results .btn{text-align:left;justify-content:flex-start}
.lab-review-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;min-width:0}
.lab-review-card h2,.lab-review-summary h2{font-size:1.15rem;margin:0 0 10px}
.lab-review-card h2 a{color:inherit;text-decoration:none}
.lab-review-card p,.lab-review-card h2,.lab-review-project-picker strong{overflow-wrap:anywhere}
.lab-review-file,.lab-review-remark{background:#f6f9fc;border-radius:10px;padding:14px;margin:14px 0;min-width:0}
.lab-review-filename{font-weight:600}
.lab-review-card>.card-action-row{margin-top:18px}
.lab-review-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px}
.lab-review-queue .btn,.lab-review-queue .form-control,.lab-review-queue .form-select{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
#report-review-actions{scroll-margin-top:100px}
@media(max-width:768px){.lab-review-filter-grid{grid-template-columns:minmax(0,1fr)}.lab-review-card,.lab-review-filters{padding:14px}.lab-review-card-head{display:grid}.lab-review-queue .card-action-row{align-items:stretch}.lab-review-queue .card-action-row>.btn{flex:1 1 220px}.lab-review-queue .lab-report-definitions{grid-template-columns:minmax(0,1fr)}}

.lab-review-task-workspace{display:grid;gap:12px;min-width:0;margin:18px 0}
.lab-review-task-workspace>.btn{justify-self:start}
.lab-review-task-form{display:grid;gap:14px;min-width:0;background:#f6f9fc;border:1px solid var(--line,#dce5ef);border-radius:12px;padding:16px}
.lab-review-task-form[hidden]{display:none}
.lab-review-task-source{min-width:0;overflow-wrap:anywhere}
.lab-review-task-workspace .btn,.lab-review-task-form .form-control,.lab-review-task-form .form-select{min-height:44px;white-space:normal;overflow-wrap:anywhere}
.lab-report-decisions [id^="report-decision-"]{scroll-margin-top:100px}
@media(max-width:768px){.lab-review-task-form{padding:12px}.lab-review-task-form .card-action-row>.btn{flex:1 1 220px}.lab-review-task-workspace>.btn{width:100%}}

/* Released files stay distinct from newer work-in-progress revisions. */
.lab-delivery-queue,.lab-delivery-filters,.lab-delivery-results{display:grid;gap:16px;min-width:0}
.lab-delivery-queue>.btn{justify-self:start}
.lab-delivery-filters,.lab-delivery-card{padding:20px;border:1px solid var(--line,#dce5ef);border-radius:14px;background:#fff;min-width:0}
.lab-delivery-filter-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px}
.lab-delivery-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;min-width:0}
.lab-delivery-card h2,.lab-delivery-summary h2{font-size:1.15rem;margin:0 0 10px}
.lab-delivery-card h2 a{color:inherit;text-decoration:none}
.lab-delivery-card p,.lab-delivery-card h2{overflow-wrap:anywhere}
.lab-delivery-file,.lab-delivery-fact{background:#f6f9fc;border-radius:10px;padding:14px;margin:14px 0;min-width:0}
.lab-delivery-filename{font-weight:600}
.lab-delivery-counts{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.lab-delivery-counts p{margin:0}
.lab-delivery-queue .btn,.lab-delivery-queue .form-control,.lab-delivery-queue .form-select{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
@media(max-width:768px){.lab-delivery-filter-grid{grid-template-columns:minmax(0,1fr)}.lab-delivery-card,.lab-delivery-filters{padding:14px}.lab-delivery-card-head{display:grid}.lab-delivery-queue .card-action-row{align-items:stretch}.lab-delivery-queue .card-action-row>.btn{flex:1 1 220px}}
