.quote-validity-field { margin-top: 22px; }
.quote-validity-field .field { display: flex; flex-direction: column; gap: 8px; font-weight: 650; }
.quote-validity-field input[type="date"] { width: 100%; max-width: 260px; min-height: 48px; padding: 10px 14px; border: 1px solid #c6d3cd; border-radius: 12px; background: #fff; color: #183e34; font: inherit; }
.quote-validity-field .hint { margin: 8px 0 0; font-weight: 400; line-height: 1.5; }
.bid-price-validity { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 20px; }
.bid-price-validity > .field, .bid-price-validity .quote-validity-field, .bid-price-validity .quote-validity-field .field { min-width: 0; margin: 0; }
.bid-price-validity .quote-validity-field .field { gap: 10px; font-weight: 600; }
.bid-price-validity .input-with-icon { min-width: 0; }
.bid-price-validity .quote-validity-field input[type="date"] { min-width: 0; max-width: none; min-height: 54px; font-weight: 400; }
.quote-validity-status { margin-top: 14px; font-size: 14px; }
.quote-validity-status > p { margin: 4px 0; }
.quote-validity-status.is-warning > p:first-child, .dashboard-quote-validity.is-warning { color: #915211; }
.quote-validity-disclosure { margin-top: 10px; }
.quote-validity-disclosure > summary { width: fit-content; cursor: pointer; font-weight: 650; }
.quote-validity-form { padding: 16px; margin-top: 12px; background: #f4f8f5; border: 1px solid #cbdcd1; border-radius: 12px; }
.quote-validity-form .quote-validity-field { margin-top: 0; }
.quote-validity-confirm { display: flex; align-items: flex-start; gap: 10px; margin: 16px 0; font-size: 14px; line-height: 1.5; }
.quote-validity-confirm input { margin-top: 4px; flex-shrink: 0; }
.dashboard-quote-validity { font-size: 14px; line-height: 1.6; }
.customer-quote-validity { font-size: 12px; line-height: 1.4; }
.quote-update-request { margin-top: 10px; }
.quote-update-request .button { white-space: normal; text-align: center; }
.quote-update-status { padding: 12px 16px; border-bottom: 1px solid var(--border, #d6e2db); background: #f3f8f5; font-size: 13px; line-height: 1.5; text-align: left; }
.quote-update-status strong, .quote-update-status small { display: block; }
.quote-update-status small { margin-top: 4px; color: var(--muted, #657773); font-size: 12px; }
.quote-update-pro-notice .text-link { display: inline-block; margin-top: 8px; }
.manage-bid.is-expired { background: #faf9f5; border-color: #d4d0c6; }
@media(max-width:600px) { .quote-validity-field input[type="date"] { max-width: none; } }
@media(max-width:600px) { .bid-price-validity { grid-template-columns: minmax(0, 1fr); } }
