.quote-updates { border-bottom: 1px solid #e2e8eb; background: #fff; }
.quote-updates .wrap { padding-top: 36px; padding-bottom: 32px; }
.quote-updates-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.quote-updates-kicker { display: flex; align-items: center; gap: 10px; color: #60727c; font-size: 12px; font-weight: 700; letter-spacing: 0; }
.quote-updates-kicker::before { content: ""; width: 26px; height: 3px; background: #d7a63a; }
.quote-updates h2 { margin: 4px 0 0; font-size: 26px; line-height: 1.35; letter-spacing: 0; }
.quote-viewport { max-height: 453px; overflow: auto; overscroll-behavior: contain; border-top: 1px solid #dde5e8; border-bottom: 1px solid #dde5e8; scrollbar-width: thin; scroll-behavior: auto; overflow-anchor: none; }
.quote-table { width: 100%; min-width: 880px; border-collapse: separate; border-spacing: 0; table-layout: fixed; font-size: 14px; line-height: 1.4; }
.quote-code-col { width: 15%; }.quote-name-col { width: 24%; }.quote-model-col { width: 19%; }
.quote-price-col { width: 20%; }.quote-lead-col { width: 10%; }.quote-date-col { width: 12%; }
.quote-table th { position: sticky; top: 0; z-index: 1; height: 44px; padding: 10px 12px; background: #eef3f5; color: #546773; text-align: left; font-size: 13px; font-weight: 600; border-bottom: 1px solid #dde5e8; overflow-wrap: anywhere; }
.quote-table td { height: 68px; padding: 12px; border-bottom: 1px solid #edf0f2; vertical-align: middle; background: #fff; }
.quote-table tr:hover td { background: #f6f9fb; }
.quote-code, .quote-model, .quote-lead, .quote-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; }
.quote-name { color: #193f56; font-weight: 600; }
.quote-name:hover { text-decoration: underline; color: #0c5ea8; }
.quote-code, .quote-model { font-size: 13px; color: #52626d; }
.quote-table .quote-price { color: #ad3442; font-weight: 700; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.quote-table time { color: #697983; font-size: 12px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.quote-updates .quote-disclaimer { margin: 14px 0 0; color: #687780; font-size: 12px; line-height: 1.6; }
.quote-empty { padding: 28px 0; border-block: 1px solid #e2e8eb; color: #687780; font-size: 14px; }
.quote-updates :focus-visible { outline: 2px solid #0c5ea8; outline-offset: 2px; }
@media (max-width: 720px) {
  .quote-updates .wrap { padding: 28px 20px; }
  .quote-updates h2 { font-size: 22px; }
  .quote-updates-heading { margin-bottom: 16px; }
  .quote-viewport { max-height: 514px; }
  .quote-table { display: block; min-width: 0; font-size: 13px; }
  .quote-table colgroup { display: none; }
  .quote-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .quote-table tbody { display: block; }
  .quote-table tbody tr { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); grid-template-rows: 40px 22px 20px; gap: 8px 12px; height: 128px; padding: 14px 0; border-bottom: 1px solid #e5ecef; }
  .quote-table td { display: block; height: auto; min-width: 0; border: 0; padding: 0; background: transparent; }
  .quote-table td:nth-child(2) { grid-area: 1 / 1; }
  .quote-table .quote-price { grid-area: 1 / 2; text-align: right; align-self: center; }
  .quote-table .quote-code-cell { grid-area: 2 / 1; }
  .quote-table .quote-model-cell { grid-area: 2 / 2; }
  .quote-table .quote-lead-cell { grid-area: 3 / 1; }
  .quote-table td:last-child { grid-area: 3 / 2; text-align: right; }
  .quote-model-cell, .quote-lead-cell { display: flex !important; align-items: baseline; gap: 5px; }
  .quote-model-cell::before, .quote-lead-cell::before { content: attr(data-label); flex-shrink: 0; color: #72818a; font-size: 11px; }
  .quote-table .quote-code, .quote-table .quote-model, .quote-table .quote-lead { -webkit-line-clamp: 1; font-size: 12px; }
}
