.purchase-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px}
.purchase-table .purchase-invoice-list{table-layout:fixed;min-width:1120px}.purchase-list-number{width:132px}.purchase-list-date{width:92px}.purchase-list-status{width:98px}.purchase-list-money{width:112px}.purchase-list-vat{width:92px}.purchase-list-actions{width:154px}.purchase-invoice-list td:first-child,.purchase-invoice-list td:nth-child(3){overflow-wrap:anywhere}.purchase-invoice-list .purchase-list-retention.has-retention{color:#7752a2;font-weight:700;background:#f8f4fc}.purchase-no-retention{color:#94a2b4}
.purchase-metrics article{border:1px solid #dfe7f0;border-radius:15px;background:white;padding:22px;display:grid;gap:9px}
.purchase-metrics small{color:#65788f;font-size:10px;letter-spacing:.06em}.purchase-metrics strong{font-size:25px;color:#0b63ce}.purchase-metrics span{font-size:13px;color:#63758b}
.purchase-table{overflow:auto;width:100%}.purchase-table table{border-collapse:collapse;width:100%;min-width:820px}.purchase-table th{background:#f8fafc;color:#718198;font-size:10px;padding:13px 15px;text-align:left;border-bottom:1px solid #e5ebf3;white-space:nowrap}.purchase-table td{padding:14px 15px;border-bottom:1px solid #edf0f4;vertical-align:middle;font-size:13px}.purchase-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.purchase-table tr[data-purchase],.purchase-table tr[data-supplier],.purchase-table tr[data-open-purchase]{cursor:pointer}.purchase-table tbody tr:hover{background:#edf5ff}.purchase-table small{display:block;margin-top:5px;color:#74859b}.purchase-table td:nth-child(3){min-width:180px}.purchase-actions{white-space:nowrap}.purchase-actions a{margin-left:12px;color:#286add}.purchase-empty{padding:22px;color:#718198}
.purchase-modal{width:min(1080px,95vw);max-height:92vh;overflow-y:auto}.purchase-modal section{margin-top:22px;padding-bottom:22px;border-bottom:1px solid #e5ebf3}.purchase-modal h3{margin:0 0 14px;font-size:17px}.purchase-fiscal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.purchase-fiscal-grid label,.purchase-total label,.purchase-supplier-search{display:flex;flex-direction:column;gap:7px;color:#60718a;font-size:12px;font-weight:600}.purchase-fiscal-grid input,.purchase-fiscal-grid select,.purchase-supplier-search input,.purchase-total input{width:100%;padding:11px;border:1px solid #dce3ec;border-radius:8px;box-sizing:border-box}.purchase-fiscal-grid [name=supplier_address]{min-width:0}.purchase-hint{font-size:12px;color:#6a7d94;line-height:1.6;margin:12px 0}.purchase-import{background:#f5f9ff;border:1px solid #dbe7f5!important;padding:18px;border-radius:12px}.purchase-import p{font-size:13px;color:#63758b;line-height:1.5}.purchase-import-actions{display:flex;align-items:center;gap:16px;margin-top:14px}.purchase-import-actions span{font-size:12px;color:#61738b}.purchase-total{display:flex;justify-content:flex-end;align-items:flex-end;gap:24px;margin-top:20px}.purchase-total strong{color:#1268d7;padding-bottom:12px;font-size:16px;white-space:nowrap}.purchase-observations{display:flex;flex-direction:column;gap:8px;margin-top:22px;font-size:12px;color:#60718a}.purchase-observations textarea{min-height:80px;border:1px solid #dce3ec;border-radius:8px;padding:12px}.purchase-ocr-text{margin-top:18px;color:#6a7d94;font-size:12px}.purchase-ocr-text pre{max-height:220px;overflow:auto;white-space:pre-wrap;background:#f8fafc;padding:15px}.purchase-modal footer{gap:12px}.purchase-table input{width:100%;min-width:75px;text-align:right;box-sizing:border-box;padding:9px;border:1px solid #dce3ec;border-radius:6px}
@media(max-width:900px){.purchase-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-fiscal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-import-actions,.purchase-total{flex-wrap:wrap}}
@media(max-width:600px){.purchase-metrics,.purchase-fiscal-grid{grid-template-columns:1fr}.purchase-modal{width:96vw;padding:18px}}
.purchase-modal{width:min(1380px,95vw)}
.purchase-ocr-option{display:flex;align-items:center;gap:9px;margin-top:14px;font-size:12px;color:#526782}.purchase-ocr-option input{width:auto}.purchase-import-actions{flex-wrap:wrap}.purchase-import-actions #purchaseProgress{max-width:650px;line-height:1.5}
.purchase-line-table{table-layout:fixed;min-width:1320px!important}.purchase-line-table .purchase-description-col{width:auto}.purchase-line-table .purchase-qty-col{width:84px}.purchase-line-table .purchase-price-col{width:106px}.purchase-line-table .purchase-rate-col{width:74px}.purchase-line-table .purchase-amount-col{width:112px}.purchase-line-table .purchase-remove-col{width:40px}
.purchase-table .purchase-line-table td,.purchase-table .purchase-line-table th{padding:10px 8px}.purchase-table .purchase-line-table td:nth-child(3){min-width:0}.purchase-line-table td:first-child{min-width:250px}.purchase-line-table textarea{width:100%;min-height:58px;padding:9px;box-sizing:border-box;border:1px solid #dce3ec;border-radius:6px;resize:vertical;font:inherit}.purchase-line-table input{min-width:0}.purchase-detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:15px}.purchase-reading-notice:empty{display:none}.purchase-reading-notice{padding:12px 15px;margin-bottom:14px;background:#fff7e8;border:1px solid #f0dab2;border-radius:8px;font-size:12px;line-height:1.6;color:#835a14}.purchase-detail-mismatch{color:#ae4b35}
.purchase-learning-controls{background:#f4f8ff;border:1px solid #dce6fa;border-radius:12px;padding:14px 18px;margin:14px 0 20px}
.purchase-learning-controls .purchase-hint{margin:8px 0 0;line-height:1.5}
.purchase-learning-controls .purchase-ocr-option{margin:0;font-weight:600;gap:10px}
.purchase-modal>#purchaseError{position:sticky;top:0;z-index:4;flex-shrink:0}
