/* Screen layouts only. Printed invoices, labels and cash receipts stay untouched. */
@media screen {
  #app main > .view { width:100%;max-width:none;min-width:0;container:wawi-view / inline-size; }
  #app main .card, #app main section, #app main form, #app main .grid > *,
  #app main .settings-grid > *, #app main .procurement-grid > *, .modal form > * { min-width:0; }
  #app main .table-wrap, .modal .table-wrap { width:100%;max-width:100%;min-width:0; }
  #app main .section-head, #app main .toolbar, #app main .order-actions,
  #app main .section-actions, .modal .modal-actions { flex-wrap:wrap; }
  #app main .section-head > *, #app main .toolbar > *, #app main .order-actions > *,
  #app main .proc-order-top > *, #app main .proc-order-actions > * { min-width:0;max-width:100%; }
  #app main button, #app main .secondary, .modal button { max-width:100%;white-space:normal;overflow-wrap:anywhere; }
  #app main input, #app main select, #app main textarea, .modal input, .modal select, .modal textarea { min-width:0;max-width:100%; }
  #app main p, #app main .product-meta, #app main .line > div, .modal p { overflow-wrap:anywhere; }
  #app main .toolbar > input { min-width:min(220px,100%);flex:1 1 220px; }
  #app main .order-draft-workspace { max-width:none;width:100%; }
  #app main .order-draft-workspace-toolbar { flex-wrap:wrap; }
  #app main .order-draft-workspace-toolbar .secondary { white-space:normal; }
  #app main .order-lines-card, .modal .order-lines-card { container:wawi-lines / inline-size;overflow:visible; }
  #app main .proc-catalog-quantity, #app main .proc-quantity,
  #app main .proc-edit-quantity { width:7rem;max-width:100%;padding:8px;border:1px solid var(--line); }
  #app main .catalog-product .product-name, #app main .catalog-product .product-meta { white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere; }
  #app main .catalog-facts { display:contents; }
  #app main .product-catalog-head, #app main .product-catalog-row { grid-template-columns:minmax(0,1.7fr) minmax(0,.65fr) minmax(0,.6fr) minmax(0,.85fr) minmax(200px,1.2fr); }
  #app main pre { white-space:pre-wrap;overflow-wrap:anywhere; }

  #app main .wawi-responsive-table, .modal .wawi-responsive-table,
  body[data-wawi-pos] .wawi-responsive-table { width:100%;min-width:0!important;max-width:100%;table-layout:fixed;white-space:normal; }
  #app main .wawi-responsive-table th, #app main .wawi-responsive-table td,
  .modal .wawi-responsive-table th, .modal .wawi-responsive-table td,
  body[data-wawi-pos] .wawi-responsive-table th, body[data-wawi-pos] .wawi-responsive-table td {
    display:table-cell!important;width:auto!important;min-width:0!important;max-width:none;white-space:normal;overflow-wrap:anywhere;vertical-align:top;
  }
  .wawi-responsive-table input:not([type=checkbox]):not([type=radio]), .wawi-responsive-table select { box-sizing:border-box;min-width:0;max-width:100%; }
  .wawi-responsive-table input[type=number] { width:7rem; }
  .wawi-responsive-table button, .wawi-responsive-table a.small-button { white-space:normal!important;max-width:100%;overflow-wrap:anywhere; }
  .wawi-responsive-table .invoice-actions, .wawi-responsive-table .user-actions { display:flex;flex-wrap:wrap;gap:6px; }
  .wawi-responsive-table .tag { max-width:100%;white-space:normal; }
  .wawi-responsive-table input[type=checkbox], .wawi-responsive-table input[type=radio] { flex:none;max-width:24px; }

  #app main .wawi-responsive-table.wawi-stacked, .modal .wawi-responsive-table.wawi-stacked,
  body[data-wawi-pos] .wawi-responsive-table.wawi-stacked { display:block; }
  .wawi-responsive-table.wawi-stacked > colgroup { display:none; }
  .wawi-responsive-table.wawi-stacked > thead { position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
  .wawi-responsive-table.wawi-stacked > tbody { display:block; }
  .wawi-responsive-table.wawi-stacked > tbody > tr { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;padding:16px 0;border-top:1px solid var(--line,#dfe7ef); }
  .wawi-responsive-table.wawi-stacked.wawi-single > tbody > tr { grid-template-columns:minmax(0,1fr); }
  #app main .wawi-responsive-table.wawi-stacked td, #app main .wawi-responsive-table.wawi-stacked tbody th,
  .modal .wawi-responsive-table.wawi-stacked td, .modal .wawi-responsive-table.wawi-stacked tbody th,
  body[data-wawi-pos] .wawi-responsive-table.wawi-stacked td { display:flex!important;flex-direction:column;align-items:flex-start;gap:5px;padding:0;border:0;text-align:left; }
  #app main .wawi-responsive-table.wawi-stacked td::before, .modal .wawi-responsive-table.wawi-stacked td::before,
  body[data-wawi-pos] .wawi-responsive-table.wawi-stacked td::before { content:attr(data-label);display:block;position:static;color:var(--muted,#61708a);font-size:11px;font-weight:800;line-height:1.4;letter-spacing:.03em;text-transform:uppercase; }
  .wawi-responsive-table.wawi-stacked [data-wawi-kind=primary], .wawi-responsive-table.wawi-stacked .wawi-full-cell { grid-column:1/-1; }
  .wawi-responsive-table.wawi-stacked [data-wawi-kind=choice] { justify-content:flex-start; }
  .wawi-responsive-table.wawi-stacked td > br { display:none; }
  .wawi-responsive-table.wawi-stacked td > small { display:block; }
  #app main .wawi-responsive-table.wawi-stacked td > span { position:static; }
  .wawi-responsive-table.wawi-stacked td > :is(div,span,b,small,a,label) { min-width:0;max-width:100%; }
  #app main .wawi-responsive-table [hidden], .modal .wawi-responsive-table [hidden], body[data-wawi-pos] .wawi-responsive-table [hidden] { display:none!important; }

  @media (min-width:901px) { #app { grid-template-columns:255px minmax(0,1fr); } }
  @container wawi-view (max-width:1000px) {
    .procurement-controls { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .invoice-live-filter { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .invoice-live-filter label:first-child { grid-column:1/-1; }
    .settings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .product-catalog-head { display:none; }
    #app main .product-catalog-row { grid-template-columns:minmax(0,1fr) auto; }
    .catalog-product,.catalog-facts { grid-column:1; }
    #app main .catalog-facts { display:grid;grid-template-columns:repeat(3,minmax(0,1fr)); }
    .catalog-label { display:block; }
    .catalog-actions { grid-column:2;grid-row:1 / span 2; }
  }
  @container wawi-view (max-width:850px) {
    .grid,.scan-layout,.procurement-grid,.inventory-layout,.email-grid,.assistant-layout,.statistics-grid { grid-template-columns:minmax(0,1fr); }
    .order-draft-workspace .order-draft-form { grid-template-columns:minmax(0,1fr)!important; }
    .order-draft-side { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .order-draft-total { grid-column:1/-1; }
    .wiki-layout { grid-template-columns:minmax(0,1fr); }
    .delivery-address-tools { grid-template-columns:minmax(0,1fr); }
    .order-live-filter { grid-template-columns:minmax(0,1fr) minmax(130px,.65fr); }
    .order-live-filter .checkbox-inline { white-space:normal; }
  }
  @container wawi-view (max-width:550px) {
    .settings-grid,.procurement-controls,.invoice-live-filter,.order-draft-side,.discount-group-columns,.order-live-filter { grid-template-columns:minmax(0,1fr); }
    .proc-catalog-controls,.order-draft-workspace-toolbar { flex-direction:column;align-items:stretch; }
    #app main .product-catalog-row { grid-template-columns:minmax(0,1fr); }
    .catalog-product,.catalog-facts,.catalog-actions { grid-column:1;grid-row:auto; }
    #app main .catalog-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .catalog-actions { justify-self:stretch; }
    .order-draft-workspace .order-draft-footer .primary { min-width:0;width:100%; }
    .inventory-toolbar label { min-width:0; }
  }
  @container wawi-lines (max-width:740px) {
    :is(#app main,.modal) .order-position-header { display:none; }
    :is(#app main,.modal) .order-draft-form .selected-order-line { grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px; }
    :is(#app main,.modal) .order-draft-form .selected-order-line .position-product { grid-column:1/-1; }
    :is(#app main,.modal) .order-draft-form .selected-order-line :is(.position-price,.position-tax,.position-discount,.position-quantity,.position-total) { display:grid;gap:4px;min-width:0; }
    :is(#app main,.modal) .order-draft-form .selected-order-line :is(.position-price,.position-tax,.position-discount,.position-quantity,.position-total)::before { content:attr(data-label);font-size:11px;color:var(--muted);font-weight:800; }
    :is(#app main,.modal) .order-draft-form .selected-order-line .position-discount { grid-template-columns:1fr; }
    :is(#app main,.modal) .order-draft-form .selected-order-line .position-total { text-align:left; }
  }
  body[data-wawi-pos] .pos-layout > * { min-width:0; }
  body[data-wawi-pos] .product { min-width:0; }
  body[data-wawi-pos] .product b, body[data-wawi-pos] .product small { overflow-wrap:anywhere; }
}
@media print { .wawi-responsive-table > colgroup[data-wawi-columns] { display:none!important; } }
