:root{--color-admin:#e74c3c;--color-manager:#3498db;--color-accounting:#f39c12;--color-logistics:#9b59b6;--color-draft:#95a5a6;--color-documents:#3498db;--color-customs:#f39c12;--color-checklist:#27ae60;--color-telex:#9b59b6;--color-complete:#1abc9c;--bg-primary:#f5f7fa;--bg-surface:#fff;--bg-sidebar:#1a1a2e;--bg-sidebar-hover:#16213e;--bg-card:#fff;--text-primary:#2c3e50;--text-secondary:#7f8c8d;--text-inverse:#fff;--text-sidebar:#e0e0e0;--text-sidebar-muted:#888;--border-color:#e1e8ed;--border-light:#f0f0f0;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Consolas", monospace;--text-xs:.625rem;--text-sm:.75rem;--text-base:.8125rem;--text-lg:.875rem;--text-xl:1rem;--text-2xl:1.125rem;--text-3xl:1.5rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 24px #0000001f;--sidebar-width:260px;--header-height:56px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background:var(--bg-primary);min-height:100vh;line-height:1.6}a{color:var(--color-manager);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:var(--text-base)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-header[data-v-d1d1b795]{height:var(--header-height);background:var(--bg-sidebar);color:var(--text-inverse);padding:0 var(--space-lg);align-items:center;gap:var(--space-xl);z-index:100;display:flex;position:sticky;top:0}.brand[data-v-d1d1b795]{align-items:center;gap:var(--space-sm);font-size:var(--text-lg);font-weight:700;display:flex}.logo[data-v-d1d1b795]{object-fit:contain;width:28px;height:28px}.nav-links[data-v-d1d1b795]{gap:var(--space-xs);flex:1;display:flex}.nav-link[data-v-d1d1b795]{color:var(--text-sidebar-muted);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;text-decoration:none;transition:color .2s,background .2s}.nav-link[data-v-d1d1b795]:hover{color:var(--text-sidebar);background:var(--bg-sidebar-hover);text-decoration:none}.nav-link.active[data-v-d1d1b795]{color:var(--text-inverse);background:var(--color-manager)}.lang-btn[data-v-d1d1b795]{color:var(--text-sidebar-muted);border:1px solid var(--text-sidebar-muted);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;background:0 0;font-weight:600;transition:opacity .2s}.lang-btn[data-v-d1d1b795]:hover{opacity:.8}.export-btn[data-v-d1d1b795]{background:var(--color-checklist);color:var(--text-inverse);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-sm);border:none;font-weight:600;transition:opacity .2s}.export-btn[data-v-d1d1b795]:hover{opacity:.9}.export-btn[data-v-d1d1b795]:disabled{opacity:.5}.logout-btn[data-v-d1d1b795]{background:var(--color-admin);color:var(--text-inverse);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;border:none;font-weight:600;transition:opacity .2s}.logout-btn[data-v-d1d1b795]:hover{opacity:.8}.badge[data-v-a524e301]{border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-inverse);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;padding:2px 10px;font-weight:600;display:inline-block}.badge.sm[data-v-a524e301]{padding:1px 8px;font-size:.65rem}.badge.md[data-v-a524e301]{font-size:var(--text-sm);padding:3px 12px}.sidebar[data-v-2c67a06d]{width:var(--sidebar-width);background:var(--bg-sidebar);color:var(--text-sidebar);height:calc(100vh - var(--header-height));flex-direction:column;display:flex;overflow:hidden}.sidebar-nav[data-v-2c67a06d]{padding:var(--space-sm) var(--space-md);border-bottom:1px solid #ffffff14;flex-direction:column;gap:2px;display:flex}.nav-link[data-v-2c67a06d]{color:var(--text-sidebar);font-size:var(--text-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-weight:600;text-decoration:none;transition:background .15s}.nav-link[data-v-2c67a06d]:hover{background:var(--bg-sidebar-hover)}.nav-link.router-link-active[data-v-2c67a06d]{background:var(--color-manager);color:var(--text-inverse)}.sidebar-actions[data-v-2c67a06d]{padding:var(--space-md);gap:var(--space-sm);border-bottom:1px solid #ffffff1a;flex-direction:column;display:flex}.btn-new[data-v-2c67a06d]{background:var(--color-checklist);width:100%;color:var(--text-inverse);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-sm);border:none;font-weight:600}.btn-new[data-v-2c67a06d]:hover{opacity:.9}.btn-new[data-v-2c67a06d]:disabled{opacity:.5}.status-filter[data-v-2c67a06d]{width:100%;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--bg-sidebar-hover);color:var(--text-sidebar);font-size:var(--text-sm);cursor:pointer;border:none}.status-filter[data-v-2c67a06d]:focus{outline:1px solid var(--color-manager)}.search-input[data-v-2c67a06d]{width:100%;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--bg-sidebar-hover);color:var(--text-sidebar);font-size:var(--text-sm);border:none}.search-input[data-v-2c67a06d]::placeholder{color:var(--text-sidebar-muted)}.batch-bar[data-v-2c67a06d]{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-manager);color:var(--text-inverse);font-size:var(--text-sm);display:flex}.batch-count[data-v-2c67a06d]{white-space:nowrap;font-weight:700}.batch-status-select[data-v-2c67a06d]{padding:2px var(--space-xs);border-radius:var(--radius-sm);color:var(--text-inverse);font-size:var(--text-xs);background:#ffffff26;border:1px solid #ffffff4d;flex:1}.batch-status-select option[data-v-2c67a06d]{color:var(--text-primary)}.batch-apply-btn[data-v-2c67a06d]{background:var(--text-inverse);color:var(--color-manager);padding:2px var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;border:none;font-weight:700}.batch-apply-btn[data-v-2c67a06d]:hover{opacity:.9}.batch-apply-btn[data-v-2c67a06d]:disabled{opacity:.5}.call-list[data-v-2c67a06d]{flex:1;min-height:0;overflow-y:auto}.empty-mini[data-v-2c67a06d]{text-align:center;padding:var(--space-md);color:var(--text-sidebar-muted);font-size:var(--text-xs)}.select-all-row[data-v-2c67a06d]{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);font-size:var(--text-xs);color:var(--text-sidebar-muted);cursor:pointer;border-bottom:1px solid #ffffff0d;display:flex}.select-all-row input[data-v-2c67a06d]{cursor:pointer}.shipment-list[data-v-2c67a06d]{flex:1;overflow-y:auto}.shipment-row[data-v-2c67a06d]{width:100%;padding:var(--space-sm) var(--space-md);color:var(--text-sidebar);text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff0d;transition:background .15s;display:block}.shipment-row[data-v-2c67a06d]:hover{background:var(--bg-sidebar-hover)}.shipment-row.active[data-v-2c67a06d]{background:var(--color-manager);color:var(--text-inverse)}.row-main[data-v-2c67a06d]{align-items:center;gap:var(--space-sm);display:flex}.row-check[data-v-2c67a06d]{cursor:pointer;width:15px;height:15px;accent-color:var(--color-checklist);flex-shrink:0}.ref[data-v-2c67a06d]{font-size:var(--text-sm);font-weight:600;font-family:var(--font-mono);color:inherit;cursor:pointer;text-decoration:none;transition:color .15s}.ref[data-v-2c67a06d]:hover{color:var(--color-checklist);text-decoration:underline}.row-sub[data-v-2c67a06d]{font-size:var(--text-xs);color:var(--text-sidebar-muted);cursor:pointer;margin-top:2px;margin-left:23px}.shipment-row.active .row-sub[data-v-2c67a06d]{color:#ffffffb3}.btn-delete[data-v-2c67a06d]{color:#ffffff4d;background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:1.1rem;font-weight:700;line-height:1;transition:color .15s}.btn-delete[data-v-2c67a06d]:hover{color:var(--color-admin)}.shipment-row.active .btn-delete[data-v-2c67a06d]{color:#fff9}.shipment-row.active .btn-delete[data-v-2c67a06d]:hover{color:#fff}.empty-list[data-v-2c67a06d]{color:var(--text-sidebar-muted);font-size:var(--text-sm);padding:var(--space-lg);text-align:center;flex:1;justify-content:center;align-items:center;display:flex}.pagination[data-v-2c67a06d]{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);border-top:1px solid #ffffff0d;display:flex}.page-btn[data-v-2c67a06d]{background:var(--bg-sidebar-hover);color:var(--text-sidebar);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;border:none;padding:4px 10px}.page-btn[data-v-2c67a06d]:hover{opacity:.8}.page-btn[data-v-2c67a06d]:disabled{opacity:.3;cursor:default}.page-info[data-v-2c67a06d]{color:var(--text-sidebar-muted)}.app-layout[data-v-d4f16d1b]{flex-direction:column;min-height:100vh;display:flex}.app-body[data-v-d4f16d1b]{flex:1;display:flex}.main-content[data-v-d4f16d1b]{background:var(--bg-primary);flex:1;overflow-y:auto}.menu-btn[data-v-d4f16d1b]{color:var(--text-inverse);padding:var(--space-xs);cursor:pointer;background:0 0;border:none;font-size:1.25rem;display:none}.sidebar-overlay[data-v-d4f16d1b]{display:none}@media (width<=768px){.app-body[data-v-d4f16d1b]{flex-direction:column}.menu-btn[data-v-d4f16d1b]{margin-right:var(--space-sm);display:block}.sidebar-overlay[data-v-d4f16d1b]{z-index:90;background:#0006;display:block;position:fixed;inset:0}}.toast-container[data-v-fd2852aa]{bottom:var(--space-lg);right:var(--space-lg);z-index:9999;gap:var(--space-sm);flex-direction:column;max-width:360px;display:flex;position:fixed}.toast[data-v-fd2852aa]{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:var(--text-inverse);font-size:var(--text-sm);font-weight:500;animation:.25s ease-out slide-in-fd2852aa;display:flex}.toast.success[data-v-fd2852aa]{background:var(--color-checklist)}.toast.error[data-v-fd2852aa]{background:var(--color-admin)}.toast-icon[data-v-fd2852aa]{font-size:var(--text-lg);font-weight:700}.toast-text[data-v-fd2852aa]{flex:1}@keyframes slide-in-fd2852aa{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.stat-card[data-v-82856f77]{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-sm);box-shadow:var(--shadow-sm);text-align:center;cursor:pointer;aspect-ratio:1;border-top:3px solid;flex-direction:column;justify-content:center;align-items:center;width:55px;transition:transform .1s,box-shadow .1s;display:flex}.stat-card[data-v-82856f77]:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-card.active[data-v-82856f77]{box-shadow:0 0 0 2px var(--color-manager)}.stat-value[data-v-82856f77]{font-size:var(--text-md);color:var(--text-primary);font-weight:700;line-height:1.1}.stat-label[data-v-82856f77]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;margin-top:2px;font-size:8px}.dashboard[data-v-9c0dec49]{max-width:none;padding:0 var(--space-lg) var(--space-lg) var(--space-lg);margin:0}.loading[data-v-9c0dec49]{text-align:center;padding:var(--space-2xl);color:var(--text-secondary)}.dashboard-grid[data-v-9c0dec49]{gap:var(--space-lg);grid-template-columns:1fr 2fr;display:grid}@media (width<=900px){.dashboard-grid[data-v-9c0dec49]{grid-template-columns:1fr}}.stat-section[data-v-9c0dec49]{margin-bottom:var(--space-sm)}.section-label[data-v-9c0dec49]{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-md);font-weight:600}.stats-grid[data-v-9c0dec49]{gap:var(--space-sm);justify-content:flex-start;display:flex}.call-mini-list[data-v-9c0dec49]{flex-direction:column;gap:2px;display:flex}.call-mini-row[data-v-9c0dec49]{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;transition:background .1s;display:flex}.call-mini-row[data-v-9c0dec49]:hover{background:var(--bg-sidebar-hover)}.call-mini-ref[data-v-9c0dec49]{font-family:var(--font-mono);font-size:var(--text-sm);flex:1;font-weight:700}.call-bookings[data-v-9c0dec49]{margin-left:auto;margin-right:var(--space-xs);gap:3px;display:flex}.call-booking-pill[data-v-9c0dec49]{font-size:11px;font-family:var(--font-mono);border-radius:var(--radius-sm);cursor:pointer;padding:0 5px}.call-booking-pill[data-v-9c0dec49]:hover{opacity:.8}.call-booking-pill.open[data-v-9c0dec49]{background:var(--color-manager);color:#fff}.call-booking-pill.on_loading[data-v-9c0dec49]{background:var(--color-checklist);color:#fff}.call-booking-pill.closed[data-v-9c0dec49]{color:#fff;background:#7f8c8d}.call-mini-buyer[data-v-9c0dec49]{font-size:var(--text-sm);color:var(--text-secondary)}.ship-table[data-v-9c0dec49]{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.ship-table th[data-v-9c0dec49]{text-align:left;padding:var(--space-xs) var(--space-sm);color:var(--text-secondary);text-transform:uppercase;border-bottom:2px solid var(--border-light);font-weight:600}.ship-table th.sortable[data-v-9c0dec49]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.ship-table th.sortable[data-v-9c0dec49]:hover{color:var(--text-primary)}.ship-table th .arrow[data-v-9c0dec49]{color:var(--color-manager);font-size:.9em}.ship-row[data-v-9c0dec49]{cursor:pointer;transition:background .1s}.ship-row[data-v-9c0dec49]:hover{background:var(--bg-sidebar-hover)}.ship-row td[data-v-9c0dec49]{padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--border-light)}.mono[data-v-9c0dec49]{font-family:var(--font-mono)}.muted[data-v-9c0dec49]{color:var(--text-secondary)}.empty-mini[data-v-9c0dec49]{text-align:center;padding:var(--space-md);color:var(--text-secondary);font-size:var(--text-xs)}.login-page[data-v-257609fe]{background:linear-gradient(135deg,#2c3e50 0%,#3498db 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card[data-v-257609fe]{background:var(--bg-card,#fff);border-radius:12px;width:100%;max-width:400px;padding:48px 40px;box-shadow:0 20px 60px #0000004d}.login-title[data-v-257609fe]{text-align:center;color:#2c3e50;margin-bottom:4px;font-size:24px;font-weight:700}.login-sub[data-v-257609fe]{text-align:center;color:var(--text-secondary,#666);margin-bottom:28px;font-size:14px}.login-form[data-v-257609fe]{flex-direction:column;gap:16px;display:flex}.field[data-v-257609fe]{color:var(--text-secondary,#555);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.field input[data-v-257609fe]{border:1px solid var(--border-color,#ddd);color:var(--text-primary,#333);border-radius:8px;padding:12px 14px;font-size:15px;transition:border-color .2s}.field input[data-v-257609fe]:focus{border-color:#3498db;outline:none;box-shadow:0 0 0 3px #3498db26}.error-msg[data-v-257609fe]{color:#e74c3c;background:#fdf0ed;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:500}.btn-login[data-v-257609fe]{color:#fff;cursor:pointer;background:#2c3e50;border:none;border-radius:8px;padding:13px;font-size:16px;font-weight:600;transition:background .2s}.btn-login[data-v-257609fe]:hover{background:#34495e}.btn-login[data-v-257609fe]:disabled{opacity:.6;cursor:not-allowed}
