.nav-icon[data-v-7e403e86],.nav-icon[data-v-8e23a5b0],.nav-icon[data-v-645ebc44],.nav-icon[data-v-e67c48f9],.nav-icon[data-v-03e550d0],.nav-icon[data-v-a45c086d],.nav-icon[data-v-cb749b94],.nav-icon[data-v-608cc543],.nav-icon[data-v-cc2fd4d4]{width:2rem;height:2rem;stroke-width:1.5;flex-shrink:0}.sidebar-container[data-v-c27539b8]{position:relative}.hamburger-btn[data-v-c27539b8]{position:fixed;background:var(--color-background);vertical-align:center;border:none;z-index:1001;border-radius:8px;width:62px;height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.hamburger-btn[data-v-c27539b8]:hover{background:var(--color-hover);transform:scale(1.05)}.hamburger-line[data-v-c27539b8]{width:20px;height:2px;background:#fff;transition:all .3s ease}.hamburger-btn.sidebar-open .hamburger-line[data-v-c27539b8]:nth-child(1){transform:rotate(45deg) translate(3px,3px)}.hamburger-btn.sidebar-open .hamburger-line[data-v-c27539b8]:nth-child(2){opacity:0}.hamburger-btn.sidebar-open .hamburger-line[data-v-c27539b8]:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.sidebar[data-v-c27539b8]{position:fixed;top:0;left:0;height:100vh;width:64px;background:var(--color-surface);border-right:1px solid var(--color-border);transition:width .3s ease;z-index:1000;overflow:hidden;display:flex;flex-direction:column}.sidebar.expanded[data-v-c27539b8]{width:280px}.sidebar-header[data-v-c27539b8]{padding:1rem;border-bottom:1px solid var(--color-border);min-height:64px;display:flex;align-items:center;background-color:var(--color-background);color:var(--color-text)}.sidebar-title[data-v-c27539b8]{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0;white-space:nowrap;margin-left:5rem}.sidebar-content[data-v-c27539b8]{flex:1;overflow-y:auto;padding:1rem 0;background-color:var(--color-background);opacity:.9}.nav-section[data-v-c27539b8]{margin-bottom:2rem}.nav-item[data-v-c27539b8]{display:flex;align-items:center;padding:.75rem 1rem;color:var(--color-primary);text-decoration:none;transition:all .2s ease;margin:0 .5rem;border-radius:6px;min-height:44px;color:var(--color-text)}.nav-item[data-v-c27539b8]:hover{background:var(--color-hover);color:var(--color-text)}.nav-item.router-link-active[data-v-c27539b8]{background:var(--color-primary-subdued);color:var(--color-text);font-weight:500}.nav-item.collapsed[data-v-c27539b8]{justify-content:center;padding:.75rem}.nav-text[data-v-c27539b8]{margin-left:.75rem;white-space:nowrap;font-size:.875rem}.sidebar-overlay[data-v-c27539b8]{position:fixed;inset:0;background:#0009;z-index:999}@media (max-width: 767px){.sidebar[data-v-c27539b8]{transform:translate(-100%);width:280px}.sidebar.expanded[data-v-c27539b8]{transform:translate(0)}.hamburger-btn[data-v-c27539b8]{background:var(--color-surface);border:1px solid var(--color-border)}.hamburger-line[data-v-c27539b8]{background:var(--color-text)}}.sign-out-icon[data-v-63211126]{width:1rem;height:1rem}.run-report-btn[data-v-dd0751c3]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-dd0751c3]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-dd0751c3]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-dd0751c3]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-dd0751c3 1s linear infinite}@keyframes spin-dd0751c3{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.run-report-btn[data-v-9d1e45a3]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-9d1e45a3]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-9d1e45a3]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-9d1e45a3]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-9d1e45a3 1s linear infinite}@keyframes spin-9d1e45a3{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.invoice-results-dialog[data-v-9d1e45a3]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog-overlay[data-v-9d1e45a3]{position:absolute;inset:0;background-color:#00000080;backdrop-filter:blur(2px)}.dialog-content[data-v-9d1e45a3]{position:relative;background:var(--color-background);padding:1.5rem;border-radius:8px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;z-index:1001;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid var(--color-border)}.dialog-header[data-v-9d1e45a3],.dialog-footer[data-v-9d1e45a3]{display:flex;justify-content:space-between}.dialog-body[data-v-9d1e45a3]{margin-bottom:1rem;max-height:60vh;overflow-y:auto}.summary-section[data-v-9d1e45a3]{margin:1.5rem 0;border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.summary-item[data-v-9d1e45a3]{display:flex;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--color-border);background-color:var(--color-background-soft);transition:background-color .2s ease}.summary-item[data-v-9d1e45a3]:last-child{border-bottom:none}.summary-item[data-v-9d1e45a3]:hover{background-color:var(--color-background-mute)}.error-item[data-v-9d1e45a3]{cursor:pointer;color:var(--color-danger);font-weight:500}.error-item.has-errors[data-v-9d1e45a3]{background-color:#e53e3e1a}.error-list[data-v-9d1e45a3]{margin:0;padding:.5rem 1rem;background-color:var(--color-background-soft);border-top:1px solid var(--color-border);max-height:200px;overflow-y:auto;font-size:.9rem}.error-list .error-item[data-v-9d1e45a3]{padding:.5rem 0;margin:0;border-bottom:1px dashed var(--color-border);font-weight:400;color:var(--color-danger)}.error-list .error-item[data-v-9d1e45a3]:last-child{border-bottom:none}.close-button[data-v-9d1e45a3]{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;padding:.25rem;border-radius:.375rem;transition:color .2s ease}.close-button[data-v-9d1e45a3]:hover{color:#f9fafb}.trigger[data-v-3ea4cc07]{cursor:pointer;background-color:transparent;border-radius:6px;border:1px solid var(--color-border, #e5e7eb)}.trigger[data-v-3ea4cc07]:hover{background-color:var(--color-hover, #f3f4f6)}.flyout[data-v-3ea4cc07]{position:fixed;z-index:50;background-color:var(--color-background, #fff);padding:1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:6px}.app-header[data-v-5f58bed4]{border-bottom:1px solid var(--color-border, #e5e7eb);display:flex;align-items:center;position:sticky;top:0;height:64px;margin-left:64px;background-color:var(--color-background, #f9fafb);z-index:100}.header-content[data-v-5f58bed4]{display:flex;justify-content:space-between;align-items:center;width:100%}.header-left[data-v-5f58bed4]{flex:1}.page-title[data-v-5f58bed4]{font-size:1.5rem;font-weight:600;color:var(--color-text, #1f2937);margin:0;margin-left:1rem}.header-right[data-v-5f58bed4]{display:flex;align-items:center;gap:1rem}.user-info[data-v-5f58bed4]{display:flex;align-items:center}.user-name[data-v-5f58bed4]{font-size:1rem;color:var(--color-text, #6b7280);font-weight:500}.needs-attention[data-v-5f58bed4]{color:red;height:2rem;width:2rem;display:flex;align-items:center;justify-content:center;font-size:2rem}.header-btn[data-v-5f58bed4]{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;margin-right:1rem;background:transparent;border:1px solid var(--color-border, #e5e7eb);border-radius:.375rem;color:var(--color-text, #6b7280);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.header-btn[data-v-5f58bed4]:hover{background:var(--color-hover, #f3f4f6);border-color:var(--color-text-secondary, #6b7280);color:var(--color-text, #1f2937)}.header-btn[data-v-5f58bed4]:active{transform:translateY(1px)}@media (max-width: 640px){.user-name[data-v-5f58bed4]{display:none}.header-btn[data-v-5f58bed4]{padding:.5rem}.header-btn span[data-v-5f58bed4]{display:none}}.run-report-btn[data-v-2d616c65]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-2d616c65]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-2d616c65]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-2d616c65]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-2d616c65 1s linear infinite}@keyframes spin-2d616c65{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.app-layout[data-v-2d616c65]{display:flex}.main-content[data-v-2d616c65]{flex:1;background:var(--color-background, #f9fafb);transition:margin-left .3s ease;display:flex;flex-direction:column}.page-content[data-v-2d616c65]{flex:1;overflow-y:auto;padding:1rem;margin-left:64px}.auth-layout[data-v-2d616c65],.loading-container[data-v-2d616c65]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-background, #f9fafb)}@media (max-width: 767px){.page-content[data-v-2d616c65]{margin-left:0}}[data-v-2d616c65]:root{--color-background: #f9fafb;--color-primary: #3b82f6;--color-primary: #eff6ff;--color-surface: #ffffff;--color-text: #1f2937;--color-text-secondary: #6b7280;--color-border: #e5e7eb;--color-hover: #56719b}@media (prefers-color-scheme: dark){[data-v-2d616c65]:root{--color-background: #111827;--color-surface: #1f2937;--color-primary: #2563eb;--color-text: #dcdee0;--color-text-secondary: #9ca3af;--color-border: #374151;--color-hover: #56719b;--color-primary-light: #1e3a8a}}.run-report-btn[data-v-c9125d50]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-c9125d50]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-c9125d50]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-c9125d50]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-c9125d50 1s linear infinite}@keyframes spin-c9125d50{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.bar-container[data-v-c9125d50]{text-align:center;padding:1rem;background-color:#374151;border-radius:.75rem;box-shadow:0 4px 6px -1px #0000004d;display:flex;flex-direction:row;justify-content:space-between}.date-picker-section[data-v-c9125d50]{display:flex;flex-direction:row;align-items:start;justify-self:start;gap:1rem}.end-content[data-v-c9125d50]{display:flex;flex-direction:row;align-items:end;justify-self:end}.date-input-group[data-v-c9125d50]{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex;flex-direction:row;align-items:center}.date-input-group label[data-v-c9125d50]{font-weight:500;color:#e5e7eb;font-size:1rem}.date-input[data-v-c9125d50]{padding:.5rem;border:1px solid #4b5563;border-radius:.375rem;font-size:1rem;min-width:150px;background-color:#1f2937;color:#f9fafb}.date-input[data-v-c9125d50]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.date-label[data-v-c9125d50]{font-weight:500;color:#e5e7eb;font-size:1rem}.clear-report-btn[data-v-c9125d50]{background-color:#79818f;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;width:150px;height:40px;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.clear-report-btn[data-v-c9125d50]:hover:not(:disabled){background-color:#4b5563}.clear-report-btn[data-v-c9125d50]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-report[data-v-c9125d50]{text-align:center;padding:2rem;color:#9ca3af;font-style:italic}@media (max-width: 768px){.date-picker-section[data-v-c9125d50]{flex-direction:column;align-items:center;gap:1.5rem}.date-input-group[data-v-c9125d50]{flex-direction:column;align-items:center;text-align:center;gap:.5rem}.date-input[data-v-c9125d50]{min-width:200px}.run-report-btn[data-v-c9125d50],.clear-report-btn[data-v-c9125d50]{width:200px}}.error-message[data-v-8d412346]{color:#fff;margin-top:1rem;padding:.75rem;background-color:#7f1d1d;border:1px solid #dc2626;border-radius:.5rem;margin:.5rem 1rem}.error-button[data-v-8d412346]{background-color:#7f1d1d;border-color:#dc2626;border-width:1px;color:#fff;border:none;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s;margin:.5rem 1rem}.error-button[data-v-8d412346]:hover:not(:disabled){background-color:#7f1d1d}.error-button[data-v-8d412346]:disabled{background-color:#9ca3af;cursor:not-allowed}.report-table[data-v-1b2ef7fb]{width:100%;border-collapse:collapse;margin-top:0;background-color:#374151}.report-table th[data-v-1b2ef7fb],.report-table td[data-v-1b2ef7fb]{padding:.75rem;text-align:left;border-bottom:1px solid #4b5563;color:#f9fafb}.report-table th[data-v-1b2ef7fb]{background-color:#1f2937;font-weight:600;color:#e5e7eb;position:sticky;top:0}.report-table tbody tr[data-v-1b2ef7fb]:hover{background-color:#4b5563}.report-table td.negative[data-v-1b2ef7fb]{color:#fca5a5;font-weight:500}.report-results[data-v-1b2ef7fb]{margin-top:1rem;background:#374151;border-radius:.75rem;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;overflow:hidden}.report-header[data-v-1b2ef7fb]{padding:1rem}.report-header h3[data-v-1b2ef7fb]{font-size:1.25rem;font-weight:600;color:#f9fafb}.filter-section[data-v-1b2ef7fb]{display:flex;align-items:center;gap:.5rem}.filter-label[data-v-1b2ef7fb]{font-weight:600;color:#f9fafb;font-size:1rem}.filter-input[data-v-1b2ef7fb]{padding:.5rem;border:1px solid #4b5563;border-radius:.375rem;background-color:#1f2937;color:#f9fafb;font-size:.875rem;min-width:300px;transition:border-color .2s ease}.filter-input[data-v-1b2ef7fb]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.filter-input[data-v-1b2ef7fb]::placeholder{color:#9ca3af}.report-content[data-v-1b2ef7fb]{display:flex;flex-direction:column}.grouping-controls[data-v-1b2ef7fb]{padding:1rem;background-color:#374151;border-bottom:1px solid #4b5563;flex-shrink:0}.grouped-table[data-v-1b2ef7fb]{padding:1rem}.group-section[data-v-1b2ef7fb]{margin-bottom:1rem}.group-header[data-v-1b2ef7fb]{display:flex;align-items:center;gap:.5rem;padding:.5rem;background-color:#1f2937;cursor:pointer}.expand-icon[data-v-1b2ef7fb]{font-size:1.25rem}.group-title[data-v-1b2ef7fb]{font-weight:600;color:#f9fafb}.group-count[data-v-1b2ef7fb]{color:#9ca3af;font-size:.875rem}.report-table-header[data-v-1b2ef7fb]{background-color:#1f2937;border-radius:.5rem;border-width:1px;border-color:#4b5563}.grouping-label[data-v-1b2ef7fb]{font-weight:600;color:#f9fafb}.radio-group[data-v-1b2ef7fb]{display:flex;flex-wrap:wrap;gap:.5rem}.radio-option[data-v-1b2ef7fb]{display:flex;align-items:center;gap:.25rem}.date-range[data-v-1b2ef7fb]{margin:0;color:#9ca3af;font-size:.875rem}.run-report-btn[data-v-d01ebea1]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-d01ebea1]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-d01ebea1]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-d01ebea1]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-d01ebea1 1s linear infinite}@keyframes spin-d01ebea1{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.login-container[data-v-d01ebea1]{display:flex;justify-content:center;align-items:center;width:100%;height:80vh}.login-card[data-v-d01ebea1]{background:var(--color-background-soft);padding:2.5rem;border-radius:.75rem;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;text-align:center;width:100%;max-width:400px;border:1px solid var(--color-border)}.login-title[data-v-d01ebea1]{color:var(--color-heading);margin-bottom:2rem;font-size:1.75rem;font-weight:600}.error-message[data-v-d01ebea1]{color:var(--color-danger);font-weight:700;margin-top:2rem}button[data-v-b7750c41]{margin-top:1rem}.report-table[data-v-01f38a96]{width:100%;border-collapse:collapse;margin-top:0;background-color:#374151}.report-table th[data-v-01f38a96],.report-table td[data-v-01f38a96]{padding:.75rem;text-align:left;border-bottom:1px solid #4b5563;color:#f9fafb}.report-table th[data-v-01f38a96]{background-color:#1f2937;font-weight:600;color:#e5e7eb;position:sticky;top:0}.report-table tbody tr[data-v-01f38a96]:hover{background-color:#4b5563}.report-table td.negative[data-v-01f38a96]{color:#fca5a5;font-weight:500}.report-results[data-v-01f38a96]{margin-top:1rem;background:#374151;border-radius:.75rem;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;overflow:hidden}.report-header[data-v-01f38a96]{padding:1rem}.report-header h3[data-v-01f38a96]{font-size:1.25rem;font-weight:600;color:#f9fafb}.filter-section[data-v-01f38a96]{display:flex;align-items:center;gap:.5rem}.filter-label[data-v-01f38a96]{font-weight:600;color:#f9fafb;font-size:1rem}.filter-input[data-v-01f38a96]{padding:.5rem;border:1px solid #4b5563;border-radius:.375rem;background-color:#1f2937;color:#f9fafb;font-size:.875rem;min-width:300px;transition:border-color .2s ease}.filter-input[data-v-01f38a96]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.filter-input[data-v-01f38a96]::placeholder{color:#9ca3af}.section-container[data-v-01f38a96]{border:1px solid #4b5563;border-radius:.5rem;overflow:hidden}.section-header[data-v-01f38a96]{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:1rem;background-color:#374151;transition:background-color .2s ease;user-select:none}.section-header[data-v-01f38a96]:hover{background-color:#4b5563}.section-header h2[data-v-01f38a96]{margin:0;color:#f9fafb;font-size:1.25rem;font-weight:600}.expand-arrow[data-v-01f38a96]{font-size:1.2rem;color:#9ca3af;transition:transform .3s ease;transform-origin:center}.expand-arrow.expanded[data-v-01f38a96]{transform:rotate(90deg)}.collapsible-content[data-v-01f38a96]{max-height:0;overflow:hidden;transition:max-height .4s ease-out;background-color:#1f2937}.collapsible-content.expanded[data-v-01f38a96]{max-height:fit-content;transition:max-height .4s ease-in}.collapsible-content[data-v-01f38a96]>*{padding:1rem}.collapsible-content .filter-section[data-v-01f38a96]{padding-bottom:0}.collapsible-content .report-table[data-v-01f38a96]{margin:0}.run-report-btn[data-v-01f38a96]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-01f38a96]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-01f38a96]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-01f38a96]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-01f38a96 1s linear infinite}@keyframes spin-01f38a96{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.margin-bottom[data-v-01f38a96]{margin-bottom:1rem}.corner-radius[data-v-01f38a96]{border-radius:.5rem;border:1px solid #4b5563;transition:border-color .2s ease}.sortable-header[data-v-01f38a96]{cursor:pointer;user-select:none;transition:background-color .2s ease}.sortable-header[data-v-01f38a96]:hover{background-color:#3b82f61a}.header-content[data-v-01f38a96]{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sort-indicator[data-v-01f38a96]{font-size:.75rem;color:var(--color-primary, #3b82f6);transition:transform .2s ease}.sort-indicator.sort-desc[data-v-01f38a96]{transform:rotate(180deg)}.run-report-btn[data-v-d69fc597]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-d69fc597]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-d69fc597]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-d69fc597]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-d69fc597 1s linear infinite}@keyframes spin-d69fc597{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.modal-overlay[data-v-d69fc597]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-backdrop[data-v-d69fc597]{position:absolute;inset:0;background-color:#00000080;backdrop-filter:blur(2px)}.modal-content[data-v-d69fc597]{position:relative;background:var(--color-background);padding:1.5rem;border-radius:.5rem;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;z-index:1001;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #4b5563}.modal-header[data-v-d69fc597]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #4b5563}.modal-header h2[data-v-d69fc597]{margin:0;color:#f9fafb;font-size:1.25rem;font-weight:600}.close-button[data-v-d69fc597]{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;padding:.25rem;border-radius:.375rem;transition:color .2s ease}.close-button[data-v-d69fc597]:hover{color:#f9fafb}.user-form[data-v-d69fc597]{display:flex;flex-direction:column;gap:1.25rem}.form-row[data-v-d69fc597]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group[data-v-d69fc597]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-d69fc597]{font-weight:600;color:#f9fafb;font-size:.875rem}.section-label[data-v-d69fc597]{font-weight:600;color:#f9fafb;font-size:1rem;margin-bottom:.5rem}.form-input[data-v-d69fc597]{padding:.5rem;border:1px solid #4b5563;border-radius:.375rem;background-color:#1f2937;color:#f9fafb;font-size:.875rem;transition:border-color .2s ease}.form-input[data-v-d69fc597]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.form-input[data-v-d69fc597]::placeholder{color:#9ca3af}.form-input.error[data-v-d69fc597]{border-color:#ef4444}.error-message[data-v-d69fc597]{color:#fca5a5;font-size:.75rem;margin-top:.25rem}.checkbox-group[data-v-d69fc597]{display:flex;flex-direction:column;gap:.75rem}.checkbox-item[data-v-d69fc597]{display:flex;align-items:center;gap:.5rem}.form-checkbox[data-v-d69fc597]{width:1rem;height:1rem;border:1px solid #4b5563;border-radius:.25rem;background-color:#1f2937;cursor:pointer}.form-checkbox[data-v-d69fc597]:checked{background-color:#3b82f6;border-color:#3b82f6}.checkbox-label[data-v-d69fc597]{color:#f9fafb;font-size:.875rem;cursor:pointer;margin:0}.form-actions[data-v-d69fc597]{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #4b5563}.btn[data-v-d69fc597]{padding:.5rem 1rem;border:none;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.875rem;text-align:center;display:flex;align-items:center;gap:.5rem}.btn-primary[data-v-d69fc597]{background-color:#3b82f6;color:#fff}.btn-primary[data-v-d69fc597]:hover:not(:disabled){background-color:#2563eb}.btn-primary[data-v-d69fc597]:disabled{opacity:.7;cursor:not-allowed}.btn-secondary[data-v-d69fc597]{background-color:#4a5568;color:#e2e8f0}.btn-secondary[data-v-d69fc597]:hover{background-color:#354665;color:#fff}@media (max-width: 640px){.form-row[data-v-d69fc597]{grid-template-columns:1fr}.modal-content[data-v-d69fc597]{width:95%;padding:1rem}.form-actions[data-v-d69fc597]{flex-direction:column}}.run-report-btn[data-v-24b6d6d7]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem;border-radius:.5rem;min-width:150px;height:40px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;position:relative}.run-report-btn[data-v-24b6d6d7]:hover:not(:disabled){background-color:#2563eb}.run-report-btn[data-v-24b6d6d7]:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner[data-v-24b6d6d7]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:4px solid #ffffff;border-top:4px solid #3b82f6;border-radius:50%;width:20px;height:20px;animation:spin-24b6d6d7 1s linear infinite}@keyframes spin-24b6d6d7{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.modal-overlay[data-v-24b6d6d7]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-backdrop[data-v-24b6d6d7]{position:absolute;inset:0;background-color:#00000080;backdrop-filter:blur(2px)}.modal-content[data-v-24b6d6d7]{position:relative;background:var(--color-background);padding:1.5rem;border-radius:.5rem;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;z-index:1001;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #4b5563}.modal-header[data-v-24b6d6d7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #4b5563}.modal-header h2[data-v-24b6d6d7]{margin:0;color:#f9fafb;font-size:1.25rem;font-weight:600}.close-button[data-v-24b6d6d7]{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;padding:.25rem;border-radius:.375rem;transition:color .2s ease}.close-button[data-v-24b6d6d7]:hover{color:#f9fafb}.user-form[data-v-24b6d6d7]{display:flex;flex-direction:column;gap:1.25rem}.form-row[data-v-24b6d6d7]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group[data-v-24b6d6d7]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-24b6d6d7]{font-weight:600;color:#f9fafb;font-size:.875rem}.section-label[data-v-24b6d6d7]{font-weight:600;color:#f9fafb;font-size:1rem;margin-bottom:.5rem}.form-input[data-v-24b6d6d7]{padding:.5rem;border:1px solid #4b5563;border-radius:.375rem;background-color:#1f2937;color:#f9fafb;font-size:.875rem;transition:border-color .2s ease}.form-input[data-v-24b6d6d7]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.form-input[data-v-24b6d6d7]::placeholder{color:#9ca3af}.form-input.error[data-v-24b6d6d7]{border-color:#ef4444}.error-message[data-v-24b6d6d7]{color:#fca5a5;font-size:.75rem;margin-top:.25rem}.checkbox-group[data-v-24b6d6d7]{display:flex;flex-direction:column;gap:.75rem}.checkbox-item[data-v-24b6d6d7]{display:flex;align-items:center;gap:.5rem}.form-checkbox[data-v-24b6d6d7]{width:1rem;height:1rem;border:1px solid #4b5563;border-radius:.25rem;background-color:#1f2937;cursor:pointer}.form-checkbox[data-v-24b6d6d7]:checked{background-color:#3b82f6;border-color:#3b82f6}.checkbox-label[data-v-24b6d6d7]{color:#f9fafb;font-size:.875rem;cursor:pointer;margin:0}.form-actions[data-v-24b6d6d7]{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #4b5563}.btn[data-v-24b6d6d7]{padding:.5rem 1rem;border:none;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.875rem;text-align:center;display:flex;align-items:center;gap:.5rem}.btn-primary[data-v-24b6d6d7]{background-color:#3b82f6;color:#fff}.btn-primary[data-v-24b6d6d7]:hover:not(:disabled){background-color:#2563eb}.btn-primary[data-v-24b6d6d7]:disabled{opacity:.7;cursor:not-allowed}.btn-secondary[data-v-24b6d6d7]{background-color:#4a5568;color:#e2e8f0}.btn-secondary[data-v-24b6d6d7]:hover{background-color:#354665;color:#fff}@media (max-width: 640px){.form-row[data-v-24b6d6d7]{grid-template-columns:1fr}.modal-content[data-v-24b6d6d7]{width:95%;padding:1rem}.form-actions[data-v-24b6d6d7]{flex-direction:column}}.invoice-groups-section[data-v-8ebdbfee]{margin-top:2rem}.section-header[data-v-8ebdbfee]{margin-bottom:1rem}.section-header h2[data-v-8ebdbfee]{color:var(--color-text);font-size:1.5rem;font-weight:600}.filter-section[data-v-8ebdbfee]{margin-bottom:1rem}.filter-input[data-v-8ebdbfee]{width:100%;max-width:400px;padding:.75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);color:var(--color-text);font-size:1rem}.filter-input[data-v-8ebdbfee]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.groups-container[data-v-8ebdbfee]{display:flex;flex-direction:column;gap:.5rem}.group-item[data-v-8ebdbfee]{border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);overflow:hidden}.group-header[data-v-8ebdbfee]{padding:1rem;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid transparent}.group-header[data-v-8ebdbfee]:hover{background:var(--color-hover)}.group-info[data-v-8ebdbfee]{display:flex;align-items:center;gap:1rem}.expand-icon[data-v-8ebdbfee]{font-size:.875rem;color:var(--color-primary);width:1rem}.invoice-number[data-v-8ebdbfee]{font-weight:600;color:var(--color-text);min-width:120px}.tech-name[data-v-8ebdbfee]{color:var(--color-text);min-width:150px}.total-cost[data-v-8ebdbfee]{font-weight:500;color:var(--color-primary);min-width:100px}.item-count[data-v-8ebdbfee]{color:var(--color-text-secondary);font-size:.875rem}.group-content[data-v-8ebdbfee]{border-top:1px solid var(--color-border);background:var(--color-background)}.invoice-items-table[data-v-8ebdbfee]{width:100%;border-collapse:collapse}.invoice-items-table th[data-v-8ebdbfee]{background:var(--color-surface);padding:.75rem;text-align:left;font-weight:600;color:var(--color-text);border-bottom:1px solid var(--color-border);font-size:.875rem}.invoice-items-table td[data-v-8ebdbfee]{padding:.75rem;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:.875rem}.invoice-items-table tbody tr[data-v-8ebdbfee]:hover{background:var(--color-hover)}.invoice-items-table tbody tr:last-child td[data-v-8ebdbfee]{border-bottom:none}.input-field[data-v-0479a616]{width:100%;padding:8px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-background);color:var(--color-text)}.autocomplete-dropdown[data-v-0479a616]{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:4px;z-index:1000}.autocomplete-item[data-v-0479a616]{padding:8px;cursor:pointer}.autocomplete-item[data-v-0479a616]:hover{background-color:var(--color-hover)}.tables-container[data-v-d9f96f71]{display:flex;gap:2rem}.table-section[data-v-d9f96f71]{flex:1}.table-wrapper[data-v-d9f96f71]{overflow-x:auto}.products-table[data-v-d9f96f71]{width:100%;border-collapse:collapse;table-layout:fixed}.products-table th[data-v-d9f96f71],.products-table td[data-v-d9f96f71]{padding:.5rem;border:1px solid #ddd;border-radius:6px;text-align:left}.no-data[data-v-d9f96f71]{text-align:center;font-style:italic;color:#666}
