/* PMP Create Pro v76 — auditable retractable-pricing release. */

.production-job-ticket {
  margin: 12px 0 15px;
  padding: 13px 14px 12px;
  border: 1px solid #cddbe0;
  border-left: 4px solid #20c8bb;
  border-radius: 8px;
  background: linear-gradient(135deg, #f8fcfc, #edf6f7);
  box-shadow: 0 7px 18px rgba(8, 35, 47, .07);
}

.production-job-ticket.review { border-left-color: #ff9d32; background: linear-gradient(135deg, #fffaf3, #fff4e5); }
.production-job-ticket.blocked { border-left-color: #d84a4a; background: linear-gradient(135deg, #fff8f7, #fdeceb); }

.production-ticket-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 6px;
}

.production-ticket-head small {
  color: #64808b;
  font-size: 7px;
  font-weight: 950;
  letter-spacing: 1px;
}

.production-ticket-head span {
  padding: 4px 6px;
  border-radius: 4px;
  background: #0b615f;
  color: #fff;
  font-size: 6px;
  font-weight: 950;
  letter-spacing: .65px;
}

.production-job-ticket.review .production-ticket-head span { background: #9a570d; }
.production-job-ticket.blocked .production-ticket-head span { background: #a72c2c; }
.production-job-ticket > b { color: #142c38; font-size: 12px; }

.production-job-ticket dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 5px;
  margin: 11px 0 0;
}

.production-job-ticket dl div {
  min-width: 0;
  padding: 7px 6px;
  border: 1px solid rgba(91, 118, 129, .14);
  border-radius: 5px;
  background: rgba(255,255,255,.72);
}

.production-job-ticket dt { color: #71848d; font-size: 6px; font-weight: 850; text-transform: uppercase; }
.production-job-ticket dd { margin: 2px 0 0; color: #193440; font-size: 9px; font-weight: 950; }

.whole-job-preflight {
  margin-top: 12px;
  padding-top: 11px;
  border-top: 1px solid rgba(79, 103, 113, .18);
}

.whole-job-preflight > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 7px;
}

.whole-job-preflight > div b { color: #273e49; font-size: 8px; }
.whole-job-preflight > div span { color: #7a8b93; font-size: 7px; }
.whole-job-preflight ul { margin: 0; padding: 0; list-style: none; }

.whole-job-preflight li {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  padding: 7px 0;
  border-top: 1px solid rgba(80, 104, 114, .1);
}

.whole-job-preflight li:first-child { border-top: 0; }
.whole-job-preflight li > span { color: #af650d; font-size: 11px; font-weight: 950; }
.whole-job-preflight li.error > span { color: #c23c3c; }
.whole-job-preflight li.ready > span { color: #158b7e; }
.whole-job-preflight li b { display: block; color: #324752; font-size: 7px; }
.whole-job-preflight li small { display: block; margin-top: 2px; color: #788990; font-size: 6px; line-height: 1.35; }
.whole-job-preflight [data-preflight-issue] {
  min-width: 44px;
  min-height: 28px;
  padding: 5px 8px;
  border: 1px solid #b8c8cf;
  border-radius: 5px;
  background: #fff;
  color: #294552;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .2px;
}
.whole-job-preflight [data-preflight-issue]:hover,
.whole-job-preflight [data-preflight-issue]:focus-visible { border-color: #148f87; color: #08756f; box-shadow: 0 0 0 2px rgba(20,143,135,.12); }

.quote-readiness-note {
  margin: 8px 5px 3px;
  color: #5f767f;
  font-size: 7px;
  line-height: 1.45;
  text-align: center;
}

.quote-readiness-note.review { color: #895515; }
.quote-readiness-note.blocked { color: #a33434; }
.quote-preflight-summary strong.error { color: #b72f2f; }

.source-managed-status {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  margin-top: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(20, 143, 135, .25);
  border-radius: 7px;
  background: #effaf8;
}
.source-managed-status > span { color: #0b8b81; font-size: 13px; font-weight: 950; }
.source-managed-status b, .source-managed-status small { display: block; }
.source-managed-status b { color: #1f514e; font-size: 8px; }
.source-managed-status small { margin-top: 2px; color: #607d7a; font-size: 6px; line-height: 1.4; }

.new-job-safeguard { margin: 18px 20px 4px; padding: 14px 15px; border: 1px solid #f0cfaa; border-left: 4px solid #ff9d32; border-radius: 7px; background: #fff6e8; }
.new-job-safeguard b, .new-job-safeguard span { display: block; }
.new-job-safeguard b { color: #603b18; font-size: 10px; }
.new-job-safeguard span { margin-top: 5px; color: #76593e; font-size: 9px; line-height: 1.45; }
.new-job-actions { flex-wrap: wrap; }
.new-job-actions .gradient-button { margin-left: auto; background: #0aa99c !important; box-shadow: none !important; }
#saveStatus[data-save-state="pending"] { color: #ffd08d; }
#saveStatus[data-save-state="recovery"] { color: #84e7df; }
#saveStatus[data-save-state="error"] { color: #ff9fa7; }

@media (max-width: 620px) {
  .production-drawer {
    width: 100vw;
    max-width: 100vw;
    border-left: 0;
  }
  .production-job-ticket { margin-top: 10px; }
  .production-job-ticket dl { grid-template-columns: repeat(4, minmax(56px, 1fr)); }
}
