:root{--color-bg: #0a0b0f;--color-surface: #13141a;--color-accent: #1AD8E6;--color-text: #ffffff;--color-muted: #888888;--color-border: rgba(26, 216, 230, .2);--color-border-active: #1AD8E6;--color-error: #FF4444;--color-divider: rgba(26, 216, 230, .15);--color-row-border: rgba(26, 216, 230, .08);--color-row-hover: rgba(26, 216, 230, .06);--color-overlay: rgba(0, 0, 0, .55);--color-ghost-border: rgba(136, 136, 136, .3);--radius: 6px;--spacing: 8px;--font-display: "Archivo", sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--mantis-teal: #1AD8E6;--mantis-navy: #0a0b0f;--mantis-teal-90: rgba(26, 216, 230, .9);--mantis-teal-70: rgba(26, 216, 230, .7);--mantis-teal-50: rgba(26, 216, 230, .5);--mantis-teal-25: rgba(26, 216, 230, .25);--mantis-teal-10: rgba(26, 216, 230, .1);--mantis-white: #ffffff;--mantis-white-55: rgba(255, 255, 255, .55);--mantis-font-display: "JetBrains Mono", "Courier New", monospace;--mantis-font-body: system-ui, -apple-system, sans-serif;--mantis-font-heading: "Archivo", system-ui, sans-serif}[data-theme=light]{--color-bg: #f0f2f5;--color-surface: #ffffff;--color-accent: #0891b2;--color-text: #111318;--color-muted: #6b7280;--color-border: rgba(8, 145, 178, .25);--color-border-active: #0891b2;--color-error: #dc2626;--color-divider: rgba(0, 0, 0, .08);--color-row-border: rgba(0, 0, 0, .06);--color-row-hover: rgba(8, 145, 178, .05);--color-overlay: rgba(0, 0, 0, .4);--color-ghost-border: rgba(100, 100, 100, .25)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:14px;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}a{color:var(--color-accent);text-decoration:none}button{font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;border:none;border-radius:var(--radius);padding:8px 16px;transition:opacity .15s}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:var(--color-accent);color:#0a0b0f}button.primary:hover:not(:disabled){opacity:.85}button.secondary{background:transparent;border:1px solid var(--color-accent);color:var(--color-accent)}button.secondary:hover:not(:disabled){background:var(--color-row-hover)}button.ghost{background:transparent;border:1px solid var(--color-ghost-border);color:var(--color-muted)}button.ghost:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}button.danger{background:transparent;border:1px solid var(--color-error);color:var(--color-error)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:24px}.card.active{border-color:var(--color-accent)}.mono{font-family:var(--font-mono)}.muted{color:var(--color-muted)}.auth-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;background:var(--color-bg)}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand-text{display:flex;flex-direction:column;gap:2px}.auth-brand-name{font-family:JetBrains Mono,Courier New,monospace;font-weight:700;font-size:28px;letter-spacing:.18em;color:#fff;text-shadow:0 0 10px rgba(26,216,230,.4),0 0 25px rgba(26,216,230,.1);line-height:1}.auth-brand-sub{font-family:JetBrains Mono,Courier New,monospace;font-size:9px;font-weight:400;color:#1ad8e6;letter-spacing:.1em;opacity:.45}.invite-prompt{max-width:360px;width:100%;text-align:center}.invite-prompt button{width:100%;justify-content:center}.cl-badge,.cl-logoBox,.cl-logoImage,[data-localization-key^=badge__]{display:none!important}.cl-cardBox>:not(.cl-card){display:none!important}.loading-wrap[data-v-b5e4d913]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);font-size:13px}.table-card[data-v-bd70f31a]{padding:0;overflow:hidden}.table-header[data-v-bd70f31a]{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--color-divider)}.section-title[data-v-bd70f31a]{font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:capitalize}.count[data-v-bd70f31a]{font-size:12px}.empty-state[data-v-bd70f31a]{padding:40px 24px;text-align:center;font-size:13px}.table-scroll[data-v-bd70f31a]{overflow-x:auto;-webkit-overflow-scrolling:touch}table[data-v-bd70f31a]{width:100%;border-collapse:collapse;min-width:400px}thead tr[data-v-bd70f31a]{border-bottom:1px solid var(--color-divider)}th[data-v-bd70f31a]{padding:10px 24px;text-align:left;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--color-muted);text-transform:capitalize;letter-spacing:.05em;white-space:nowrap}td[data-v-bd70f31a]{padding:14px 24px;font-size:13px;border-bottom:1px solid var(--color-row-border);color:var(--color-text);white-space:nowrap}tbody tr:last-child td[data-v-bd70f31a]{border-bottom:none}.row-clickable[data-v-bd70f31a]{cursor:pointer}.row-clickable:hover td[data-v-bd70f31a]{background:var(--color-row-hover)}.status-badge[data-v-bd70f31a]{font-family:var(--font-mono);font-size:11px;padding:3px 9px;border-radius:3px;border:1px solid}.status-badge.paid[data-v-bd70f31a]{color:var(--color-accent);border-color:#1ad8e666;background:#1ad8e614}.status-badge.unpaid[data-v-bd70f31a]{color:var(--color-error);border-color:#f446;background:#ff444414}.status-badge.partial[data-v-bd70f31a],.status-badge.unknown[data-v-bd70f31a]{color:var(--color-muted);border-color:#8888884d}@media(max-width:640px){.table-header[data-v-bd70f31a]{padding:14px 16px}th[data-v-bd70f31a]{padding:8px 16px;font-size:10px}td[data-v-bd70f31a]{padding:14px 16px;font-size:13px}.col-email[data-v-bd70f31a],.col-phone[data-v-bd70f31a]{display:none}}.layout[data-v-7a77892f]{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.topbar[data-v-7a77892f]{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid var(--color-divider);position:sticky;top:0;background:var(--color-bg);z-index:10}.topbar-brand[data-v-7a77892f]{display:flex;align-items:center;gap:10px}.brand-name[data-v-7a77892f]{font-family:JetBrains Mono,Courier New,monospace;font-weight:700;font-size:15px;letter-spacing:.1em;color:var(--color-text)}[data-theme=light] .brand-logo line[data-v-7a77892f]{stroke:#0e7490}[data-theme=light] .brand-logo circle[data-v-7a77892f]{fill:#0e7490}[data-theme=light] .brand-logo line[stroke-width="2"][data-v-7a77892f]{stroke:var(--color-surface)}.brand-separator[data-v-7a77892f]{color:var(--color-muted);font-size:13px}.brand-client[data-v-7a77892f]{font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.04em;color:var(--color-muted)}.topbar-right[data-v-7a77892f]{display:flex;align-items:center;gap:16px}.sync-time[data-v-7a77892f]{font-size:12px}.topbar-right button[data-v-7a77892f]{display:flex;align-items:center;gap:6px}.content[data-v-7a77892f]{padding:32px;display:flex;flex-direction:column;gap:20px;max-width:1200px;width:100%;margin:0 auto}@keyframes fadeUp-7a77892f{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate[data-v-7a77892f]{opacity:0;animation:fadeUp-7a77892f .5s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--delay, 0s)}.stats-row[data-v-7a77892f]{display:flex;gap:16px}.stat-card[data-v-7a77892f]{display:flex;flex-direction:column;gap:8px;flex:1;padding:28px;cursor:pointer;transition:border-color .15s,opacity .2s,transform .15s;-webkit-user-select:none;user-select:none}.stat-card[data-v-7a77892f]:hover{border-color:var(--color-accent)}.stat-card.focused[data-v-7a77892f]{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent),0 4px 16px #1ad8e61f;transform:translateY(-1px)}.stat-card.faded[data-v-7a77892f]{opacity:.35}.stat-icon[data-v-7a77892f]{margin-bottom:4px}.stat-value[data-v-7a77892f]{font-size:42px;font-weight:500;line-height:1;color:var(--color-text)}.stat-label[data-v-7a77892f]{font-size:13px;font-weight:600;color:var(--color-text);text-transform:capitalize}.stat-desc[data-v-7a77892f]{font-size:12px;line-height:1.4}.text-error[data-v-7a77892f]{color:var(--color-error)}.charts-row[data-v-7a77892f]{display:flex;gap:16px}.chart-card[data-v-7a77892f]{flex:1;display:flex;flex-direction:column;gap:12px}.chart-card--center[data-v-7a77892f]{align-items:center}.chart-heading[data-v-7a77892f]{font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:capitalize}.chart-sub[data-v-7a77892f]{font-size:11px;margin-top:-6px}.chart-empty[data-v-7a77892f]{font-size:12px;padding:16px 0}.funnel-bars[data-v-7a77892f]{display:flex;flex-direction:column;gap:10px;margin-top:4px}.funnel-row[data-v-7a77892f]{display:flex;align-items:center;gap:10px}.funnel-label[data-v-7a77892f]{font-size:11px;min-width:58px;text-align:right;flex-shrink:0}.funnel-track[data-v-7a77892f]{flex:1;height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.funnel-fill[data-v-7a77892f]{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.16,1,.3,1)}.funnel-count[data-v-7a77892f]{font-size:11px;min-width:24px}.donut-wrap[data-v-7a77892f]{display:flex;align-items:center;gap:20px;width:100%}.donut-svg[data-v-7a77892f]{width:100px;height:100px;flex-shrink:0;color:var(--color-text)}.donut-legend[data-v-7a77892f]{display:flex;flex-direction:column;gap:8px;flex:1}.legend-row[data-v-7a77892f]{display:flex;align-items:center;gap:8px}.legend-dot[data-v-7a77892f]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-row .muted[data-v-7a77892f]{font-size:12px;flex:1}.legend-val[data-v-7a77892f]{font-size:12px}.class-bars[data-v-7a77892f]{display:flex;flex-direction:column;gap:8px;margin-top:4px;width:100%}.class-row[data-v-7a77892f]{display:flex;align-items:center;gap:10px}.class-label[data-v-7a77892f]{font-size:11px;min-width:90px;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.class-track[data-v-7a77892f]{flex:1;height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.class-fill[data-v-7a77892f]{height:100%;background:var(--color-accent);border-radius:4px;opacity:.7;transition:width .6s cubic-bezier(.16,1,.3,1)}.class-count[data-v-7a77892f]{font-size:11px;min-width:24px}.table-section[data-v-7a77892f]{transition:opacity .25s;scroll-margin-top:80px}.table-section.section-dimmed[data-v-7a77892f]{opacity:.2;pointer-events:none}.error-card[data-v-7a77892f]{display:flex;align-items:center;gap:10px;border-color:var(--color-error);color:var(--color-error);font-size:13px}.admin-banner[data-v-7a77892f]{display:flex;align-items:center;gap:16px;padding:8px 32px;background:var(--color-row-hover);border-bottom:1px solid var(--color-divider);font-size:12px}.spinning[data-v-7a77892f]{animation:spin-7a77892f .8s linear infinite}@keyframes spin-7a77892f{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.panel-overlay[data-v-7a77892f]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);z-index:100;display:flex;justify-content:flex-end}.detail-panel[data-v-7a77892f]{width:360px;max-width:100vw;height:100%;background:var(--color-surface);border-left:1px solid var(--color-border);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-handle[data-v-7a77892f]{display:none}.panel-header[data-v-7a77892f]{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid var(--color-divider);position:sticky;top:0;background:var(--color-surface);z-index:1}.panel-title[data-v-7a77892f]{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.03em;color:var(--color-text);margin-bottom:4px}.panel-subtitle[data-v-7a77892f]{font-size:11px}.icon-btn[data-v-7a77892f]{padding:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.panel-body[data-v-7a77892f]{padding:8px 0 40px;display:flex;flex-direction:column}.panel-section[data-v-7a77892f]{padding:20px 24px;border-bottom:1px solid var(--color-row-border)}.panel-section[data-v-7a77892f]:last-child{border-bottom:none}.panel-section-label[data-v-7a77892f]{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:14px}.panel-field[data-v-7a77892f]{display:flex;align-items:baseline;gap:12px;padding:6px 0}.field-label[data-v-7a77892f]{font-size:11px;min-width:90px;flex-shrink:0}.field-value[data-v-7a77892f]{font-size:13px;color:var(--color-text);word-break:break-all}.field-copy[data-v-7a77892f]{color:var(--color-accent);cursor:pointer;transition:opacity .15s}.field-copy[data-v-7a77892f]:hover{opacity:.75}.field-copy.copied[data-v-7a77892f]{color:var(--color-muted)}.field-link[data-v-7a77892f]{color:var(--color-accent);text-decoration:none;transition:opacity .15s}.field-link[data-v-7a77892f]:hover{opacity:.75;text-decoration:underline}.panel-field .status-badge[data-v-7a77892f]{font-family:var(--font-mono);font-size:11px;padding:3px 9px;border-radius:3px;border:1px solid}.panel-field .status-badge.paid[data-v-7a77892f]{color:var(--color-accent);border-color:#1ad8e666;background:#1ad8e614}.panel-field .status-badge.unpaid[data-v-7a77892f]{color:var(--color-error);border-color:#f446;background:#ff444414}.panel-field .status-badge.partial[data-v-7a77892f],.panel-field .status-badge.unknown[data-v-7a77892f]{color:var(--color-muted);border-color:#8888884d}.panel-enter-active[data-v-7a77892f],.panel-leave-active[data-v-7a77892f]{transition:opacity .2s ease}.panel-enter-active .detail-panel[data-v-7a77892f],.panel-leave-active .detail-panel[data-v-7a77892f]{transition:transform .28s cubic-bezier(.16,1,.3,1)}.panel-enter-from[data-v-7a77892f],.panel-leave-to[data-v-7a77892f]{opacity:0}.panel-enter-from .detail-panel[data-v-7a77892f],.panel-leave-to .detail-panel[data-v-7a77892f]{transform:translate(100%)}[data-theme=light] .funnel-track[data-v-7a77892f],[data-theme=light] .class-track[data-v-7a77892f]{background:#0000000f}.modal-overlay[data-v-7a77892f]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.modal[data-v-7a77892f]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--radius) * 2);width:100%;max-width:580px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px #0006}.modal-header[data-v-7a77892f]{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.modal-title[data-v-7a77892f]{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:.02em;margin-bottom:4px}.modal-subtitle[data-v-7a77892f]{font-size:11px}.modal-header-actions[data-v-7a77892f]{display:flex;align-items:center;gap:8px;flex-shrink:0}.modal-email-btn[data-v-7a77892f]{display:flex;align-items:center;gap:6px;font-size:12px;padding:6px 12px}.modal-body[data-v-7a77892f]{overflow-y:auto;flex:1;padding:8px 0}.modal-row[data-v-7a77892f]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;cursor:pointer;border-bottom:1px solid var(--color-row-border);transition:background .1s}.modal-row[data-v-7a77892f]:last-child{border-bottom:none}.modal-row[data-v-7a77892f]:hover{background:var(--color-row-hover)}.modal-row-main[data-v-7a77892f]{display:flex;flex-direction:column;gap:2px;min-width:0}.modal-row-name[data-v-7a77892f]{font-size:13px;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-row-class[data-v-7a77892f]{font-size:11px}.modal-row-meta[data-v-7a77892f]{display:flex;align-items:center;gap:10px;flex-shrink:0}.modal-row-email[data-v-7a77892f]{font-size:11px;color:var(--color-accent);text-decoration:none}.modal-row-email[data-v-7a77892f]:hover{text-decoration:underline}.modal-row-phone[data-v-7a77892f]{font-size:11px}.modal-empty[data-v-7a77892f]{padding:40px 24px;text-align:center;font-size:13px}.modal-row .status-badge[data-v-7a77892f]{font-family:var(--font-mono);font-size:10px;padding:2px 7px;border-radius:3px;border:1px solid}.modal-row .status-badge.paid[data-v-7a77892f]{color:var(--color-accent);border-color:#1ad8e666;background:#1ad8e614}.modal-row .status-badge.unpaid[data-v-7a77892f]{color:var(--color-error);border-color:#f446;background:#ff444414}.modal-row .status-badge.partial[data-v-7a77892f],.modal-row .status-badge.unknown[data-v-7a77892f]{color:var(--color-muted);border-color:#8888884d}.modal-enter-active[data-v-7a77892f],.modal-leave-active[data-v-7a77892f]{transition:opacity .2s ease}.modal-enter-active .modal[data-v-7a77892f],.modal-leave-active .modal[data-v-7a77892f]{transition:transform .22s cubic-bezier(.16,1,.3,1),opacity .2s ease}.modal-enter-from[data-v-7a77892f],.modal-leave-to[data-v-7a77892f]{opacity:0}.modal-enter-from .modal[data-v-7a77892f],.modal-leave-to .modal[data-v-7a77892f]{transform:scale(.95);opacity:0}@media(max-width:640px){.topbar[data-v-7a77892f]{padding:12px 16px;gap:8px}.brand-client[data-v-7a77892f],.brand-separator[data-v-7a77892f],.sync-time[data-v-7a77892f]{display:none}.topbar-right[data-v-7a77892f]{gap:8px}.btn-label[data-v-7a77892f]{display:none}.topbar-right button[data-v-7a77892f]{padding:8px 10px}.admin-banner[data-v-7a77892f]{padding:8px 16px}.content[data-v-7a77892f]{padding:16px;gap:14px}.stats-row[data-v-7a77892f]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat-card[data-v-7a77892f]{padding:18px;gap:6px}.stat-value[data-v-7a77892f]{font-size:32px}.stat-desc[data-v-7a77892f]{display:none}.charts-row[data-v-7a77892f]{flex-direction:column}.panel-overlay[data-v-7a77892f]{justify-content:flex-start;align-items:flex-end}.detail-panel[data-v-7a77892f]{width:100%;height:88vh;border-left:none;border-top:1px solid var(--color-border);border-radius:16px 16px 0 0}.panel-handle[data-v-7a77892f]{display:block;width:40px;height:4px;background:#8886;border-radius:2px;margin:12px auto 0;flex-shrink:0}.panel-enter-from .detail-panel[data-v-7a77892f],.panel-leave-to .detail-panel[data-v-7a77892f]{transform:translateY(100%)}}
