/* Quote and checkout decisions: one action, clear status, readable details. */
.quote-app-shell, .checkout-page-stage {
  font-family: var(--font-sans, Roboto, Arial, sans-serif);
}

/* A compact workstation with one active decision and one quote result. */
.quote-app-shell .wizard-panel { border-radius: 10px; box-shadow: none; }
.quote-app-shell .workstation-header-panel { padding: .35rem 1rem; }
.quote-page[data-has-parts="true"] .wizard-upload-stage { display: none; }
.quote-page[data-has-parts="true"][data-upload-busy="true"] .wizard-upload-stage,
.quote-page[data-has-parts="true"] .wizard-upload-stage:has(.upload-compact-status.is-error),
.quote-page[data-has-parts="true"] .wizard-upload-stage:has([data-upload-retry-failed]:not(.d-none)) {
  display: block;
}
.quote-app-shell .upload-compact-bar { padding: .75rem 1rem; min-height: 0; }
.quote-app-shell .workstation-partbar { border-radius: 0; padding: .65rem .8rem; }
.quote-app-shell .workstation-side-card { border-radius: 8px; box-shadow: none; }
.quote-app-shell .workstation-card-head { padding: .75rem; gap: .6rem; }
.quote-app-shell .workstation-card-head .step-number-pill { display: none; }
.quote-app-shell .workstation-card-head { grid-template-columns: minmax(0,1fr) auto; }
.quote-app-shell .workstation-card-title { font-size: 1.1rem; }
.quote-app-shell .workstation-card-body { padding: .75rem; }
.quote-app-shell .workstation-side-card:not(.is-active) .workstation-card-copy { display: none; }
.quote-app-shell .material-choice-name { font-size: .95rem; font-weight: 700; line-height: 1.3; }
.quote-app-shell .workstation-material-card { min-height: 0; border-radius: 8px; padding: .8rem; }
.quote-app-shell .workstation-viewer-shell { min-height: 20rem; border-radius: 8px; }
.quote-app-shell .workstation-facts-band { border-radius: 0; box-shadow: none; }
.quote-app-shell .workstation-inspection { gap: .5rem; }
.quote-app-shell .workstation-part-tray:has(.workstation-tray-item:only-of-type) { margin-top: .5rem; }
.quote-app-shell .workstation-summary-status,
.quote-app-shell .workstation-summary-card #summary-notice { display: none; }
.quote-app-shell .is-single-part .workstation-summary-line:has(#workstation-price-each),
.quote-app-shell .is-single-part .workstation-summary-line:has(#workstation-line-total) { display: none; }
.quote-app-shell .quote-result-banner { border-radius: 8px; padding: 1rem; margin: .75rem; }
.quote-app-shell .quote-result-banner strong { font-size: 1.55rem; }
.quote-app-shell .quote-result-banner p { margin: .4rem 0 0; font-size: .9rem; line-height: 1.5; }
.quote-app-shell .quote-primary-actions { padding: .75rem; }
.quote-app-shell .quote-primary-actions .btn { box-shadow: none; }
.quote-app-shell .quote-trust-note { background: none; color: #526477; padding: 0 .75rem .5rem; font-size: .82rem; }
.quote-app-shell .quote-save-panel,
.quote-app-shell .quote-lead-card { border: 0; border-radius: 0; background: #fff; padding: .85rem 0; box-shadow: none; }
.quote-app-shell .quote-lead-card { border-top: 1px solid #d6dfe8; }
.quote-app-shell .quote-save-panel > div > span { line-height: 1.5; }
.quote-app-shell .quote-secondary-disclosure { margin: 0 .75rem; }
.quote-app-shell .quote-secondary-disclosure > summary { padding: .85rem 0; }
.quote-app-shell .quote-secondary-actions .btn { border: 0; padding: .35rem 0; justify-content: start; text-align: left; }
.quote-app-shell .quote-last-saved { color: #526477; }
.quote-app-shell:has(#quote-secondary-disclosure[open]) #save-quote-primary { display: none; }
.quote-app-shell .qty-break-pill.is-active .qty-break-price,
.quote-app-shell .workstation-qty-breaks .text-muted { color: #42586e !important; }
.quote-app-shell #workstation-ready-pill { color: #73500c; }
.checkout-page-stage .checkout-inline-shell { padding-top: 1rem; }
.checkout-page-stage .checkout-inline-form,
.checkout-page-stage .checkout-inline-totals { box-shadow: none; border-radius: 10px; }
.checkout-page-stage .checkout-task-header { margin-bottom: 1.25rem; }
.checkout-page-stage .checkout-task-header h2 { font-size: clamp(1.45rem,2.3vw,2rem); }
.checkout-page-stage .checkout-pickup-location > span,
.checkout-page-stage .checkout-method-choice small { color: #526477; }
.checkout-page-stage .checkout-lineitem { border-radius: 8px; }
.checkout-page-stage .checkout-progress li.is-complete { background: transparent; }
.checkout-page-stage .checkout-progress li > strong { background: transparent; }
.checkout-page-stage .checkout-progress li.is-complete > span { color: #fff; background: #237449; }
@media (max-width: 767px) {
  .quote-app-shell .workstation-header-panel { padding: .3rem .5rem; }
  .quote-app-shell .workstation-card-body { padding: .7rem; }
  .quote-app-shell .workstation-card-head { padding: .65rem .75rem; }
  .quote-page[data-customer-step="checkout"] .workstation-mobile-status:not(.is-error) { display: none; }
  .quote-app-shell .workstation-viewer-shell { min-height: 13rem; }
  .quote-app-shell .workstation-card-head .workstation-card-title { font-size: 1rem; }
  .quote-app-shell .workstation-summary-card .workstation-card-head { padding-block: 1rem .25rem; }
  .quote-app-shell .workstation-thickness-grid { gap: .4rem; }
  .quote-app-shell .workstation-step-actions .btn { border-radius: 8px !important; }
  .checkout-page-stage .checkout-inline-header { padding-top: 0; margin-top: 0; }
  .checkout-page-stage .checkout-progress { margin-bottom: 1rem; }
  .checkout-page-stage .checkout-progress li { border: 0; padding: .4rem .2rem; min-height: 2.75rem; }
  .checkout-page-stage .checkout-progress li.is-current { background: #edf5fe; border: 1px solid #abc7e5; }
  .checkout-page-stage .checkout-progress li > strong { font-size: .74rem; }
  .checkout-page-stage .checkout-inline-form { padding: 1rem; }
  .checkout-page-stage .checkout-task-header h2 { font-size: 1.5rem; line-height: 1.2; }
  .checkout-page-stage .checkout-task-header > p { font-size: .92rem; }
  .checkout-page-stage .shipping-choice-card { padding: .7rem; }
  .checkout-page-stage .checkout-review-details > summary { font-size: .95rem; }
  .checkout-page-stage .checkout-review-details-content { padding-top: .5rem; }
  .checkout-page-stage .checkout-lineitem-edit-controls { gap: .35rem; }
}
.quote-app-shell button, .quote-app-shell input, .quote-app-shell select,
.quote-app-shell h2, .quote-app-shell h3, .quote-app-shell h4,
.checkout-page-stage button, .checkout-page-stage input, .checkout-page-stage select,
.checkout-page-stage h2, .checkout-page-stage h3, .checkout-page-stage h4 {
  font-family: inherit;
}
.workstation-progress[hidden] { display: none !important; }
.customer-journey-progress {
  display: flex;
  justify-content: center;
  gap: 2rem;
  list-style: none;
  margin: 0;
  padding: .65rem 1rem;
  color: #4e6278;
  font-size: .85rem;
}
.customer-journey-progress li { display: flex; align-items: center; gap: .6rem; }
.customer-journey-progress li > span {
  display: grid; place-items: center;
  width: 1.8rem; height: 1.8rem;
  border: 1px solid #c6d2df; border-radius: 50%;
}
.customer-journey-progress [aria-current="step"] { color: #005bb8; }
.customer-journey-progress [aria-current="step"] > span { color: #fff; background: #006de0; border-color: #006de0; }
.workstation-header-panel { display: block; }
.workstation-inspection > summary { display: none; }
.workstation-inspection[open] { display: grid; gap: .65rem; }
.workstation-batch-tools { border: 1px solid #ccd7e4; border-radius: .65rem; background: #fff; }
.workstation-batch-tools > summary { min-height: 44px; padding: .8rem; color: #0758a6; font-weight: 700; cursor: pointer; }
.workstation-batch-tools:has(.workstation-part-matrix.d-none) { display: none; }
.workstation-tray-price { display: block; color: #153953; font-size: .84rem; font-weight: 700; }
.workstation-part-picker-field { display: none; }
#material-step-confirm, #thickness-step-confirm, #quantity-step-confirm, #operations-step-confirm { display: none !important; }
.workstation-step-actions { margin-top: .35rem; }
.workstation-config-price { grid-column: 1 / -1; color: #284762; font-size: .82rem; font-weight: 700; padding: .1rem .4rem; }
.workstation-config-price:empty { display: none; }
.workstation-step-actions.is-final-step { display: none; }
.quote-page:not([data-customer-step="checkout"]) .workstation-summary-card { display: none; }
.quote-page[data-customer-step="checkout"] .workstation-sidebar > [data-step-panel]:not([data-step-panel="summary"]):not([data-step-panel="status"]) { display: none; }
.quote-page[data-customer-step="checkout"] .workstation-summary-card { display: block; }
.quote-page[data-customer-step="checkout"] .workstation-summary-card .workstation-card-body { display: grid; }
.workstation-summary-card .step-number-pill { display: none; }
.workstation-summary-card .workstation-card-head { grid-template-columns: 1fr; }
.workstation-summary-card #open-checkout-overlay.is-mobile-sticky { position: static; width: 100%; }
.quote-primary-actions { gap: .7rem; }
#save-quote-primary { background: #fff; color: #0758a6; border: 1px solid #0758a6; box-shadow: none; }
#save-quote-primary:hover, #save-quote-primary:focus-visible { background: #eaf3fc; color: #064985; }
.workstation-summary-card:has(.quote-result-banner.is-review) .summary-readiness { background: #fff2d6; color: #805000; }
.checkout-subheading { margin: .5rem 0 .8rem; font-size: 1rem; font-weight: 700; color: #102f4a; }
.checkout-timing-choice { margin-top: 0; }
#lead-time-choice-note { margin-bottom: 1.5rem !important; }
.checkout-page-stage .shipping-choice-card small,
.checkout-page-stage .freight-requirement-row small,
.checkout-page-stage .checkout-lineitem-summary > span,
.checkout-page-stage .checkout-inline-note,
.checkout-page-stage .checkout-pickup-location small,
.checkout-page-stage .checkout-task-header > p,
.checkout-page-stage .checkout-autosave-note { color: #4b6077; }
.checkout-page-stage .checkout-lineitem-summary > span { font-size: .82rem; }
.checkout-page-stage .freight-requirement-row small { font-size: .82rem; }
.checkout-page-stage .checkout-progress strong { white-space: normal; line-height: 1.35; }
.checkout-page-stage .checkout-progress li { min-width: 0; }
.workstation-card-toggle:focus-visible, .workstation-inspection > summary:focus-visible,
.workstation-batch-tools > summary:focus-visible { outline: 3px solid #066add; outline-offset: 3px; }
@media (max-width: 767px) {
  .customer-journey-progress { gap: .5rem; padding: .45rem .15rem; justify-content: space-between; font-size: .72rem; }
  .customer-journey-progress li { gap: .3rem; }
  .customer-journey-progress li > span { width: 1.45rem; height: 1.45rem; flex-shrink: 0; }
  .quote-wizard-page[data-has-parts="true"] .wizard-upload-stage { display: none; }
  .workstation-body { display: flex; flex-direction: column; }
  .workstation-sidebar { order: 1; width: 100%; }
  .workstation-viewer-panel { order: 2; width: 100%; }
  .workstation-partbar { padding: .35rem; gap: .4rem; }
  .workstation-part-nav .workstation-nav-btn { display: none; }
  .workstation-part-meta .wizard-section-note, .workstation-source-details { display: none; }
  .workstation-part-name-input { font-size: .95rem; }
  .workstation-mobile-status { margin-block: .35rem; padding: .5rem .65rem; }
  .workstation-mobile-config-heading { display: none; }
  .workstation-card-copy { font-size: .8rem; line-height: 1.4; }
  .workstation-material-card { min-height: 3.4rem; }
  .workstation-material-card .material-choice-copy { font-size: .76rem; }
  .workstation-material-card .material-choice-head h6 { font-size: .85rem; }
  .workstation-material-card .material-choice-head > span { display: none; }
  .workstation-supplied-material-toggle:has(input:disabled) { display: none; }
  .critical-default-note { font-size: .76rem; margin-top: .4rem; }
  .workstation-step-actions { position: sticky; bottom: .4rem; z-index: 30; padding: .35rem; }
  .workstation-step-actions .btn { min-height: 48px; font-size: .85rem; white-space: normal; }
  .workstation-inspection { border: 1px solid #ccd7e4; border-radius: .65rem; background: #fff; }
  .workstation-inspection > summary { display: list-item; min-height: 48px; padding: .85rem; color: #0758a6; font-weight: 700; font-size: .86rem; cursor: pointer; }
  .workstation-inspection[open] { display: block; }
  .workstation-inspection[open] > :not(summary) { margin: .5rem; }
  .workstation-viewer-shell { min-height: 12rem; }
  .workstation-3d-stage { min-height: 10rem; }
  .workstation-part-tray { display: grid; grid-template-columns: 1fr; }
  .workstation-part-picker-field:not(.d-none) { display: grid; grid-column: 1 / -1; width: 100%; gap: .25rem; }
  .workstation-part-picker-field label { font-size: .78rem; color: #405770; font-weight: 700; }
  .workstation-part-picker-field select { min-height: 44px; max-width: 100%; font-size: .82rem; }
  .workstation-tray-item-add { min-height: 3rem; }
  .workstation-tray-remove { min-height: 44px; }
  .checkout-page-stage .checkout-inline-header { margin-top: .4rem; }
  .checkout-page-stage .checkout-progress { gap: .4rem; }
  .checkout-page-stage .checkout-progress li { padding: .5rem .35rem; }
  .checkout-page-stage .checkout-progress strong { font-size: .71rem; }
}
