/* Application layout only. Physical PDF/ticket/label measurements are untouched. */
@media screen {
  :is(#app,#modalRoot,#login) :is(button,.btn,[role="button"]) {
    min-width: 0;
    max-width: 100%;
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: normal;
    line-height: 1.3;
    flex-shrink: 1;
    box-sizing: border-box;
  }
  :is(#app,#modalRoot,#login) .btn {
    height: auto;
    min-height: 36px;
    text-align: center;
  }
  :is(#app,#modalRoot) button > :is(span,b,strong) {
    min-width: 0;
    max-width: 100%;
    white-space: inherit;
    overflow-wrap: anywhere;
  }
  :is(#app,#modalRoot) :is(.grid-2f,.form2,.quote-service-grid,.quote-prospect-grid,.quote-filterbar) > *,
  :is(#app,#modalRoot) :is(.toolbar,.work-actions,.shop-card-actions,.quote-card-actions,.quote-detail-actions,.quote-toolbar-actions,.quote-inline-actions,.cart-actions,.project-tabs,.sa99-actions,.of98-actions,.bank99-actions) > * {
    min-width: 0;
    max-width: 100%;
  }
  :is(#app,#modalRoot) :is(.work-actions,.shop-card-actions,.quote-card-actions,.quote-detail-actions,.quote-toolbar-actions,.quote-inline-actions,.cart-actions,.project-tabs,.sa99-actions,.of98-actions,.bank99-actions) {
    flex-wrap: wrap;
  }
  :is(#app,#modalRoot) .toolbar > div[style*="flex"] { flex-wrap: wrap; }
  :is(#app,#modalRoot) :is(.grid-2f,.form2) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #modalRoot :is(.modal,.oa-dialog,.image-lightbox-dialog) { min-width: 0; max-width: 100%; }
  #modalRoot :is(.modal-h,.modal-b,.oa-head,.oa-scroll) { min-width: 0; overflow-wrap: anywhere; }
  #modalRoot :is(.modal-h,.oa-head) > :not(button) { min-width: 0; }
  #modalRoot :is(.modal-close,.oa-close,.image-lightbox-close) { flex: 0 0 32px; min-width: 32px; }
  #modalRoot :is(input,select,textarea) { min-width: 0; max-width: 100%; box-sizing: border-box; }
  .dialog-status-v99 { margin: 10px 18px 18px; padding: 10px 12px; border: 1px solid #c4dcd8; border-radius: 10px; background: #f1f8f6; color: #214c45; font-size: 13px; }
}
@media screen and (max-width: 720px) {
  :is(#app,#modalRoot) :is(.grid-2f,.form2) { grid-template-columns: minmax(0,1fr); }
  #modalRoot .overlay { padding: 10px; }
  #modalRoot :is(.modal,.oa-dialog) { max-height: calc(100dvh - 20px); }
  :is(#app,#modalRoot) :is(.cart-actions,.quote-card-actions,.quote-toolbar-actions,.quote-detail-actions,.work-actions) > .btn { flex: 1 1 150px; }
}
@media screen and (max-width: 400px) {
  :is(#app,#modalRoot,#login) .btn { padding-inline: 10px; }
  #modalRoot :is(.modal-h,.modal-b) { padding-inline: 12px; }
  :is(#app,#modalRoot) :is(.cart-actions,.sa99-actions,.of98-actions,.bank99-actions) > .btn { flex-basis: 100%; }
}
