.shipment-hero { align-items: center; }
.shipment-hero-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.shipment-hero h1 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(36px, 4vw, 58px); line-height: 1.02; letter-spacing: -.035em; margin: 6px 0 14px; }
.shipment-summary { margin-bottom: 20px; }
.shipment-suggestions { display: flex; align-items: flex-start; gap: 28px; padding: 22px 24px; margin-bottom: 20px; border: 1px solid #dddbd2; border-radius: 16px; background: #fff9ed; }
.shipment-suggestions h2 { font-family: Georgia, serif; font-size: 23px; margin: 5px 0 0; }
.suggestion-heading { flex: 0 0 240px; }
.suggestion-heading > p:last-child { color: var(--muted); font-size: 11px; line-height: 1.45; }
.suggestion-list { display: flex; flex: 1; gap: 10px; overflow: auto; padding-bottom: 2px; }
.suggestion-item { min-width: 340px; max-width: 420px; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: 8px 10px; padding: 12px; border: 1px solid #eadfc6; border-radius: 11px; background: #fff; }
.suggestion-name { min-width: 0; }
.suggestion-item strong, .suggestion-item small { display: block; overflow-wrap: anywhere; white-space: normal; }
.suggestion-item small { color: var(--muted); font-size: 11px; line-height: 1.4; margin-top: 3px; }
.suggestion-action { display: block; margin-top: 8px; color: var(--forest-2); font-size: 14px; font-weight: 800; line-height: 1.35; }
.suggestion-facts { display: block; margin-top: 4px; color: #4f6156; font-size: 11px; line-height: 1.5; }
.suggestion-covered { grid-column: 1/-1; padding: 9px 11px; border-radius: 7px; background: #e8f2eb; color: #28513b; font-size: 11px; font-weight: 800; }
.quick-add-form { grid-column: 1 / -1; display: grid; grid-template-columns: 1.2fr .7fr auto; gap: 6px; align-items: end; padding-top: 5px; }
.quick-add-form label > span { display: block; margin-bottom: 3px; color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.quick-add-form select, .quick-add-form input { width: 100%; height: 34px; border: 1px solid #d9d8d1; border-radius: 7px; background: #fafaf7; padding: 0 7px; font: inherit; font-size: 11px; }
.quick-add-form .button { min-height: 34px; padding: 0 10px; white-space: nowrap; }
.quick-quantity small { margin-top: 4px; font-size: 9px; }
.pallet-shortcuts { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 5px; }
.pallet-shortcuts button { padding: 5px 8px; border: 1px solid #b9cbbf; border-radius: 999px; background: #eef5f0; color: var(--forest-2); font: 800 9px var(--utility); cursor: pointer; }
.pallet-shortcuts button:hover { border-color: var(--forest); background: #dfece4; }
.shipment-group-toolbar { display: grid; grid-template-columns: 1fr minmax(190px,260px) 150px auto; gap: 8px; align-items: center; margin-bottom: 14px; padding: 13px 15px; border: 1px solid #d5ddd8; border-radius: 12px; background: #eef4f0; }
.shipment-group-toolbar strong, .shipment-group-toolbar small { display: block; }
.shipment-group-toolbar small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.shipment-group-toolbar input, .shipment-group-toolbar select { width: 100%; height: 38px; border: 1px solid #cbd5cf; border-radius: 8px; background: #fff; padding: 0 10px; font: inherit; font-size: 12px; }
.kanban-wrap { overflow-x: auto; padding-bottom: 18px; }
.kanban-board { display: grid; grid-template-columns: repeat(7, minmax(300px, 1fr)); gap: 12px; min-width: 2200px; }
.kanban-column { min-height: 520px; border: 1px solid #dfded7; border-radius: 16px; background: #edede8; overflow: hidden; }
.kanban-column > header { display: flex; align-items: center; justify-content: space-between; padding: 15px 16px; border-bottom: 1px solid #d9d8d1; background: #f6f5f0; }
.kanban-column > header h2 { font-size: 13px; margin: 0; }
.kanban-column > header div > small { display: block; max-width: 235px; margin-top: 4px; color: var(--muted); font-size: 9px; line-height: 1.35; }
.kanban-column > header span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 999px; background: #e2e1da; color: #626761; font-size: 11px; font-weight: 800; }
.kanban-dropzone { min-height: 470px; padding: 10px; transition: background .15s ease; }
.kanban-dropzone.is-over { background: #dfe9e2; }
.shipment-card { position: relative; padding: 14px; margin-bottom: 9px; border: 1px solid #d9d8d1; border-radius: 12px; background: #fff; box-shadow: 0 5px 16px rgba(29,45,36,.05); cursor: grab; }
.shipment-card:active { cursor: grabbing; }
.shipment-card.is-dragging { opacity: .35; transform: rotate(1deg); }
.shipment-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.shipment-card-heading time { color: var(--muted); font-size: 11px; font-weight: 750; }
.load-chip { display: inline-block; padding: 4px 7px; border-radius: 999px; background: var(--mint); color: var(--forest-2); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.shipment-card h3 { font-family: Georgia, serif; font-size: 18px; line-height: 1.15; margin: 13px 0 4px; }
.group-card-check { display: inline-flex; align-items: center; gap: 5px; margin-top: 10px; color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; cursor: pointer; }
.shipment-lines { display: grid; gap: 7px; margin: 10px 0 0; padding: 0; list-style: none; }
.shipment-lines li { display: flex; justify-content: space-between; gap: 10px; padding: 9px; border: 1px solid #e6e5de; border-radius: 8px; background: #fafaf7; }
.shipment-lines strong, .shipment-lines small { display: block; overflow-wrap: anywhere; }
.shipment-lines strong { font-size: 11px; }
.shipment-lines small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.35; }
.shipment-lines b { flex: 0 0 auto; font-size: 10px; white-space: nowrap; }
.fnsku-line-warning { display: block; width: fit-content; margin-top: 6px; padding: 3px 5px; border-radius: 4px; background: #fff0cc; color: #704b00; font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .035em; }
.fnsku-label-link { display: block; margin-top: 4px; color: var(--forest); font-size: 9px; font-weight: 800; overflow-wrap: anywhere; }
.fnsku-label-missing { display: block; margin-top: 4px; color: var(--red); font-size: 9px; font-weight: 750; }
.shipment-sku, .shipment-reference, .shipment-carrier { margin: 0; color: var(--muted); font-size: 11px; }
.shipment-reference { margin-top: 7px; color: var(--ink); font-weight: 750; }
.shipment-identifiers { display: grid; gap: 6px; margin: 13px 0; }
.shipment-identifiers div { display: grid; grid-template-columns: 55px 1fr; gap: 8px; padding: 7px 8px; border-radius: 7px; background: #f2f7f4; }
.shipment-identifiers div.missing { background: #f8e8e5; }
.shipment-identifiers dt { font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }
.shipment-identifiers dd { display: flex; align-items: center; gap: 6px; min-width: 0; margin: 0; font-size: 11px; font-weight: 750; }
.shipment-identifier-value { flex: 1; min-width: 0; overflow-wrap: anywhere; cursor: text; user-select: text; -webkit-user-select: text; }
.copy-identifier { flex: 0 0 auto; padding: 4px 6px; border: 1px solid #b9cec1; border-radius: 4px; background: #fff; color: var(--forest); font: inherit; font-size: 10px; cursor: pointer; }
.copy-identifier:hover { background: var(--mint); }
.copy-identifier:focus-visible { outline: 2px solid var(--forest); outline-offset: 2px; }
.shipment-card footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; padding: 10px 0 0; border-top: 1px solid #eeede8; text-align: left; }
.shipment-card footer small { max-width: 165px; color: #8a8d88; font-size: 9px; line-height: 1.35; }
.shipment-card footer a { color: var(--forest); font-size: 10px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.shipment-attachments { display: grid; gap: 5px; padding: 9px; margin: 10px 0; border-radius: 8px; background: #eef4f0; }
.shipment-attachments strong { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .05em; }
.shipment-attachments a { overflow-wrap: anywhere; color: var(--forest); font-size: 10px; font-weight: 750; }
.stage-fallback { margin-top: 9px; }
.stage-fallback select { width: 100%; height: 32px; border: 1px solid #d9d8d1; border-radius: 7px; background: #fafaf7; padding: 0 8px; color: var(--ink); font-size: 11px; }
.kanban-empty { display: grid; place-items: center; min-height: 100px; border: 1px dashed #cac9c1; border-radius: 11px; color: #969992; font-size: 11px; }
.kanban-dropzone.is-over .kanban-empty { border-color: var(--forest); color: var(--forest); }
.kanban-column[data-stage="complete"] { background: #e5efe8; border-color: #c2d3c7; }
.kanban-column[data-stage="complete"] > header { background: #edf5ef; border-bottom-color: #cbdacf; }
.kanban-column[data-stage="complete"] .shipment-card { box-shadow: inset 4px 0 0 #73967d, 0 5px 16px rgba(29,45,36,.05); }
.board-readonly { padding: 11px 14px; border-radius: 9px; background: #ecebe5; color: var(--muted); font-size: 12px; }
.shipment-history { margin: 22px 0; overflow: hidden; }
.shipment-history-heading { align-items: flex-end; }
.shipment-history-heading h2 { margin-bottom: 4px; }
.shipment-history-heading p:last-child { max-width: 680px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.shipment-history-heading > strong { color: var(--forest); font: 800 11px var(--utility); letter-spacing: .06em; text-transform: uppercase; }
.past-shipments-table { min-width: 980px; }
.past-shipments-table td { vertical-align: top; }
.past-shipments-table td small { display: block; margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.4; }
.history-sku { display: block; font: 700 10px var(--utility); }
.history-sku + .history-sku { margin-top: 3px; }
.history-edit-link { color: var(--forest); font-size: 10px; font-weight: 800; }
.history-empty { display: grid; gap: 4px; padding: 22px 25px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.history-empty strong { color: var(--ink); font-size: 13px; }

.shipment-edit-dialog { width: min(920px, calc(100vw - 32px)); max-width: none; max-height: calc(100vh - 32px); padding: 0; overflow: auto; border: 1px solid #aebdb5; border-radius: 14px; background: #f7f8f5; color: var(--ink); box-shadow: 0 26px 80px rgba(12, 31, 23, .34); }
.shipment-edit-dialog::backdrop { background: rgba(14, 32, 25, .64); backdrop-filter: blur(2px); }
.shipment-modal-shell { min-height: 220px; }
.shipment-modal-heading { position: sticky; top: 0; z-index: 2; display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 20px 24px 18px; border-bottom: 1px solid #cbd7d0; background: #183e32; color: #fff; }
.shipment-modal-heading .eyebrow { color: #aec9bd; }
.shipment-modal-heading h2 { margin: 5px 0 3px; color: #fff; font: 700 24px Georgia, serif; }
.shipment-modal-heading p:last-child { margin: 0; color: #c8d9d1; font-size: 11px; }
.shipment-modal-close { flex: 0 0 auto; display: grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; background: transparent; color: #fff; cursor: pointer; font-size: 25px; line-height: 1; }
.shipment-modal-close:hover { background: rgba(255,255,255,.1); }
.shipment-modal-body .settings-card { padding: 24px; border: 0; border-radius: 0; box-shadow: none; }
.shipment-modal-body .shipment-editor { gap: 20px; }
.shipment-modal-loading { display: grid; place-items: center; min-height: 240px; color: var(--muted); font-size: 12px; }
.shipment-modal-error { margin: 0; padding: 28px; color: #762b26; line-height: 1.5; }
.shipment-edit-dialog :focus-visible { outline: 3px solid #d69c3a; outline-offset: 2px; }
.settings-card textarea { display: block; width: 100%; border: 1px solid #d8d7cf; border-radius: 9px; background: #fbfbf8; padding: 12px; margin-top: 7px; font: inherit; resize: vertical; }
.shipment-editor { display: grid; gap: 24px; }
.shipment-editor [hidden] { display: none !important; }
.shipment-editor fieldset { min-width: 0; margin: 0; padding: 0 0 23px; border: 0; border-bottom: 1px solid var(--line); }
.shipment-editor legend { margin-bottom: 16px; font-family: Georgia, serif; font-size: 21px; font-weight: 750; }
.shipment-fields.two-up { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
.shipment-line-form { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(100px,.6fr) minmax(135px,.8fr) auto; gap: 8px; align-items: start; padding: 12px; margin-bottom: 8px; border: 1px solid var(--line); border-radius: 10px; background: #fafaf7; }
.shipment-line-form label { margin-bottom: 0; }
.shipment-line-form .delete-line { align-self: center; margin-top: 25px; white-space: nowrap; }
.compact-button { min-height: 34px; }
.existing-attachments { display: grid; gap: 7px; margin-bottom: 18px; }
.existing-attachments > label { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 10px 12px; margin: 0; border: 1px solid var(--line); border-radius: 9px; }
.existing-attachments a { color: var(--forest); overflow-wrap: anywhere; }
.shipment-status-link { display: block; width: fit-content; margin-top: 7px; padding: 4px 7px; border-radius: 6px; background: #e7eef8; color: #345679; font-size: 10px; font-weight: 800; text-decoration: none; }
.settings-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 44px 8vw; align-items: start; }
.settings-layout h1, .settings-layout h2 { font-family: Georgia, serif; margin: 8px 0 14px; }
.settings-layout h1 { font-size: 44px; }
.settings-layout h2 { font-size: 30px; }
.settings-layout > div > p:last-child { max-width: 480px; color: var(--muted); line-height: 1.6; }
.smtp-card dl { margin: 0 0 22px; }
.smtp-settings-form { padding-bottom: 25px; margin-bottom: 25px; border-bottom: 1px solid var(--line); }
.smtp-settings-form .two-up { display: grid; grid-template-columns: 1.5fr .5fr; gap: 0 12px; }
.smtp-settings-form .two-up label:nth-child(3), .smtp-settings-form .two-up label:nth-child(4) { grid-column: span 1; }
.smtp-options { display: flex; flex-wrap: wrap; gap: 10px 20px; margin: 3px 0 20px; }
.smtp-options label { margin: 0; }
.smtp-card h3 { margin: 0 0 12px; font-family: Georgia, serif; font-size: 22px; }
.smtp-card dl div { display: grid; grid-template-columns: 130px 1fr; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.smtp-card dt { color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.smtp-card dd { margin: 0; overflow-wrap: anywhere; font-size: 13px; font-weight: 700; }
.smtp-card dd small { display: block; margin-top: 4px; color: var(--red); }
.test-email-form { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 10px; }
.test-email-form label { margin: 0; }
.button:disabled { opacity: .5; cursor: not-allowed; }
@media (max-width: 1000px) { .topbar { gap: 18px; } .topbar nav { display: flex; gap: 13px; margin-left: auto; } .account { margin-left: 0; } .account > a { display: none; } .shipment-suggestions { display: block; } .suggestion-heading { width: auto; } .suggestion-list { margin-top: 16px; } .shipment-hero { align-items: flex-start; } .shipment-group-toolbar { grid-template-columns: 1fr 1fr; } .shipment-group-toolbar > div { grid-column: 1 / -1; } .settings-layout { grid-template-columns: 1fr; gap: 20px; } .settings-layout > div:not(:first-child) { margin-top: 25px; } }
@media (max-width: 640px) { .brand small { display: none; } .topbar { gap: 12px; } .topbar nav { gap: 10px; } .topbar nav a { font-size: 12px; } .account { gap: 0; } .shipment-summary { grid-template-columns: repeat(2, 1fr); } .shipment-suggestions { padding: 18px; } .suggestion-item { min-width: 285px; } .quick-add-form { grid-template-columns: 1fr 1fr; } .quick-add-form .button { grid-column: 1 / -1; } .shipment-group-toolbar { grid-template-columns: 1fr; } .shipment-group-toolbar > div { grid-column: auto; } .shipment-fields.two-up, .shipment-line-form, .smtp-settings-form .two-up { grid-template-columns: 1fr; } .shipment-line-form .delete-line { margin-top: 0; } .test-email-form { grid-template-columns: 1fr; } .shipment-edit-dialog { width: 100vw; max-height: 100vh; border: 0; border-radius: 0; } .shipment-modal-heading, .shipment-modal-body .settings-card { padding-right: 18px; padding-left: 18px; } }

.kanban-column[data-stage="exception"] { background:#fff3d2; border-color:#dfc58b; }
.kanban-column[data-stage="exception"] > header { background:#fff8e7; border-bottom-color:#dfc58b; }
