.toast-tray{position:fixed;bottom:1.25rem;right:1.25rem;display:flex;flex-direction:column;gap:.5rem;z-index:2000;max-width:420px}.toast{background:#1f2937;color:#f9fafb;padding:.6rem .9rem;border-radius:6px;box-shadow:0 6px 18px #0003;cursor:pointer;font-size:.85rem;border-left:3px solid #4b5563}.toast[data-level=success]{border-left-color:#16a34a}.toast[data-level=error]{border-left-color:#dc2626}.toast[data-level=info]{border-left-color:#2563eb}.theme-toggle[data-v-e8fe835b]{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .7rem;border-radius:4px;font-size:.78rem;background:var(--surface, white);color:var(--text-muted, #6b7280);border:1px solid var(--border, #d1d5db);cursor:pointer}.theme-toggle[data-v-e8fe835b]:hover{background:var(--surface-2, #f3f4f6);color:var(--text-strong, #111827)}.icon[data-v-e8fe835b]{font-size:.95rem;line-height:1}.lbl[data-v-e8fe835b]{white-space:nowrap}:root{font-family:system-ui,-apple-system,sans-serif;font-size:14px;color-scheme:light;--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f9fafb;--surface-3: #f3f4f6;--text: #1f2937;--text-strong: #111827;--text-muted: #6b7280;--border: #e5e7eb;--border-strong: #d1d5db;--accent: #1e40af;--accent-strong: #1e3a8a;--accent-bg: #eef2ff;--error: #b91c1c;--error-bg: #fef2f2;--error-border: #fecaca;--success: #166534;--success-bg: #dcfce7;--warn: #92400e;--warn-bg: #fef3c7}:root[data-theme=dark]{color-scheme:dark;--bg: #1b2030;--surface: #232938;--surface-2: #2b3243;--surface-3: #38415a;--text: #ced3df;--text-strong: #e3e6ee;--text-muted: #909aae;--border: #353c4f;--border-strong: #495065;--accent: #93c5fd;--accent-strong: #bfdbfe;--accent-bg: #2c3a52;--error: #fca5a5;--error-bg: #3a1d1d;--error-border: #6e2424;--success: #86efac;--success-bg: #1a3325;--warn: #fcd34d;--warn-bg: #3a2e0e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.layout{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1.25rem;background:var(--surface);border-bottom:1px solid var(--border)}.brand{font-weight:700;font-size:1.05rem;color:var(--text-strong)}nav{display:flex;gap:1rem}nav a{color:var(--text);text-decoration:none;padding:.25rem .5rem;border-radius:4px}nav a:hover,nav a.router-link-active{background:var(--accent-bg);color:var(--accent-strong)}.user-menu{margin-left:auto;display:flex;align-items:center;gap:.75rem;color:var(--text-muted)}.user-menu .user-email{color:var(--text-muted)}button{cursor:pointer;padding:.35rem .85rem;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-strong);border-radius:4px}button:hover{background:var(--surface-3)}main{flex:1;padding:1.5rem;max-width:1200px;width:100%;margin:0 auto}html[data-theme=dark] label,html[data-theme=dark] dt{color:var(--text)}html[data-theme=dark] .hint,html[data-theme=dark] .muted{color:var(--text-muted)}html[data-theme=dark] .panel,html[data-theme=dark] .kpi,html[data-theme=dark] .card,html[data-theme=dark] .report-card,html[data-theme=dark] .state-group,html[data-theme=dark] .address-card,html[data-theme=dark] .filter-bar,html[data-theme=dark] .copy-from,html[data-theme=dark] .billing-profiles,html[data-theme=dark] .role-matrix-wrap,html[data-theme=dark] .login{background:var(--surface);border-color:var(--border);color:var(--text)}html[data-theme=dark] .kpi.alert,html[data-theme=dark] .state.error{background:var(--error-bg);border-color:var(--error-border);color:var(--text)}html[data-theme=dark] .state.error{color:var(--error)}html[data-theme=dark] .diff-row.kind-removed .before pre,html[data-theme=dark] .diff-row.kind-changed .before pre{background:var(--error-bg);color:var(--error)}html[data-theme=dark] .diff-row.kind-added .after pre,html[data-theme=dark] .diff-row.kind-changed .after pre{background:var(--success-bg);color:var(--success)}html[data-theme=dark] .state-pill[data-state=INACTIVE],html[data-theme=dark] .status[data-status=INACTIVE]{background:var(--error-bg);color:var(--error)}html[data-theme=dark] .btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}html[data-theme=dark] .btn-secondary:hover:not(:disabled),html[data-theme=dark] .btn-link:hover,html[data-theme=dark] .btn-clear:not(:disabled):hover,html[data-theme=dark] .preset-chip:hover{background:var(--surface-3)}html[data-theme=dark] h1,html[data-theme=dark] h2,html[data-theme=dark] h3,html[data-theme=dark] h4{color:var(--text-strong)}html[data-theme=dark] .metric,html[data-theme=dark] .report-card header h3,html[data-theme=dark] .task-list a,html[data-theme=dark] .data-table a,html[data-theme=dark] .dialog-close:hover:not(:disabled){color:var(--text-strong)}html[data-theme=dark] .section,html[data-theme=dark] .copy-label,html[data-theme=dark] .lines-block-head h3,html[data-theme=dark] .lines-toolbar h3,html[data-theme=dark] .contact-info,html[data-theme=dark] .when,html[data-theme=dark] .timeline .actor,html[data-theme=dark] .btn-clear,html[data-theme=dark] .preview-label,html[data-theme=dark] .preview-source{color:var(--text)}html[data-theme=dark] .tab:hover{color:var(--text-strong)}html[data-theme=dark] .tab.active,html[data-theme=dark] .role-cell.on{color:var(--accent-strong);border-bottom-color:var(--accent)}html[data-theme=dark] .tag,html[data-theme=dark] .entity-link,html[data-theme=dark] .timeline .action,html[data-theme=dark] .role-chip[data-state=on],html[data-theme=dark] .status,html[data-theme=dark] .state-pill[data-state=PROSPECT]{background:var(--accent-bg);color:var(--accent-strong);border-color:var(--border)}html[data-theme=dark] .data-table th,html[data-theme=dark] .audit-table th,html[data-theme=dark] .lines-table th,html[data-theme=dark] .role-matrix th,html[data-theme=dark] .invoice-lines th,html[data-theme=dark] .diff-table th{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}html[data-theme=dark] .audit-table tr.row:hover,html[data-theme=dark] .data-table tbody tr:hover,html[data-theme=dark] .invoice-row:hover{background:var(--surface-3)}html[data-theme=dark] .line-row,html[data-theme=dark] .copy-from,html[data-theme=dark] .dialog-foot,html[data-theme=dark] .invoice-detail-row>td{background:var(--surface-2);border-color:var(--border)}html[data-theme=dark] .data-table,html[data-theme=dark] .lines-table,html[data-theme=dark] .role-matrix,html[data-theme=dark] .invoice-lines,html[data-theme=dark] .diff-table{background:var(--surface);color:var(--text)}html[data-theme=dark] .data-table th,html[data-theme=dark] .lines-table th,html[data-theme=dark] .role-matrix th,html[data-theme=dark] .invoice-lines th,html[data-theme=dark] .diff-table th{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}html[data-theme=dark] .data-table td,html[data-theme=dark] .lines-table td,html[data-theme=dark] .role-matrix td,html[data-theme=dark] .invoice-lines td,html[data-theme=dark] .diff-table td{border-color:var(--border)}html[data-theme=dark] .invoice-row:hover,html[data-theme=dark] .data-table tbody tr:hover{background:var(--surface-2)}html[data-theme=dark] .invoice-detail-row>td{background:var(--surface-2)}html[data-theme=dark] input[type=text],html[data-theme=dark] input[type=email],html[data-theme=dark] input[type=password],html[data-theme=dark] input[type=number],html[data-theme=dark] input[type=date],html[data-theme=dark] input[type=datetime-local],html[data-theme=dark] input[type=search],html[data-theme=dark] select,html[data-theme=dark] textarea{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:var(--text-muted)}html[data-theme=dark] .dialog{background:var(--surface);color:var(--text)}html[data-theme=dark] .dialog-head,html[data-theme=dark] .dialog-foot{background:var(--surface-2);border-color:var(--border)}html[data-theme=dark] .dialog-error{background:var(--error-bg);color:var(--error);border-color:var(--error-border)}html[data-theme=dark] .state-pill{background:var(--surface-3);color:var(--text)}html[data-theme=dark] .state-pill[data-state=ACTIVE]{background:#14361f;color:#86efac}html[data-theme=dark] .state-pill[data-state=DRAFT]{background:#1e3a5f;color:#bfdbfe}html[data-theme=dark] .state-pill[data-state=SIGNED]{background:#3d2e0a;color:#fcd34d}html[data-theme=dark] .state-pill[data-state=SUSPENDED],html[data-theme=dark] .state-pill[data-state=DISPUTED],html[data-theme=dark] .state-pill[data-state=PUSH_FAILED]{background:#3f1d1d;color:#fca5a5}html[data-theme=dark] .state-pill[data-state=PUSHED]{background:#14361f;color:#86efac}html[data-theme=dark] .state-pill[data-state=QUEUED]{background:#3d2e0a;color:#fcd34d}html[data-theme=dark] .tag,html[data-theme=dark] .preset-chip{background:var(--surface-3);color:var(--text);border-color:var(--border)}html[data-theme=dark] .preset-chip.active{background:var(--accent);color:var(--surface);border-color:var(--accent)}html[data-theme=dark] .tag-add input{background:var(--surface-2);color:var(--text)}html[data-theme=dark] .login{box-shadow:0 1px 3px #0006}
