.primary-button { display: inline-flex; min-height: 38px; padding: 0 18px; align-items: center; justify-content: center; border: 0; border-radius: 9px; background: var(--green); color: white; font: inherit; font-size: 12px; font-weight: 700; }
.primary-button:hover { background: var(--green-dark); }
.cabinet-filters label { font-size: 13px; }
.cabinet-filters { display: flex; flex-wrap: wrap; gap: 14px; align-items: end; }
.cabinet-filters label { display: grid; gap: 6px; flex: 1; min-width: 150px; }
.cabinet-filters input, .cabinet-filters select, #page-size { padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.cabinet-caption { margin: 16px 24px; color: var(--muted); }
.offers-table td { white-space: normal; }
.offers-table td:first-child { min-width: 220px; }
.offers-table strong, .offers-table small { display: block; }
.offers-table small { margin-top: 5px; color: var(--muted); }
.order-suppliers { min-width: 130px; max-width: 200px; white-space: normal; overflow-wrap: anywhere; }
#dialog-retry { margin: 16px 24px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.order-composition { padding: 22px; }
.order-composition h3 { margin: 0 0 16px; font-size: 16px; }
#detail-suppliers { display: grid; gap: 18px; }
.order-supplier { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; }
.order-supplier-header { display: flex; gap: 12px; align-items: flex-start; justify-content: space-between; padding: 16px; background: var(--soft); }
.order-supplier-header > div { min-width: 0; }
.order-supplier-header h4 { margin: 0; overflow-wrap: anywhere; font-size: 15px; }
.order-supplier-header p { margin: 5px 0 0; overflow-wrap: anywhere; color: var(--muted); font-size: 11px; }
.order-supplier-message { margin: 0; padding: 12px 16px; background: #fff5df; color: #755519; font-size: 12px; }
.supplier-items { table-layout: fixed; }
.supplier-items th:first-child { width: 37%; min-width: 0; }
.supplier-items td { overflow-wrap: anywhere; font-size: 12px; }
.supplier-items .code { font-size: 11px; }
.supplier-items .price { text-align: right; }
.order-supplier-total { display: flex; gap: 10px; align-items: center; justify-content: space-between; padding: 14px 16px; border-top: 1px solid var(--line); font-size: 11px; }
.order-supplier-total span { color: var(--muted); }
.order-grand-total { display: flex; gap: 16px; align-items: center; justify-content: space-between; padding: 18px 22px; border-top: 1px solid var(--line); background: var(--soft); font-size: 14px; }
.order-grand-total strong { font-size: 22px; }
.partner-order-dialog .order-ready-actions { margin: 0; padding: 18px 22px; border-top: 1px solid var(--line); }
.partner-order-dialog .primary-button:disabled { background: var(--soft); color: var(--muted); cursor: default; }
@media (max-width: 680px) {
    .order-composition { padding: 16px; }
    .order-supplier-header { flex-wrap: wrap; }
    .order-supplier-total { align-items: flex-start; flex-direction: column; }
    .supplier-items { display: block; min-width: 0; }
    .supplier-items thead { display: none; }
    .supplier-items tbody { display: block; padding: 0; }
    .supplier-items tr { display: grid; grid-template-columns: 1fr 1fr; padding: 12px 16px; gap: 10px; border-top: 1px solid var(--line); }
    .supplier-items td { display: block; height: auto; min-width: 0; padding: 0 !important; border: 0; }
    .supplier-items td:first-child, .supplier-items td:nth-child(2) { grid-column: 1 / -1; }
    .supplier-items td::before { display: block; margin-bottom: 3px; color: var(--muted); font-size: 9px; font-weight: 500; content: attr(data-label); }
    .supplier-items td:first-child::before { display: none; }
    .supplier-items .price { text-align: left; }
    .order-grand-total { padding: 16px; }
    .intro { flex-direction: column; align-items: stretch; gap: 14px; }
    .intro .secondary-button { align-self: flex-start; }
    .topbar > div:not(.profile) { min-width: 0; flex: 1; }
    .topbar h1 { overflow-wrap: anywhere; }
    .menu-button, .logout-button { flex-shrink: 0; }
    .logout-button { margin-left: 8px; }
    .page-controls span { width: auto; min-width: 36px; }

    .cabinet-filters { display: grid; grid-template-columns: 1fr; }
    .orders-table td:nth-child(5)::before { content: 'Поставщики'; }
    .orders-table td:nth-child(6)::before { content: 'Позиций'; }
    .orders-table td:nth-child(7)::before { content: 'Упаковок'; }
    .orders-table td:nth-child(8)::before { content: 'Сумма'; }
    .orders-table td:nth-child(9)::before { content: 'Статус'; }
    .order-suppliers { max-width: none; min-width: 0; }
    .offers-table td::before { content: attr(data-label); }
    .offers-table td:first-child { grid-column: 1 / -1; min-width: 0; }
    .offers-table td { overflow-wrap: anywhere; }
}
