.linked-record-field select,
.referral-field select,
.discount-scope select {
  width: 100%;
  height: 43px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  padding: 0 10px;
}

.linked-record-field > input[type="search"] {
  height: 42px;
  margin-bottom: 7px;
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 0 12px;
}

.inline-add-actions { display: flex; gap: 7px; margin-top: 7px; }
.inline-add-actions button,
.referral-field > button {
  border: 0;
  background: transparent;
  color: var(--brand);
  font-size: 11px;
  font-weight: 700;
}
.referral-field > button { margin-top: 7px; text-align: left; }
.discount-scope { display: flex; flex-direction: column; gap: 5px; margin-bottom: 14px; color: var(--muted); font-size: 10px; }

.latest-quotation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 16px;
  padding: 18px 20px;
  text-align: left;
  color: var(--ink);
  border-color: #cdd1f1;
  background: linear-gradient(105deg,#fff,#f7f8ff);
}
.latest-quotation h2,.latest-quotation p { margin: 3px 0; }
.latest-quotation > div:last-child { display: flex; align-items: center; gap: 14px; }
.latest-quotation > div:last-child > strong { font: 800 23px Manrope; }
.latest-quotation > div:last-child > span:last-child { color: var(--brand); font-weight: 700; }

.quote-record-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.quote-record-card { padding: 16px; text-align: left; color: var(--ink); }
.quote-record-card:hover { border-color: var(--brand); transform: translateY(-1px); }
.quote-record-card > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.quote-record-card h3 { margin: 15px 0 4px; }
.quote-record-card p { margin: 0; color: var(--muted); font-size: 11px; }
.quote-record-card footer { display: flex; align-items: end; justify-content: space-between; margin-top: 17px; padding-top: 12px; border-top: 1px solid var(--line); }
.quote-record-card footer strong { font: 800 19px Manrope; }
.quote-record-card footer span { color: var(--muted); font-size: 10px; }
.quote-number { color: var(--brand); font-weight: 800; }

.quote-detail-hero { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 12px 0; padding: 18px 20px; }
.quote-detail-hero h1,.quote-detail-hero p { margin: 3px 0; }
.quote-status-flow { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin-bottom: 14px; }
.quote-status-flow > div { display: flex; align-items: center; gap: 8px; padding: 11px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--muted); }
.quote-status-flow span { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: #eceef2; font-size: 10px; }
.quote-status-flow .current { border-color: #7c84df; background: #f5f6ff; color: var(--brand); }
.quote-status-flow .current span,.quote-status-flow .done span { background: var(--brand); color: #fff; }
.quote-status-flow .done { color: #39755f; }
.quote-detail-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(300px,.75fr); gap: 14px; }
.quote-detail-grid > div { display: grid; gap: 14px; }
.quote-record-summary,.quote-activity-panel { padding: 18px; }
.portal-link-box { display: flex; align-items: center; gap: 15px; margin: 17px 0; padding: 13px; border: 1px solid #dfe2f7; border-radius: 11px; background: #fafaff; }
.portal-link-box > div { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.portal-link-box strong { overflow: hidden; color: var(--brand); text-overflow: ellipsis; white-space: nowrap; }
.portal-link-box small,.portal-link-box span { color: var(--muted); font-size: 10px; }
.detail-revisions { display: grid; gap: 7px; }
.detail-revisions button { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid var(--line); border-radius: 9px; background: #fff; text-align: left; }
.detail-revisions button.active { border-color: var(--brand); background: #fafaff; }
.detail-revisions button > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 8px; background: #eef0ff; color: var(--brand); font-weight: 800; }
.detail-revisions button > div { display: flex; flex-direction: column; }
.detail-revisions small { color: var(--muted); }
.detail-revisions button > b { color: var(--green); font-size: 10px; }
.detail-line-list { display: grid; gap: 7px; }
.detail-line-list > div { display: flex; justify-content: space-between; padding: 10px; border-bottom: 1px solid var(--line); }
.quote-activity-panel { align-self: start; }
.quote-activity-panel > p { color: var(--muted); }
.quote-activity-panel form { display: grid; gap: 9px; margin-bottom: 15px; }
.quote-activity-panel textarea { min-height: 90px; padding: 10px; border: 1px solid var(--line); border-radius: 9px; resize: vertical; }
.quote-record-feed { display: grid; gap: 8px; }
.quote-file-wrap { position: relative; }
.quote-file-wrap .remove-file { position: absolute; right: 7px; bottom: 6px; }

.payment-choice-message { margin: -16px 0 22px auto; max-width: 510px; padding: 12px 14px; border-radius: 9px; background: #fff4db; color: #745018; }
.payment-choice-message button { margin-left: 6px; border: 0; background: transparent; color: #9b5e00; font-weight: 800; text-decoration: underline; }
.payment-box.full-discount-selected label:not(:has(input[value="Full Payment"]:checked)) { display: none; }
.quote-related-native-select { position: absolute; width: 1px!important; height: 1px!important; margin: -1px; padding: 0!important; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0!important; }
.quote-related-picker { width: 100%; }

@media (max-width: 1000px) {
  .quote-record-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .quote-detail-grid { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .latest-quotation,.quote-detail-hero { align-items: stretch; flex-direction: column; }
  .latest-quotation > div:last-child { flex-wrap: wrap; }
  .quote-record-grid,.quote-status-flow { grid-template-columns: 1fr; }
  .portal-link-box { align-items: stretch; flex-direction: column; }
}

.quotation-customer-groups { display: grid; gap: 15px; }
.quotation-customer-group { overflow: hidden; }
.quotation-customer-group > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--line);
  background: #fafbfc;
}
.quotation-customer-group > header > div { display: flex; align-items: center; gap: 11px; }
.quotation-customer-group h2 { margin: 0; font-size: 17px; }
.quotation-customer-group header small { color: var(--muted); }
.customer-quotation-groups { display: grid; gap: 12px; padding: 14px; }
.organized-quote-group { overflow: hidden; border: 1px solid var(--line); border-radius: 11px; }
.organized-quote-head { display: flex; align-items: center; justify-content: space-between; padding: 11px 13px; background: #f6f7fa; }
.organized-quote-head > div { display: flex; flex-direction: column; }
.organized-quote-head small { color: var(--muted); }
.organized-version-row {
  display: grid;
  grid-template-columns: minmax(220px,auto) 1fr auto;
  align-items: center;
  gap: 13px;
  width: 100%;
  padding: 11px 13px;
  border: 0;
  border-top: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  text-align: left;
}
.organized-version-row:hover { background: #fafaff; }
.organized-version-row > div { display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }
.organized-version-row > span { display: flex; flex-direction: column; }
.organized-version-row small { color: var(--muted); }
.organized-version-row > b { color: var(--brand); font-size: 11px; }
.version-tag,.revised-tag,.latest-tag {
  display: inline-flex;
  align-items: center;
  min-height: 23px;
  padding: 3px 8px;
  border-radius: 12px;
  font-size: 9px;
  font-weight: 800;
}
.version-tag { background: #eef0ff; color: var(--brand); }
.revised-tag { background: #fff1dc; color: #9b6517; }
.latest-tag { background: #e5f8f0; color: #197653; }
.delivered-filter { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 7px !important; min-width: auto !important; height: 43px; padding: 0 12px; border: 1px solid var(--line); border-radius: 10px; background: #fafbfc; color: var(--ink) !important; font-size: 11px !important; letter-spacing: normal !important; text-transform: none !important; }
.delivered-filter input { width: auto !important; }

.customer-quote-stack { display: grid; gap: 11px; }
.customer-quote-group { overflow: hidden; border: 1px solid var(--line); border-radius: 11px; }
.customer-quote-version { display: grid; grid-template-columns: minmax(190px,auto) 1fr auto; align-items: center; gap: 10px; width: 100%; padding: 10px 12px; border: 0; border-top: 1px solid var(--line); background: #fff; color: var(--ink); text-align: left; }
.customer-quote-version > div { display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }
.customer-quote-version > span { color: var(--muted); font-size: 10px; }

.payment-box.payment-selected label:not(.selected-payment) { display: none; }
.payment-box.payment-selected label.selected-payment { animation: payment-choice-in .18s ease-out; }
.payment-choice-message { margin-top: -4px; }
@keyframes payment-choice-in { from { opacity: .5; transform: translateY(-3px); } to { opacity: 1; transform: none; } }

@media (max-width: 680px) {
  .quotation-customer-group > header { align-items: stretch; flex-direction: column; }
  .organized-version-row,.customer-quote-version { grid-template-columns: 1fr; }
  .organized-version-row > b { justify-self: start; }
}
.quote-lock-notice{display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px 18px;border-color:#f1c27d;background:#fffaf1}.quote-lock-notice strong{color:#9a5b00}.quote-lock-notice span{color:#6b6256}.customer-lock-banner{max-width:1060px;margin:16px auto;padding:13px 18px;border:1px solid #f0c36c;border-radius:12px;background:#fff8e7;display:flex;gap:10px;align-items:center;justify-content:center;color:#5f4a20}.signed-readonly-banner{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:#eaf7ef;color:#207242;font-weight:700}.customer-cancelled-banner{margin:22px 0 0;padding:16px;border-radius:10px;background:#fff0ef;border:1px solid #efaaa4;color:#8a2921;display:flex;flex-direction:column;gap:5px}

@media print{body{background:#fff!important}.app-sidebar,.preview-toolbar,.customer-lock-banner,.toast,#modal-root{display:none!important}.app-main,.quote-preview-shell{margin:0!important;padding:0!important;width:100%!important}.client-proposal{box-shadow:none!important;border:0!important}.client-actions{display:none!important}}
