/* Material: deliberately scoped, square panels and the existing neutral/orange palette. */
#materialProcurement { min-width: 0; }
#materialProcurement :where(h3,h4,p) { margin: 0; }
#materialProcurement :where(h3,h4) { line-height: 1.25; overflow-wrap: anywhere; }
#materialProcurement h3 { font-size: 1.25rem; }
#materialProcurement h4 { font-size: 1.05rem; }
#materialProcurement :where(label,form,section,article,aside,fieldset,div) { min-width: 0; }
#materialProcurement label { display: grid; gap: 7px; font-size: .9rem; }
#materialProcurement label.checkline { display: flex; align-items: center; gap: 10px; }
#materialProcurement input[type=checkbox] { width: 19px; height: 19px; flex: 0 0 19px; accent-color: var(--primary); }
#materialProcurement :where(input,select,textarea) { border: 1px solid var(--line-strong); border-radius: 0; background: var(--bg); color: var(--text); }
#materialProcurement textarea { resize: vertical; }
#materialProcurement .btn { border-radius: 0; white-space: normal; min-height: 44px; }
#materialProcurement .btn-primary { background: rgba(0,0,0,.16); border: 1px solid var(--primary); color: var(--text); }
#materialProcurement .btn-primary:hover { background: var(--primary); color: #fff; }
#materialProcurement .btn:disabled { cursor: not-allowed; opacity: .5; }
.mat-toolbar,.mat-tabs,.mat-order-head { display: flex; gap: 10px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.mat-tabs { justify-content: flex-start; }
.mat-project { display: grid; gap: 12px; margin: 18px 0; max-width: 620px; }
.mat-stack { display: grid; gap: 16px; align-content: start; }
.mat-shop-layout,.mat-master-layout { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(300px,1fr); gap: 20px; align-items: start; }
.mat-master-layout { grid-template-columns: minmax(0,1.5fr) minmax(250px,1fr); }
.mat-two { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; align-items: start; }
.mat-box,.mat-product { display: grid; align-content: start; gap: 14px; padding: 22px; border: 1px solid var(--line-strong); border-radius: 0; background: var(--surface); }
.mat-products { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 16px; }
.mat-conversion { color: var(--primary); font-weight: 650; }
.mat-add { display: flex; align-items: end; gap: 10px; }
.mat-add label { flex: 1; }
.mat-add input { min-width: 0; }
.mat-cart-line { display: grid; gap: 10px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.mat-cart-line:first-child { padding-top: 0; }
.mat-cart-line:last-child { margin-bottom: 16px; }
.mat-delivery { display: grid; gap: 10px; border: 1px solid var(--line); padding: 16px; overflow-wrap: anywhere; }
.mat-message { margin: 16px 0; padding: 16px; border: 1px solid var(--primary); background: rgba(240,90,11,.06); overflow-wrap: anywhere; }
.mat-prewrap { white-space: pre-wrap; overflow-wrap: anywhere; }
#materialProcurement details { border-top: 1px solid var(--line); padding-top: 12px; }
#materialProcurement details > :not(summary) { margin-top: 12px; }
#materialProcurement summary { cursor: pointer; font-weight: 600; padding: 5px 0; }
.mat-office-tabs { margin-bottom: 18px; }
.mat-offer { border: 1px solid var(--line-strong); padding: 16px; margin: 0; }
.mat-offer legend { padding: 0 8px; font-weight: 650; }
.mat-offer > .btn { margin-top: 12px; }
.mat-assignment { display: grid; gap: 12px; border: 1px solid var(--line); padding: 16px; }
.mat-checks { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.mat-order-lines { margin: 0; padding-left: 22px; line-height: 1.7; }
.mat-approval { border-top: 1px solid var(--primary); padding-top: 18px; }
.mat-confirm { width: min(620px,calc(100vw - 28px)); max-height: calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); padding: 24px; border: 1px solid var(--primary); border-radius: 0; color: var(--text); background: var(--bg); overflow-y: auto; }
.mat-confirm::backdrop { background: rgba(0,0,0,.75); }
.mat-confirm .btn { border-radius: 0; }
.mat-confirm ul { padding-left: 22px; line-height: 1.7; }
@media (max-width: 1200px) {
  .mat-products { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 760px) {
  .mat-shop-layout,.mat-master-layout,.mat-two { grid-template-columns: minmax(0,1fr); }
  .mat-box,.mat-product { padding: 18px; }
  .mat-checks { grid-template-columns: minmax(0,1fr); }
  .mat-add .btn { padding-left: 12px; padding-right: 12px; }
  .mat-toolbar > .mat-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); width: 100%; }
  .mat-cart { border-top: 2px solid var(--primary); }
}
