.locked-price{height:34px;border:1px solid #b7c7d3;border-radius:4px;background:#edf3f7;display:grid;grid-template-columns:16px 1fr 19px;align-items:center;padding:0 5px;color:#526b7d}.locked-price input{border:0!important;background:transparent!important;height:30px!important;padding:0!important;font-weight:800;color:#29465c;cursor:not-allowed}.locked-price span{font-size:11px}.locked-price i{font-style:normal;font-size:10px;opacity:.55}.items-panel .trash{width:27px;height:27px;border-radius:50%;background:#fff0f2;color:#a13f53;font-size:18px;display:grid;place-items:center;line-height:1}.items-panel .trash:hover{background:#a13f53;color:#fff}.items-panel td:last-child{width:38px;text-align:center}

/* Project selection controls for the estimator */
.estimate-project-bar{grid-template-columns:minmax(220px,1.15fr) minmax(220px,1.15fr) minmax(170px,.8fr) minmax(150px,.7fr);align-items:end}.estimate-project-bar .estimate-new-project{justify-self:start}.estimate-project-bar .linked-project{grid-column:span 2}
.estimate-project-bar select{width:100%;height:38px;border:1px solid #b9cce0;border-radius:5px;background:#fff;padding:0 10px;color:#0d2c4f;font:inherit}
.estimate-project-bar input[readonly]{background:#f3f7fa;color:#52677c;cursor:default}
.estimate-new-project{height:38px;white-space:nowrap;margin-bottom:0}
@media(max-width:1300px){.estimate-project-bar{grid-template-columns:repeat(3,minmax(210px,1fr))}.estimate-project-bar .linked-project{grid-column:span 2}}
@media(max-width:760px){.estimate-project-bar{grid-template-columns:1fr}.estimate-project-bar .linked-project{grid-column:auto}.estimate-new-project{width:100%}}
.estimate-project-bar button:disabled,.right-rail button:disabled,.items-panel button:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.35)}

/* Estimate page layout: stacked work sections + fixed summary/actions rail */
.estimate-layout{grid-template-columns:minmax(0,1fr) minmax(330px,390px);align-items:start}
.estimate-sections{display:flex;flex-direction:column;gap:14px;min-width:0}
.estimate-summary-rail{position:sticky;top:86px;align-self:start}
.estimate-wide-panel .panel-title{height:64px}
.estimate-wide-panel #rentalsBody,.estimate-wide-panel #laborEstimateBody{min-height:60px}
.estimate-wide-panel .rental-row{grid-template-columns:minmax(220px,1.5fr) 90px 90px 110px 110px 28px;padding:9px 14px}
.estimate-wide-panel .labor-estimate-row{padding-left:14px;padding-right:14px}
.estimate-summary-rail .secondary{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center}
@media(max-width:1100px){.estimate-layout{grid-template-columns:1fr}.estimate-summary-rail{position:static;display:flex}.estimate-summary-rail .export,.estimate-summary-rail .save-to-project,.estimate-summary-rail .secondary{width:100%}}
@media(max-width:700px){.estimate-wide-panel .rental-row{grid-template-columns:1fr 72px 72px;gap:7px}.estimate-wide-panel .rental-row b,.estimate-wide-panel .rental-row button{justify-self:end}}

/* Estimate equipment and labor tables */
.estimate-table-head{display:grid;align-items:center;min-height:43px;padding:0 14px;background:#edf4f9;color:#28445d;border-bottom:1px solid var(--border);font-size:12px;font-weight:700;gap:10px}
.equipment-table-head,.equipment-estimate-row{grid-template-columns:28px minmax(230px,1.8fr) 90px 100px 160px 110px 30px}
.labor-table-head,.labor-table-row{grid-template-columns:28px 105px minmax(190px,1.4fr) 80px 80px 100px 130px 110px 30px}
.estimate-table-body{min-height:0!important}
.estimate-wide-panel .rental-row,.estimate-wide-panel .labor-estimate-row{display:grid;align-items:center;gap:10px;min-height:52px;padding:8px 14px;border-bottom:1px solid #e2e8ed;background:#fff}
.estimate-wide-panel .rental-row:last-child,.estimate-wide-panel .labor-estimate-row:last-child{border-bottom:0}
.row-number{text-align:center;color:#163d61;font-size:12px}
.locked-estimate-field{min-height:34px;border:1px solid #c4d3df;border-radius:4px;background:#edf3f7;color:#24445f;display:flex;align-items:center;padding:0 9px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.locked-estimate-field.center{justify-content:center;text-align:center}
.locked-estimate-field.money-field{justify-content:flex-end;font-weight:700}
.editable-qty{height:34px!important;border:2px solid #ed9208!important;background:#fffdf6!important;text-align:center;font-weight:800;font-size:14px!important}
.estimate-locked-price{width:100%;height:34px}
.estimate-locked-price input{text-align:left}
.line-total{text-align:right!important;white-space:nowrap;font-size:12px!important;color:#102a43}
.table-delete{width:27px;height:27px;border-radius:50%!important;background:#fff0f2!important;color:#a13f53!important;font-size:18px!important;display:grid;place-items:center;padding:0!important;line-height:1}
.table-delete:hover{background:#a13f53!important;color:#fff!important}
.estimate-empty-row{min-height:62px;display:flex;align-items:center;justify-content:center;padding:15px;color:#718497;font-size:12px;text-align:center}
.labor-table-row .labor-specialty{justify-self:start;white-space:nowrap}
@media(max-width:1250px){
  .estimate-table-head{display:none}
  .equipment-estimate-row,.labor-table-row{grid-template-columns:32px minmax(170px,1fr) 90px 90px 130px 100px 30px!important}
  .labor-table-row{grid-template-columns:32px 95px minmax(160px,1fr) 70px 70px 95px 115px 100px 30px!important;overflow-x:auto}
}
@media(max-width:760px){
  .equipment-estimate-row{grid-template-columns:28px minmax(160px,1fr) 70px 75px!important}
  .equipment-estimate-row .estimate-locked-price,.equipment-estimate-row .line-total,.equipment-estimate-row .table-delete{grid-row:2}
  .labor-table-row{grid-template-columns:28px 90px minmax(150px,1fr)!important;overflow:visible}
  .labor-table-row>*:nth-child(n+4){grid-row:2}
}

/* Equipment estimate table alignment correction */
.estimate-wide-panel .rental-row.equipment-estimate-row{
  grid-template-columns:28px minmax(230px,1.8fr) 90px 100px 160px 110px 30px;
  width:100%;
}
.equipment-estimate-row>.row-number{grid-column:1}
.equipment-estimate-row>.locked-estimate-field:nth-child(2){grid-column:2}
.equipment-estimate-row>.locked-estimate-field:nth-child(3){grid-column:3}
.equipment-estimate-row>.editable-qty{grid-column:4}
.equipment-estimate-row>.estimate-locked-price{grid-column:5}
.equipment-estimate-row>.line-total{grid-column:6}
.equipment-estimate-row>.table-delete{grid-column:7}
.equipment-subtotal{min-height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:var(--muted);font-size:12px}
.equipment-subtotal strong{margin-left:auto;color:var(--text);font-size:14px}
.equipment-subtotal b{margin-left:4px}
@media(max-width:1250px){
  .estimate-wide-panel .rental-row.equipment-estimate-row{grid-template-columns:28px minmax(200px,1fr) 80px 90px 145px 105px 30px}
}
@media(max-width:760px){
  .estimate-wide-panel .rental-row.equipment-estimate-row{grid-template-columns:28px minmax(150px,1fr) 70px 75px;overflow-x:auto}
  .equipment-estimate-row>.estimate-locked-price,.equipment-estimate-row>.line-total,.equipment-estimate-row>.table-delete{grid-column:auto}
}


/* Final labor table polish */
.labor-table-row .labor-specialty{
  width:100%;
  min-height:34px;
  border-radius:4px;
  padding:0 10px;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  font-weight:900;
  letter-spacing:.35px;
  border:1px solid transparent;
  text-align:center;
}
.labor-table-row .labor-specialty.mechanical{background:#fff4df;color:#8a5708;border-color:#edc57d}
.labor-table-row .labor-specialty.electrical{background:#e8f5fc;color:#075f8e;border-color:#8dc8e7}
.labor-table-row .labor-specialty.travel{background:#f2eafa;color:#62418b;border-color:#c7afe0}
.labor-subtotal{min-height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:var(--muted);font-size:12px}
.labor-subtotal strong{margin-left:auto;color:var(--text);font-size:14px}
.labor-subtotal b{margin-left:4px}
