.login-page[data-v-1cb69575]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:var(--space-4)}.login-card[data-v-1cb69575]{width:400px;max-width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-md)}.login-header[data-v-1cb69575]{text-align:center;margin-bottom:var(--space-6)}.login-logo[data-v-1cb69575]{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-accent);margin-bottom:var(--space-2);letter-spacing:-.5px}.login-title[data-v-1cb69575]{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.login-form[data-v-1cb69575]{display:flex;flex-direction:column;gap:var(--space-4)}.form-group[data-v-1cb69575]{display:flex;flex-direction:column;gap:var(--space-1)}.form-label[data-v-1cb69575]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.form-input[data-v-1cb69575]{padding:var(--space-3) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-surface);outline:none;transition:border-color var(--transition-fast)}.form-input[data-v-1cb69575]:focus{border-color:var(--color-accent)}.form-input[data-v-1cb69575]::placeholder{color:var(--color-text-secondary)}.form-input[data-v-1cb69575]:disabled{background:var(--color-neutral-light);cursor:not-allowed}.form-error[data-v-1cb69575]{padding:var(--space-2) var(--space-3);background:var(--color-danger-light);color:var(--color-danger);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.login-btn[data-v-1cb69575]{padding:var(--space-3) var(--space-4);background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast);margin-top:var(--space-2)}.login-btn[data-v-1cb69575]:hover:not(:disabled){background:var(--color-accent-hover)}.login-btn[data-v-1cb69575]:disabled{opacity:.6;cursor:not-allowed}.data-table-wrapper[data-v-73d2a4f3]{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);overflow:hidden}.data-table[data-v-73d2a4f3]{width:100%;border-collapse:collapse;table-layout:auto}thead tr[data-v-73d2a4f3]{height:var(--table-header-height);background:var(--color-bg)}th[data-v-73d2a4f3]{padding:0 var(--space-3);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:var(--table-border);white-space:nowrap;-webkit-user-select:none;user-select:none}th.sortable[data-v-73d2a4f3]{cursor:pointer}th.sortable[data-v-73d2a4f3]:hover{color:var(--color-text-primary)}.th-content[data-v-73d2a4f3]{display:flex;align-items:center;gap:var(--space-1)}.sort-icon[data-v-73d2a4f3]{font-size:10px;color:var(--color-accent)}tbody tr[data-v-73d2a4f3]{height:var(--table-row-height);border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}tbody tr[data-v-73d2a4f3]:last-child{border-bottom:none}tbody tr.even[data-v-73d2a4f3]{background:#fafbfc}tbody tr[data-v-73d2a4f3]:hover{background:var(--color-accent-light);cursor:pointer}td[data-v-73d2a4f3]{padding:0 var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.empty-cell[data-v-73d2a4f3],.loading-cell[data-v-73d2a4f3]{text-align:center;padding:var(--space-10) 0}.empty-state[data-v-73d2a4f3]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.empty-icon[data-v-73d2a4f3]{font-size:32px}.empty-text[data-v-73d2a4f3]{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.loading-state[data-v-73d2a4f3]{padding:var(--space-6) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.pagination[data-v-73d2a4f3]{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface)}.page-btn[data-v-73d2a4f3]{min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.page-btn[data-v-73d2a4f3]:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.page-btn[data-v-73d2a4f3]:disabled{opacity:.4;cursor:not-allowed}.page-btn.active[data-v-73d2a4f3]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.page-dots[data-v-73d2a4f3]{padding:0 var(--space-1);color:var(--color-text-secondary)}.page-info[data-v-73d2a4f3]{margin-left:auto;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.status-badge[data-v-6218cb92]{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:100px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap}.badge-dot[data-v-6218cb92]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.badge-green[data-v-6218cb92]{background:var(--color-success-light);color:var(--color-success)}.badge-green .badge-dot[data-v-6218cb92]{background:var(--color-success)}.badge-orange[data-v-6218cb92]{background:var(--color-warning-light);color:var(--color-warning)}.badge-orange .badge-dot[data-v-6218cb92]{background:var(--color-warning)}.badge-red[data-v-6218cb92]{background:var(--color-danger-light);color:var(--color-danger)}.badge-red .badge-dot[data-v-6218cb92]{background:var(--color-danger)}.badge-gray[data-v-6218cb92]{background:var(--color-neutral-light);color:var(--color-neutral)}.badge-gray .badge-dot[data-v-6218cb92]{background:var(--color-neutral)}.filter-bar[data-v-db4396cc]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;flex-wrap:wrap}.filter-search[data-v-db4396cc]{position:relative;flex:1;min-width:200px}.search-icon[data-v-db4396cc]{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);font-size:var(--font-size-sm);pointer-events:none}.search-input[data-v-db4396cc]{width:100%;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);outline:none;transition:border-color var(--transition-fast)}.search-input[data-v-db4396cc]:focus{border-color:var(--color-accent)}.search-input[data-v-db4396cc]::placeholder{color:var(--color-text-secondary)}.filter-dropdowns[data-v-db4396cc]{display:flex;gap:var(--space-2);flex-wrap:wrap}.filter-select[data-v-db4396cc]{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);outline:none;cursor:pointer;transition:border-color var(--transition-fast);min-width:140px}.filter-select[data-v-db4396cc]:focus{border-color:var(--color-accent)}.filter-reset[data-v-db4396cc]{padding:var(--space-2) var(--space-3);background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.filter-reset[data-v-db4396cc]:hover{color:var(--color-danger);border-color:var(--color-danger)}.confirm-overlay[data-v-d240bfeb]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.confirm-dialog[data-v-d240bfeb]{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-6);width:420px;max-width:90vw;box-shadow:var(--shadow-lg)}.confirm-header[data-v-d240bfeb]{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.confirm-icon[data-v-d240bfeb]{font-size:24px}.confirm-title[data-v-d240bfeb]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.confirm-message[data-v-d240bfeb]{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-5);line-height:1.6}.confirm-prompt[data-v-d240bfeb]{margin-bottom:var(--space-5)}.prompt-label[data-v-d240bfeb]{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-1)}.prompt-input[data-v-d240bfeb]{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-surface);outline:none;transition:border-color var(--transition-fast)}.prompt-input[data-v-d240bfeb]:focus{border-color:var(--color-accent)}.confirm-actions[data-v-d240bfeb]{display:flex;justify-content:flex-end;gap:var(--space-3)}.btn[data-v-d240bfeb]{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast)}.btn[data-v-d240bfeb]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-d240bfeb]{background:var(--color-accent);color:#fff}.btn-primary[data-v-d240bfeb]:hover:not(:disabled){background:var(--color-accent-hover)}.btn-danger[data-v-d240bfeb]{background:var(--color-danger);color:#fff}.btn-danger[data-v-d240bfeb]:hover:not(:disabled){background:#b91c1c}.btn-warning[data-v-d240bfeb]{background:var(--color-warning);color:#fff}.btn-warning[data-v-d240bfeb]:hover:not(:disabled){background:#b45309}.btn-success[data-v-d240bfeb]{background:var(--color-success);color:#fff}.btn-success[data-v-d240bfeb]:hover:not(:disabled){background:#15803d}.btn-secondary[data-v-d240bfeb]{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary[data-v-d240bfeb]:hover{background:var(--color-bg)}.clients-view[data-v-ad76e75d]{display:flex;flex-direction:column;gap:0}.cell-id[data-v-ad76e75d]{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-xs)}.cell-phone[data-v-ad76e75d]{font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums}.cell-name[data-v-ad76e75d]{max-width:120px;overflow:hidden;text-overflow:ellipsis}.cell-count[data-v-ad76e75d]{text-align:center;font-variant-numeric:tabular-nums}.cell-balance[data-v-ad76e75d]{font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.balance-negative[data-v-ad76e75d]{color:var(--color-danger)}.balance-positive[data-v-ad76e75d]{color:var(--color-success)}.cell-date[data-v-ad76e75d]{color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.cell-actions[data-v-ad76e75d]{display:flex;gap:var(--space-1)}.action-btn[data-v-ad76e75d]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;transition:background var(--transition-fast)}.action-btn[data-v-ad76e75d]:hover{background:var(--color-bg)}.action-danger[data-v-ad76e75d]:hover{background:var(--color-danger-light)}.action-success[data-v-ad76e75d]:hover{background:var(--color-success-light)}.client-card-view[data-v-40211bcd]{display:flex;flex-direction:column;gap:var(--space-4)}.loading[data-v-40211bcd],.error[data-v-40211bcd]{padding:var(--space-10);text-align:center;color:var(--color-text-secondary)}.error[data-v-40211bcd]{color:var(--color-danger)}.card-header[data-v-40211bcd]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.header-left[data-v-40211bcd]{display:flex;align-items:center;gap:var(--space-3)}.back-link[data-v-40211bcd]{font-size:var(--font-size-sm);color:var(--color-accent)}.client-name[data-v-40211bcd]{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.header-actions[data-v-40211bcd]{display:flex;gap:var(--space-2)}.btn[data-v-40211bcd]{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast)}.btn[data-v-40211bcd]:disabled{opacity:.5;cursor:not-allowed}.btn-sm[data-v-40211bcd]{padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs)}.btn-primary[data-v-40211bcd]{background:var(--color-accent);color:#fff}.btn-primary[data-v-40211bcd]:hover:not(:disabled){background:var(--color-accent-hover)}.btn-outline[data-v-40211bcd]{background:none;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-outline[data-v-40211bcd]:hover{background:var(--color-bg)}.btn-danger-outline[data-v-40211bcd]{background:none;color:var(--color-danger);border:1px solid var(--color-danger)}.btn-danger-outline[data-v-40211bcd]:hover{background:var(--color-danger-light)}.btn-success-outline[data-v-40211bcd]{background:none;color:var(--color-success);border:1px solid var(--color-success)}.btn-success-outline[data-v-40211bcd]:hover{background:var(--color-success-light)}.btn-icon[data-v-40211bcd]{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;font-size:14px}.btn-icon[data-v-40211bcd]:hover{background:var(--color-bg)}.btn-danger-icon[data-v-40211bcd]:hover{background:var(--color-danger-light)}.sections-grid[data-v-40211bcd]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.card-section[data-v-40211bcd]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.card-section.full-width[data-v-40211bcd]{grid-column:1 / -1}.section-title[data-v-40211bcd]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.detail-grid[data-v-40211bcd]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.detail-item[data-v-40211bcd]{display:flex;flex-direction:column;gap:2px}.detail-label[data-v-40211bcd]{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.detail-value[data-v-40211bcd]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);word-break:break-word}.balance-negative[data-v-40211bcd]{color:var(--color-danger)}.balance-positive[data-v-40211bcd]{color:var(--color-success)}.quick-actions[data-v-40211bcd]{display:flex;flex-direction:column;gap:var(--space-3)}.action-row[data-v-40211bcd]{display:flex;flex-direction:column;gap:var(--space-1)}.action-label[data-v-40211bcd]{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.action-form[data-v-40211bcd]{display:flex;gap:var(--space-2)}.action-input[data-v-40211bcd]{flex:1;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);outline:none}.action-input[data-v-40211bcd]:focus{border-color:var(--color-accent)}.action-select[data-v-40211bcd]{flex:1;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);outline:none;cursor:pointer}.action-select[data-v-40211bcd]:focus{border-color:var(--color-accent)}.canary-row[data-v-40211bcd]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border)}.canary-row[data-v-40211bcd]:last-child{border-bottom:none}.canary-info[data-v-40211bcd]{display:flex;gap:var(--space-3);align-items:center}.canary-server[data-v-40211bcd]{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.canary-proto[data-v-40211bcd]{font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-bg);padding:2px 6px;border-radius:var(--radius-sm)}.canary-expires[data-v-40211bcd]{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.loading-small[data-v-40211bcd]{padding:var(--space-2);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.modal-overlay[data-v-40211bcd]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-40211bcd]{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-6);min-width:400px;max-width:600px;max-height:80vh;overflow-y:auto}.modal-content h3[data-v-40211bcd]{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.modal-body[data-v-40211bcd]{display:flex;flex-direction:column;gap:var(--space-3)}.form-group[data-v-40211bcd]{display:flex;flex-direction:column;gap:var(--space-1)}.form-group label[data-v-40211bcd]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.modal-actions[data-v-40211bcd]{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-4)}.error-text[data-v-40211bcd]{color:var(--color-danger);font-size:var(--font-size-sm)}.inner-table[data-v-40211bcd]{width:100%;border-collapse:collapse}.inner-table th[data-v-40211bcd]{padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.inner-table td[data-v-40211bcd]{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.inner-table tr:last-child td[data-v-40211bcd]{border-bottom:none}.inner-table tr:hover td[data-v-40211bcd]{background:var(--color-accent-light)}.mono[data-v-40211bcd]{font-family:monospace;font-size:var(--font-size-xs)}.empty-sub[data-v-40211bcd]{padding:var(--space-4) 0;text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.notes-block[data-v-40211bcd]{background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-3)}.notes-text[data-v-40211bcd]{margin:0;white-space:pre-wrap;font-family:inherit;font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-primary)}.servers-view[data-v-67c176db]{display:flex;flex-direction:column}.mono[data-v-67c176db]{font-family:monospace;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.server-name-cell[data-v-67c176db]{display:flex;align-items:center;gap:var(--space-2)}.country-flag[data-v-67c176db]{font-size:var(--font-size-lg);line-height:1}.server-name[data-v-67c176db]{font-weight:var(--font-weight-medium)}.role-label[data-v-67c176db]{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.role-primary[data-v-67c176db]{background:var(--color-success-light);color:var(--color-success)}.role-secondary[data-v-67c176db]{background:var(--color-accent-light);color:var(--color-accent)}.role-lab[data-v-67c176db]{background:var(--color-warning-light);color:var(--color-warning)}.role-backup[data-v-67c176db]{background:var(--color-neutral-light);color:var(--color-neutral)}.rollout-label[data-v-67c176db]{display:inline-block;padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.rollout-lab[data-v-67c176db]{background:var(--color-neutral-light);color:var(--color-neutral)}.rollout-lab-ready[data-v-67c176db]{background:#e8f5e9;color:#2e7d32}.rollout-canary[data-v-67c176db]{background:#fff3e0;color:#e65100}.rollout-public-ready[data-v-67c176db]{background:#e3f2fd;color:#1565c0}.rollout-public[data-v-67c176db]{background:var(--color-success-light);color:var(--color-success)}.rollout-disabled[data-v-67c176db]{background:var(--color-neutral-light);color:var(--color-neutral);text-decoration:line-through}.rollout-degraded[data-v-67c176db]{background:var(--color-warning-light);color:var(--color-warning)}.rollout-rollback[data-v-67c176db]{background:var(--color-danger-light);color:var(--color-danger)}.protocol-chips[data-v-67c176db]{display:flex;flex-wrap:wrap;gap:4px}.proto-chip[data-v-67c176db]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-accent-light);color:var(--color-accent)}.proto-disabled[data-v-67c176db]{background:var(--color-neutral-light);color:var(--color-neutral);text-decoration:line-through}.proto-test[data-v-67c176db]{background:var(--color-warning-light);color:var(--color-warning)}.proto-badge[data-v-67c176db]{font-size:10px;padding:0 3px;border-radius:2px;background:var(--color-warning);color:#fff}.no-protocols[data-v-67c176db]{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.toggle-label[data-v-67c176db]{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:var(--font-size-xs)}.toggle-label.toggle-disabled[data-v-67c176db]{opacity:.6;cursor:not-allowed}.toggle-text[data-v-67c176db]{font-weight:var(--font-weight-medium)}.toggle-lock[data-v-67c176db]{font-size:12px}.cell-actions[data-v-67c176db]{display:flex;gap:var(--space-1)}.action-btn[data-v-67c176db]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;transition:background var(--transition-fast)}.action-btn[data-v-67c176db]:hover{background:var(--color-bg)}.action-btn[data-v-67c176db]:disabled{opacity:.5;cursor:not-allowed}.readiness-panel[data-v-67c176db],.canary-panel[data-v-67c176db]{margin-top:var(--space-4);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.readiness-header[data-v-67c176db],.canary-header[data-v-67c176db]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.readiness-header h3[data-v-67c176db],.canary-header h3[data-v-67c176db]{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.readiness-close[data-v-67c176db]{background:none;border:none;cursor:pointer;font-size:var(--font-size-lg);color:var(--color-text-secondary);padding:4px}.readiness-status[data-v-67c176db]{margin-bottom:var(--space-3);font-size:var(--font-size-sm)}.ready-yes[data-v-67c176db]{color:var(--color-success);font-weight:var(--font-weight-semibold)}.ready-no[data-v-67c176db]{color:var(--color-danger);font-weight:var(--font-weight-semibold)}.ready-canary[data-v-67c176db]{color:#e65100;font-size:var(--font-size-xs);margin-left:var(--space-2)}.readiness-checks[data-v-67c176db]{display:flex;flex-direction:column;gap:var(--space-2)}.readiness-check[data-v-67c176db]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.check-pass[data-v-67c176db]{background:#e8f5e9}.check-fail[data-v-67c176db]{background:#fbe9e7}.check-icon[data-v-67c176db]{font-weight:700}.check-name[data-v-67c176db]{font-weight:var(--font-weight-medium);min-width:140px}.check-msg[data-v-67c176db]{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.readiness-approval[data-v-67c176db]{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-warning-light);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-warning);font-weight:var(--font-weight-medium)}.lab-warning-banner[data-v-67c176db]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-md);margin-top:var(--space-4);font-size:var(--font-size-sm);color:var(--color-warning)}.warning-icon[data-v-67c176db]{font-size:var(--font-size-lg)}.badge[data-v-67c176db]{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.badge-green[data-v-67c176db]{background:var(--color-success-light);color:var(--color-success)}.badge-orange[data-v-67c176db]{background:var(--color-warning-light);color:var(--color-warning)}.inner-table[data-v-67c176db]{width:100%;border-collapse:collapse}.inner-table th[data-v-67c176db]{padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.inner-table td[data-v-67c176db]{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.inner-table tr:last-child td[data-v-67c176db]{border-bottom:none}.inner-table tr:hover td[data-v-67c176db]{background:var(--color-accent-light)}.empty-sub[data-v-67c176db]{padding:var(--space-4) 0;text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.tariffs-view[data-v-6da1e44f]{display:flex;flex-direction:column}.price[data-v-6da1e44f]{font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.mono[data-v-6da1e44f]{font-family:monospace;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.devices-view[data-v-d41415fa]{display:flex;flex-direction:column;gap:0}.mono[data-v-d41415fa]{font-family:monospace;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.client-link[data-v-d41415fa]{color:var(--color-accent);font-weight:var(--font-weight-medium)}.client-link[data-v-d41415fa]:hover{text-decoration:underline}.cell-date[data-v-d41415fa]{color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.bug-reports-page[data-v-01ee100c]{max-width:1100px}.page-header[data-v-01ee100c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h1[data-v-01ee100c]{margin:0}.filter-row[data-v-01ee100c]{display:flex;gap:8px}.select[data-v-01ee100c]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:14px}.loading[data-v-01ee100c],.empty[data-v-01ee100c],.error[data-v-01ee100c]{padding:20px;text-align:center;color:var(--color-text-secondary)}.error[data-v-01ee100c]{color:var(--color-danger)}.reports-table[data-v-01ee100c]{overflow-x:auto}table[data-v-01ee100c]{width:100%;border-collapse:collapse;font-size:13px}thead[data-v-01ee100c]{background:var(--color-bg)}th[data-v-01ee100c]{padding:10px 12px;text-align:left;font-weight:600;border-bottom:2px solid var(--color-border)}td[data-v-01ee100c]{padding:10px 12px;border-bottom:1px solid var(--color-border);vertical-align:top}tr[data-v-01ee100c]:hover{background:var(--color-bg)}.sub-text[data-v-01ee100c]{font-size:12px;color:var(--color-text-secondary)}.msg-cell[data-v-01ee100c]{max-width:200px;overflow:hidden;text-overflow:ellipsis}.badge-device[data-v-01ee100c]{background:#e0e7ff;color:#3730a3;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600}.status-badge[data-v-01ee100c]{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}.status-new[data-v-01ee100c]{background:#fef3c7;color:#92400e}.status-in_progress[data-v-01ee100c]{background:#dbeafe;color:#1e40af}.status-resolved[data-v-01ee100c]{background:#d1fae5;color:#065f46}.status-rejected[data-v-01ee100c]{background:#fee2e2;color:#991b1b}.pagination[data-v-01ee100c]{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px}.page-info[data-v-01ee100c]{font-size:13px;color:var(--color-text-secondary)}.modal-overlay[data-v-01ee100c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200;padding:24px}.modal-card[data-v-01ee100c]{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px;max-width:600px;width:100%;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto}.modal-card h3[data-v-01ee100c]{margin-bottom:16px}.modal-actions[data-v-01ee100c]{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.detail-row[data-v-01ee100c]{display:flex;gap:8px;margin-bottom:8px;font-size:14px}.detail-label[data-v-01ee100c]{font-weight:600;min-width:120px;color:var(--color-text-secondary)}.detail-section[data-v-01ee100c]{margin:12px 0}.detail-message[data-v-01ee100c]{background:var(--color-bg);padding:12px;border-radius:var(--radius-md);font-size:14px;line-height:1.6;white-space:pre-wrap}.detail-diag[data-v-01ee100c]{background:var(--color-bg);padding:10px 12px;border-radius:var(--radius-md);font-size:12px}.diag-row[data-v-01ee100c]{display:flex;gap:8px;padding:2px 0}.diag-key[data-v-01ee100c]{font-weight:600;min-width:140px;color:var(--color-text-secondary)}.diag-val[data-v-01ee100c]{color:var(--color-text-primary)}.action-row[data-v-01ee100c]{display:flex;gap:8px;margin:12px 0}.btn-danger-outline[data-v-01ee100c]{background:transparent;color:var(--color-danger);border:1px solid var(--color-danger)}.btn-danger-outline[data-v-01ee100c]:hover{background:#fee2e2}.btn-accent[data-v-01ee100c]{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent)}.btn-accent[data-v-01ee100c]:hover{opacity:.9}.admin-notes-section[data-v-01ee100c]{margin-top:12px}.notes-textarea[data-v-01ee100c]{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 12px;font-size:14px;font-family:inherit;resize:vertical}.notes-textarea[data-v-01ee100c]:focus{outline:none;border-color:var(--color-accent)}tr.status-new td[data-v-01ee100c]:first-child{border-left:3px solid #f59e0b}tr.status-in_progress td[data-v-01ee100c]:first-child{border-left:3px solid #3b82f6}.admin-layout[data-v-c4c7ac87]{display:flex;min-height:100vh;background:var(--color-bg)}.sidebar[data-v-c4c7ac87]{width:var(--sidebar-width);background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100}.sidebar-header[data-v-c4c7ac87]{height:var(--topbar-height);display:flex;align-items:center;padding:0 var(--space-4);border-bottom:1px solid var(--color-border);gap:var(--space-2)}.logo[data-v-c4c7ac87]{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-accent);letter-spacing:-.5px}.logo-label[data-v-c4c7ac87]{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);background:var(--color-neutral-light);padding:2px 8px;border-radius:var(--radius-sm)}.sidebar-nav[data-v-c4c7ac87]{flex:1;padding:var(--space-2) 0}.nav-item[data-v-c4c7ac87]{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-4);height:var(--table-row-height);color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);border-left:3px solid transparent}.nav-item[data-v-c4c7ac87]:hover{color:var(--color-text-primary);background:var(--color-bg);text-decoration:none}.nav-item.active[data-v-c4c7ac87]{color:var(--color-accent);background:var(--color-accent-light);border-left-color:var(--color-accent)}.nav-icon[data-v-c4c7ac87]{font-size:var(--font-size-lg);width:24px;text-align:center}.sidebar-footer[data-v-c4c7ac87]{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border)}.user-info[data-v-c4c7ac87]{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--space-3)}.user-phone[data-v-c4c7ac87]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.user-role[data-v-c4c7ac87]{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase}.logout-btn[data-v-c4c7ac87]{width:100%;padding:var(--space-2) var(--space-3);background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.logout-btn[data-v-c4c7ac87]:hover{background:var(--color-danger-light);border-color:var(--color-danger)}.main-area[data-v-c4c7ac87]{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;min-height:100vh}.topbar[data-v-c4c7ac87]{height:var(--topbar-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);position:sticky;top:0;z-index:50}.page-title[data-v-c4c7ac87]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.topbar-time[data-v-c4c7ac87]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.content[data-v-c4c7ac87]{flex:1;padding:var(--space-6)}:root{--color-bg: #F6F7F9;--color-surface: #FFFFFF;--color-border: #E5E7EB;--color-text-primary: #111827;--color-text-secondary: #6B7280;--color-accent: #2563EB;--color-accent-hover: #1D4ED8;--color-accent-light: #EFF6FF;--color-success: #16A34A;--color-success-light: #F0FDF4;--color-warning: #D97706;--color-warning-light: #FFFBEB;--color-danger: #DC2626;--color-danger-light: #FEF2F2;--color-neutral: #6B7280;--color-neutral-light: #F3F4F6;--font-family: system-ui, -apple-system, sans-serif;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height: 1.5;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--table-row-height: 48px;--table-header-height: 40px;--table-border: 1px solid var(--color-border);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--sidebar-width: 240px;--topbar-height: 56px;--transition-fast: .15s ease;--transition-base: .2s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height);color:var(--color-text-primary);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}input,select,button,textarea{font-family:inherit;font-size:inherit}
