/* =========================================================
   RELAY STRATA — GET QUOTES / APPROVED HANDOFF PACKAGE
   ========================================================= */

.relay-get-quotes-panel { padding-top: 0; }
.relay-get-quotes-workspace { padding: 4px 0 18px; }

.relay-get-quotes-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 22px;
}

.relay-get-quotes-header h2 {
  margin: 5px 0 8px;
  font-size: 30px;
  letter-spacing: -.02em;
}

.relay-get-quotes-header p,
.relay-handoff-block-heading p {
  max-width: 820px;
  margin: 0;
  color: #687386;
  line-height: 1.55;
}

.relay-handoff-status,
.relay-integration-status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 7px 11px;
  border: 1px solid #cfd6dc;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.relay-handoff-status.is-approved {
  background: #edf8f2;
  border-color: #a7dcc1;
  color: #245d45;
}

.relay-handoff-status.is-review {
  background: #fff2e7;
  border-color: #f5bf8f;
  color: #9b4c10;
}

.relay-handoff-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  margin-bottom: 18px;
  border: 1px solid #dfe4e8;
  border-radius: 10px;
  background: #fff;
}

.relay-handoff-metrics > div {
  min-height: 82px;
  padding: 16px 18px;
  border-right: 1px solid #dfe4e8;
}

.relay-handoff-metrics > div:last-child { border-right: 0; }
.relay-handoff-metrics span,
.relay-integration-boundary span,
.relay-handoff-asset-version span,
.relay-handoff-audit span,
.relay-handoff-record-meta span {
  display: block;
  margin-bottom: 7px;
  color: #7a8494;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.relay-handoff-metrics strong { display: block; font-size: 18px; line-height: 1.25; }

.relay-handoff-approval-note,
.relay-handoff-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 28px;
  padding: 18px 20px;
  border-left: 4px solid #a7dcc1;
  background: #f7f8fa;
}

.relay-handoff-callout { align-items: flex-start; }
.relay-handoff-approval-note strong,
.relay-handoff-callout strong { display: block; margin-bottom: 5px; }
.relay-handoff-approval-note p,
.relay-handoff-callout p { margin: 0; color: #687386; font-size: 13px; line-height: 1.5; }
.relay-handoff-approval-note > span { flex: 0 0 auto; color: #687386; font-size: 12px; font-weight: 700; }

.relay-handoff-kicker {
  display: block;
  margin-bottom: 5px;
  color: #7a8494;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.relay-handoff-block {
  margin-top: 24px;
  padding-top: 26px;
  border-top: 1px solid #dfe4e8;
}

.relay-handoff-block:first-of-type { margin-top: 0; }
.relay-handoff-block-heading { margin-bottom: 18px; }
.relay-handoff-block-heading h3 { margin: 5px 0 7px; font-size: 23px; letter-spacing: -.01em; }
.relay-handoff-block-heading-split { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }

.relay-handoff-package-tabs {
  display: flex;
  gap: 4px;
  margin: 0;
  overflow-x: auto;
  border-bottom: 1px solid #dfe4e8;
  white-space: nowrap;
}

.relay-handoff-package-tab {
  appearance: none;
  flex: 0 0 auto;
  padding: 12px 15px;
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: #596273;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
}

.relay-handoff-package-tab.is-active { color: #17212b; border-bottom-color: #f28a30; }

.relay-handoff-package-view {
  min-height: 170px;
  padding: 22px;
  border: 1px solid #dfe4e8;
  border-top: 0;
  background: #fff;
}

.relay-handoff-record-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eef1f4;
}
.relay-handoff-record-meta span { margin: 0; }
.relay-handoff-record-meta strong { font-size: 13px; }

.relay-handoff-record-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.relay-handoff-record-section {
  padding: 17px;
  border: 1px solid #e2e6ea;
  border-radius: 8px;
}

.relay-handoff-record-section h4 { margin: 0 0 12px; font-size: 16px; }
.relay-handoff-record-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 9px 0;
  border-top: 1px solid #eef1f4;
  font-size: 13px;
}
.relay-handoff-record-row:first-of-type { border-top: 0; padding-top: 0; }
.relay-handoff-record-row span { color: #687386; }
.relay-handoff-record-row strong { max-width: 58%; text-align: right; overflow-wrap: anywhere; }

.relay-handoff-assets { border-top: 1px solid #dfe4e8; }
.relay-handoff-asset {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(150px, .65fr) auto;
  align-items: center;
  gap: 18px;
  padding: 16px 0;
  border-bottom: 1px solid #e7ebee;
}
.relay-handoff-asset > div:first-child > strong { display: block; margin-bottom: 4px; }
.relay-handoff-asset small { color: #7a8494; }
.relay-handoff-asset-version strong { display: block; font-size: 12px; overflow-wrap: anywhere; }

.relay-handoff-prep-summary {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 14px;
  border-bottom: 1px solid #dfe4e8;
}
.relay-handoff-prep-summary span { color: #687386; font-size: 12px; }
.relay-handoff-prep-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 11px 0;
  border-bottom: 1px solid #eef1f4;
  font-size: 13px;
}
.relay-handoff-prep-row span { color: #596273; }

.relay-handoff-audit {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid #dfe4e8;
  border-radius: 8px;
  overflow: hidden;
}
.relay-handoff-audit > div { min-height: 86px; padding: 16px; border-right: 1px solid #e5e9ed; border-bottom: 1px solid #e5e9ed; }
.relay-handoff-audit > div:nth-child(3n) { border-right: 0; }
.relay-handoff-audit > div:nth-last-child(-n+3) { border-bottom: 0; }
.relay-handoff-audit strong { display: block; font-size: 13px; overflow-wrap: anywhere; }

.relay-visionre-block {
  padding: 26px 24px 24px;
  border: 1px solid #dfe4e8;
  border-left: 4px solid #f28a30;
  border-radius: 10px;
  background: #fff;
}
.relay-visionre-block.relay-handoff-block { margin-top: 28px; }

.relay-integration-status.is-waiting { background: #fff2e7; border-color: #f5bf8f; color: #9b4c10; }
.relay-integration-status.is-progress { background: #f4f6f7; color: #44505e; }
.relay-integration-status.is-complete { background: #edf8f2; border-color: #a7dcc1; color: #245d45; }

.relay-integration-boundary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  margin-top: 18px;
  border: 1px solid #dfe4e8;
  border-radius: 8px;
}
.relay-integration-boundary > div { min-height: 92px; padding: 16px 17px; border-right: 1px solid #dfe4e8; }
.relay-integration-boundary > div:last-child { border-right: 0; }
.relay-integration-boundary strong { display: block; font-size: 13px; line-height: 1.45; }

.relay-market-progress-empty {
  padding: 22px;
  border: 1px dashed #cfd6dc;
  border-radius: 8px;
  background: #fbfcfd;
}
.relay-market-progress-empty strong { display: block; margin-bottom: 5px; }
.relay-market-progress-empty p { margin: 0; color: #687386; font-size: 13px; line-height: 1.5; }
.relay-market-progress-list { border-top: 1px solid #dfe4e8; }
.relay-market-progress-row { display: flex; justify-content: space-between; gap: 20px; padding: 13px 0; border-bottom: 1px solid #eef1f4; font-size: 13px; }
.relay-market-progress-row span { color: #687386; }

.relay-handoff-empty-inline { padding: 20px; color: #687386; font-size: 13px; text-align: center; }

@media (max-width: 900px) {
  .relay-handoff-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .relay-handoff-metrics > div:nth-child(2) { border-right: 0; }
  .relay-handoff-metrics > div:nth-child(-n+2) { border-bottom: 1px solid #dfe4e8; }
  .relay-handoff-record-grid { grid-template-columns: 1fr; }
  .relay-integration-boundary { grid-template-columns: 1fr; }
  .relay-integration-boundary > div { border-right: 0; border-bottom: 1px solid #dfe4e8; }
  .relay-integration-boundary > div:last-child { border-bottom: 0; }
  .relay-handoff-audit { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .relay-handoff-audit > div:nth-child(3n) { border-right: 1px solid #e5e9ed; }
  .relay-handoff-audit > div:nth-child(2n) { border-right: 0; }
  .relay-handoff-audit > div:nth-last-child(-n+3) { border-bottom: 1px solid #e5e9ed; }
  .relay-handoff-audit > div:nth-last-child(-n+2) { border-bottom: 0; }
}

@media (max-width: 640px) {
  .relay-get-quotes-header,
  .relay-handoff-approval-note,
  .relay-handoff-callout,
  .relay-handoff-block-heading-split,
  .relay-handoff-prep-summary,
  .relay-handoff-record-meta {
    flex-direction: column;
    align-items: flex-start;
  }
  .relay-handoff-metrics { grid-template-columns: 1fr; }
  .relay-handoff-metrics > div { border-right: 0; border-bottom: 1px solid #dfe4e8; }
  .relay-handoff-metrics > div:last-child { border-bottom: 0; }
  .relay-handoff-asset { grid-template-columns: 1fr; gap: 10px; }
  .relay-handoff-audit { grid-template-columns: 1fr; }
  .relay-handoff-audit > div { border-right: 0!important; border-bottom: 1px solid #e5e9ed!important; }
  .relay-handoff-audit > div:last-child { border-bottom: 0!important; }
  .relay-handoff-record-row { flex-direction: column; gap: 5px; }
  .relay-handoff-record-row strong { max-width: none; text-align: left; }
}