.purchase-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0}.purchase-intro h2{font-family:Georgia,serif;font-size:28px;margin:8px 0}.purchase-intro p{color:var(--muted)}.purchase-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:8px 0 24px}.purchase-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:20px;text-align:left;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;min-height:132px}.purchase-card:hover{border-color:var(--gold);box-shadow:0 3px 12px #0000000c}.purchase-card strong{font-size:24px;line-height:1.3}.purchase-card small{color:var(--muted)}.purchase-flow{display:flex;flex-wrap:wrap;gap:10px;padding:10px 0 20px}.purchase-flow span{display:flex;gap:8px;align-items:center;padding:10px;background:var(--surface-soft);border-radius:8px;font-size:13px}.purchase-flow b{border-radius:50%;background:var(--gold);padding:4px 8px;color:var(--ink)}.purchase-editor-table{min-width:830px}.purchase-editor-table input{min-width:78px;padding:8px}.purchase-editor-table td:first-child{min-width:210px}.purchase-editor-table small{display:block;color:var(--muted)}.purchase-receive-lines fieldset{border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:16px}.purchase-receive-lines legend{font-weight:700;padding:0 8px}.purchase-receive-lines p{font-size:13px;color:var(--muted)}.purchase-summary{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.purchase-summary>div{padding:14px;background:var(--surface-soft);border-radius:8px;min-width:120px}.purchase-summary b{display:block;font-size:18px;margin-top:6px}.purchase-doc-actions{flex-wrap:wrap}.purchase-document h3{margin-top:30px}.purchase-total{font-size:18px;text-align:right}.purchase-total strong{margin-left:18px}.purchase-signatures{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:70px;font-size:12px}.purchase-signatures span{border-top:1px solid var(--line);padding-top:8px}.purchase-allocation{display:grid;grid-template-columns:1fr 140px;align-items:center;gap:12px;margin:12px 0}progress{width:70px;accent-color:var(--gold)}#p-report-csv{display:inline-flex;padding:10px 16px;align-items:center;color:var(--ink);border:1px solid var(--line);border-radius:7px;text-decoration:none;cursor:pointer}@media(max-width:1100px){.purchase-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.purchase-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.purchase-card{padding:14px;min-height:125px}.purchase-card strong{font-size:19px}.purchase-intro{align-items:flex-start;flex-direction:column}.purchase-intro h2{font-size:24px}.purchase-signatures{grid-template-columns:1fr 1fr;gap:35px}.purchase-allocation{grid-template-columns:1fr 95px}}@media print{.purchase-document{border:0;box-shadow:none}.purchase-document .receipt-head{margin-bottom:24px}.purchase-signatures{break-inside:avoid}.purchase-doc-actions{display:none!important}}

/* Readable supplier/production grids: scroll inside the table, never split identifiers. */
.supplier-directory .table-wrap,.production-directory .table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.supplier-directory table{min-width:1400px;table-layout:auto}
.production-directory table{min-width:1640px;table-layout:auto}
.supplier-directory :is(th,td),.production-directory :is(th,td){overflow-wrap:normal;word-break:normal;max-width:none;vertical-align:middle}
.supplier-directory td:nth-child(1){min-width:145px;white-space:nowrap;font-variant-numeric:tabular-nums}
.supplier-directory td:nth-child(2){min-width:170px}.supplier-directory td:nth-child(3){min-width:135px}.supplier-directory td:nth-child(4){min-width:130px}
.supplier-directory td:nth-child(5){min-width:140px;white-space:nowrap}.supplier-directory td:nth-child(6){min-width:230px;white-space:nowrap}.supplier-directory td:nth-child(7){min-width:120px;white-space:nowrap}
.supplier-directory :is(td:nth-child(8),td:nth-child(9),td:nth-child(10)){white-space:nowrap}
.supplier-contact{color:var(--primary,var(--gold));text-decoration:underline;text-underline-offset:3px}.supplier-tax{display:block;white-space:nowrap}.supplier-profile-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:22px 0}.supplier-profile-meta dt{font-size:13px;color:var(--muted);margin-bottom:7px}.supplier-profile-meta dd{margin:0;overflow-wrap:anywhere;line-height:1.6}.supplier-profile .quick-actions{flex-wrap:wrap}
.supplier-linked-records td:first-child{white-space:nowrap}.production-directory td[data-column=entry_number]{min-width:190px;white-space:nowrap}.production-directory td[data-column=work_date]{min-width:115px;white-space:nowrap}.production-directory td[data-column=employee_number]{min-width:160px;white-space:nowrap}.production-directory td[data-column=employee_name]{min-width:220px;white-space:normal}.production-directory td[data-column=style_id]{min-width:140px}.production-directory td[data-column=operation_id]{min-width:125px}.production-directory td.erp-cell-number{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:800px){.supplier-profile-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-profile .quick-actions>button{min-height:44px}}
@media(max-width:520px){.supplier-profile-meta{grid-template-columns:minmax(0,1fr)}.supplier-directory .toolbar .search{max-width:100%}.supplier-directory .toolbar .filters{flex-wrap:wrap}.supplier-directory td,.production-directory td{padding:13px 12px}}
@media print{.supplier-directory .table-wrap,.production-directory .table-wrap{overflow:visible}.supplier-directory table,.production-directory table{min-width:0;font-size:9px}.supplier-directory td,.production-directory td{min-width:0!important;white-space:normal!important;padding:6px 4px}.supplier-directory .supplier-contact{white-space:normal;overflow-wrap:anywhere}.supplier-directory th,.production-directory th{white-space:normal}}
.supplier-directory :is(button,a),.production-directory :is(button,a){overflow-wrap:normal;word-break:normal}.supplier-directory td:last-child button{white-space:nowrap}
