.service-request-fields {
  min-width: 0;
  grid-column: 1 / -1;
  padding: 18px 18px 4px;
  margin: 6px 0 0;
  border: 1px solid #e0e9f5;
  border-radius: 14px;
  background: linear-gradient(145deg, #f8fbff, #fff);
}
.service-request-fields legend { padding: 0 7px; color: #29466c; font-size: 13px; font-weight: 600; }
.service-request-fields > p { margin: 0 0 10px; }
.service-request-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
.service-request-grid label { min-width: 0; margin: 10px 0 14px; }
.service-request-grid .service-field-wide { grid-column: 1 / -1; }
.service-request-optional { border-top: 1px solid #e6edf7; padding-top: 12px; margin: 2px 0 12px; }
.service-request-optional summary { width: fit-content; color: #7086a2; font-size: 12px; cursor: pointer; }
.service-field-optional { margin-left: 7px; font-size: 11px; font-weight: 400; color: #8592a5; }
.service-field-hint { display: block; margin-top: 6px; color: #7b8ba1; font-size: 11px; line-height: 1.65; }
.service-workspace-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.service-workspace-eyebrow { display: block; color: #6682a6; font-size: 11px; margin-bottom: 6px; }
.service-workspace-count { padding: 7px 10px; color: #3d6495; background: #f0f5fc; border: 1px solid #e4ecf7; border-radius: 8px; font-size: 11px; }
.service-order-specifications { margin: 20px 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 20px; }
.service-order-specifications > div { min-width: 0; }
.service-order-specifications dt { color: #7c8da4; font-size: 11px; line-height: 1.6; margin-bottom: 6px; }
.service-order-specifications dd { margin: 0; color: #344c6c; font-size: 13px; line-height: 1.8; overflow-wrap: anywhere; white-space: pre-wrap; }
.service-stage-heading { padding-top: 20px; border-top: 1px solid #e9eef6; margin-top: 20px; }
.service-stage-heading h3 { margin: 0; font-size: 14px; color: #294263; }
.service-stage-heading p { margin: 8px 0 0; }
.service-stage-heading .service-stage-boundary { color: #8c9aae; font-size: 10px; }
.service-stage-list { padding: 0; margin: 20px 0 0; list-style: none; }
.service-stage { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 12px; position: relative; padding-bottom: 22px; }
.service-stage:last-child { padding-bottom: 0; }
.service-stage:not(:last-child)::before { content: ""; position: absolute; left: 13px; top: 30px; bottom: 5px; width: 1px; background: #e5ecf6; }
.service-stage-marker { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; border: 1px solid #e2eaf5; color: #8291a7; background: #fafcff; font-size: 11px; }
.service-stage.is-complete .service-stage-marker { color: #198c72; background: #eff9f6; border-color: #d0ece3; }
.service-stage.is-current .service-stage-marker { color: #3270bc; background: #edf5ff; border-color: #c0d6f1; box-shadow: 0 0 0 4px #f3f8ff; }
.service-stage-content { min-width: 0; padding-top: 3px; }
.service-stage-title { display: flex; gap: 8px 14px; align-items: baseline; justify-content: space-between; flex-wrap: wrap; }
.service-stage-title strong { color: #344c6c; font-size: 13px; font-weight: 500; }
.service-stage-title > span { color: #8797ac; font-size: 10px; }
.service-stage.is-current .service-stage-title > span { color: #3672b6; }
.service-stage.is-complete .service-stage-title > span { color: #398d78; }
.service-stage-description { font-size: 11px; line-height: 1.8; color: #7d8ea6; margin: 5px 0 0; }
.service-stage-evidence { margin-top: 11px; padding: 12px 14px; border: 1px solid #e7edf5; border-radius: 10px; background: #f8fafd; font-size: 12px; line-height: 1.8; color: #415a78; white-space: pre-wrap; overflow-wrap: anywhere; }
.service-stage-meta { display: flex; gap: 5px 14px; flex-wrap: wrap; margin-top: 7px; color: #8b99ad; font-size: 10px; }
.service-stage-awaiting { font-size: 11px; margin: 8px 0 0; color: #8b99ad; }
.service-progress-button { margin-top: 12px; min-height: 35px; font-size: 11px; padding: 8px 12px; }
.service-stage-blocked { margin: 8px 0 18px; }
.service-list-progress { display: flex; flex-wrap: wrap; gap: 5px 12px; margin-top: 9px; color: #7c90aa; font-size: 10px; line-height: 1.7; }
.service-list-progress span:first-child { color: #507ba8; }
.service-action-stage { margin: 14px 0; padding: 14px; background: #f5f9ff; border: 1px solid #dfebfa; border-radius: 11px; }
.service-action-stage strong { color: #355d8f; font-size: 13px; }
.service-action-stage p { margin: 6px 0 0; font-size: 12px; }
#order-category-filter { min-width: 130px; }
@media (max-width: 620px) {
  .service-request-grid, .service-order-specifications { grid-template-columns: minmax(0, 1fr); }
  .service-request-fields { padding: 15px 13px 2px; }
  .service-request-grid label { margin: 8px 0 12px; }
  .service-workspace-heading { align-items: flex-start; }
  .service-stage { gap: 10px; }
  #order-category-filter { min-width: 0; }
}
