.shipping-dialog { width: min(640px, calc(100vw - 32px)); max-height: min(90dvh, 900px); box-sizing: border-box; border: 2px solid #075bd8; border-radius: 10px; padding: 22px; color: #172a3e; background: #fff; overflow: auto; box-shadow: 0 18px 80px #0b203b55; }
.shipping-dialog::backdrop { background: #0b1d36a6; }
.shipping-order-dialog { width: min(1000px, calc(100vw - 24px)); }
.shipping-order-dialog [hidden] { display: none !important; }
.shipping-order-results { display: grid; gap: 8px; margin: 12px 0; }
.shipping-order-result { text-align: left; padding: 12px; border: 1px solid #93aed0; border-left: 4px solid #075bd8; background: #f4f8ff; border-radius: 5px; cursor: pointer; min-height: 44px; }
.shipping-order-selected { border-bottom: 2px solid #075bd8; padding-bottom: 10px; font-weight: 700; }
.shipping-order-lines { display: grid; gap: 12px; }
.shipping-order-line { display: grid; grid-template-columns: minmax(0, 1fr) minmax(140px, 180px); gap: 8px 18px; border: 1px solid #a7bdd9; padding: 14px; border-radius: 6px; background: #f8faff; }
.shipping-order-line > label:first-child, .shipping-order-line-summary { grid-column: 1 / -1; }
.shipping-order-line > label:first-child { display: flex; flex-direction: row; align-items: center; min-height: 44px; gap: 10px; }
.shipping-order-line input[type="checkbox"] { width: 20px; height: 20px; flex-shrink: 0; }
.shipping-order-line-summary { margin: 0; font-size: 13px; color: #52667b; }
.shipping-order-options { margin: 18px 0; display: grid; gap: 12px; }
.shipping-order-options[hidden], .shipping-order-review[hidden] { display: none; }
.shipping-order-review { border: 2px solid #075bd8; border-radius: 6px; padding: 14px; background: #eff5ff; margin-top: 14px; }
.shipping-order-review h3 { margin-top: 0; }
.shipping-order-table { width: 100%; border-collapse: collapse; }
.shipping-order-table th, .shipping-order-table td { padding: 10px; text-align: left; border-bottom: 1px solid #bdcce0; }
@media (max-width: 600px) { .shipping-order-line { grid-template-columns: 1fr; } .shipping-order-table { font-size: 12px; } }
.shipping-dialog h2 { margin: 0 0 14px; font-size: 24px; }
.shipping-dialog-body { display: grid; gap: 14px; }
.shipping-dialog label { display: grid; gap: 6px; font-weight: 650; }
.shipping-dialog input:not([type=radio]):not([type=checkbox]), .shipping-dialog textarea, .shipping-dialog select, .shipping-report-toolbar select { box-sizing: border-box; width: 100%; min-height: 42px; border: 1px solid #91a8c1; border-radius: 5px; padding: 9px 12px; font: inherit; background: #fff; color: #132c45; }
.shipping-dialog input[type=checkbox] { width: 22px; height: 22px; margin: 0; accent-color: #075bd8; }
.shipping-dialog textarea { min-height: 90px; resize: vertical; }
.shipping-dialog .order-dialog-actions { position: sticky; bottom: -22px; display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; padding: 16px 0 4px; background: #fff; border-top: 1px solid #cfdaea; margin-top: 18px; }
.shipping-number-options { display: flex; flex-wrap: wrap; gap: 16px; padding: 12px; border: 1px solid #b6c9e2; border-radius: 6px; }
.shipping-number-options label { display: flex; align-items: center; gap: 8px; }
.shipping-number-options input { width: 18px; height: 18px; margin: 0; accent-color: #075bd8; }
.shipping-number-options legend { padding: 0 6px; font-weight: 700; }
.shipping-address-selection { border: 1px solid #9eb9dc; border-left: 4px solid #075bd8; border-radius: 6px; padding: 12px; background: #f7faff; }
.shipping-address-selection summary { cursor: pointer; color: #153c67; font-weight: 750; }
.shipping-address-selection[open] summary { margin-bottom: 12px; }
.shipping-address-selection > label { margin-top: 10px; }
.shipping-address-selection > .shipping-address-review { display: flex; align-items: center; gap: 10px; color: #7a4300; background: #fff4d9; border: 1px solid #e0bd69; border-radius: 5px; padding: 10px; }
.shipping-dialog [hidden], .shipping-billable-panel[hidden] { display: none !important; }
.shipping-primary, .shipping-document-link { border: 1px solid #075bd8 !important; border-radius: 5px; padding: 9px 14px; background: #075bd8 !important; color: #fff !important; font: inherit; font-weight: 650; text-align: center; text-decoration: none; cursor: pointer; }
.shipping-primary:disabled { opacity: .5; cursor: default; }
.shipping-balance { border-left: 3px solid #075bd8; background: #eef5ff; padding: 10px 12px; margin: 0; }
.shipping-error { color: #a52020; margin: 0; font-weight: 650; }
.shipping-error:empty, .shipping-progress:empty { display: none; }
.shipping-warning { color: #8b4e00; background: #fff4d9; border-left: 3px solid #c58900; padding: 8px 12px; }
.shipping-report-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; padding: 16px; background: #f6f9fd; border: 1px solid #b7cbe4; border-radius: 7px; margin: 8px 0 16px; }
.shipping-report-toolbar > div { flex: 1; min-width: 230px; }
.shipping-report-toolbar small { display: block; margin-top: 5px; color: #53677d; }
.shipping-report-toolbar label { min-width: 140px; font-size: 13px; }
.shipping-table-scroll { overflow: auto; max-width: 100%; }
.shipping-billable-table { width: 100%; border-collapse: collapse; min-width: 900px; font-size: 14px; }
.shipping-billable-table th { padding: 13px 12px; text-align: left; background: #102a43; color: #fff; }
.shipping-billable-table td { padding: 14px 12px; border-bottom: 1px solid #c9d8e9; vertical-align: top; white-space: pre-line; line-height: 1.55; }
.shipping-billable-table tr:nth-child(even) { background: #f4f8fd; }
.shipping-table-actions { min-width: 180px; }
.shipping-table-actions > * { display: block; margin-bottom: 7px; }
.shipping-table-actions button, .shipping-history-actions button, .shipping-document-archive button, .shipping-report-toolbar button, .shipping-pending button { border: 1px solid #9bb6d8; border-radius: 5px; padding: 8px 12px; color: #16416d; background: #fff; cursor: pointer; font: inherit; }
.shipping-history-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
#shippingDocumentArchive { border: 1px solid #b6cae4; border-radius: 6px; margin-bottom: 14px; padding: 12px; background: #f5f9ff; }
#shippingDocumentArchive summary { cursor: pointer; color: #154983; font-weight: 700; }
.shipping-document-archive > div, .shipping-pending-row { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 10px 0; border-bottom: 1px solid #d2dfef; }
.shipping-document-archive > div > span, .shipping-pending-row > span { flex: 1; min-width: 220px; }
.shipping-pending { border: 1px solid #d5ae54; border-left: 4px solid #c48a16; background: #fff9ea; padding: 14px; margin-bottom: 16px; }
@media (max-width: 600px) { .shipping-dialog { padding: 16px; } .shipping-number-options { flex-direction: column; } .shipping-dialog .order-dialog-actions { bottom: -16px; } }
@media print { .shipping-dialog, #shipmentBillablePanel, #shippingDocumentArchive { display: none !important; } }

.shipping-invoice-row { border: 1px solid var(--border-color, #b6c3d0); border-radius: 8px; padding: 16px; margin: 12px 0; }
.shipping-invoice-row h3 { margin: 0 0 10px; }
.shipping-invoice-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.shipping-invoice-actions button, .shipping-invoice-actions a { min-height: 44px; padding: 10px 14px; }
.shipping-invoices-panel { overflow-wrap: anywhere; }
.shipping-invoice-actions :focus-visible, .shipping-dialog :focus-visible { outline: 3px solid #185db7; outline-offset: 3px; }

.shipping-correction-dialog { max-width: 680px; width: min(94vw, 680px); max-height: 90dvh; overflow: auto; }
.shipping-correction-impact { border: 1px solid #a9b7c6; border-radius: 8px; padding: 12px; margin-bottom: 12px; }
.shipping-correction-dialog textarea { min-height: 88px; width: 100%; }
.shipping-correction-dialog .order-dialog-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.shipping-correction-dialog button { min-height: 44px; }
.shipping-reversed-status { font-weight: 600; border-left: 4px solid #66717d; padding: 8px; }
.shipping-delivery-details { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; border: 1px solid #a9bfd9; border-left: 4px solid #0054ff; border-radius: 5px; padding: 14px; margin: 12px 0; }
.shipping-delivery-details legend { font-weight: 700; color: #163b62; padding: 0 6px; }
.shipping-delivery-details label { display: grid; gap: 6px; min-width: 0; }
.shipping-delivery-details label:first-of-type, .shipping-delivery-details p { grid-column: 1 / -1; }
.shipping-delivery-details input, .shipping-delivery-details select { width: 100%; min-height: 44px; }
.shipping-archived-correction { border: 1px solid #b6c8dc; border-left: 4px solid #6b7e93; border-radius: 5px; padding: 14px; margin: 10px 0; background: #f7f9fc; }
#archivedShipmentCorrections { border: 1px solid #b6c8dc; border-radius: 5px; padding: 12px; margin-top: 14px; }
#archivedShipmentCorrections summary { cursor: pointer; font-weight: 700; color: #244d79; }
.shipping-archived-correction button { margin-top: 10px; min-height: 44px; padding: 9px 14px; }
@media(max-width:600px) { .shipping-delivery-details { grid-template-columns: minmax(0,1fr); } }
