.login-page[data-v-e130af13]{height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top,#1d283a,#020617 60%);color:#e5e7eb}.login-card[data-v-e130af13]{width:360px;padding:32px 28px;border-radius:16px;background:#0f172ae6;box-shadow:0 25px 50px -12px #0f172ab3;border:1px solid rgba(148,163,184,.3)}.title[data-v-e130af13]{font-size:20px;font-weight:600;margin-bottom:24px;text-align:center}.form[data-v-e130af13]{display:flex;flex-direction:column;gap:16px}.form-item[data-v-e130af13]{display:flex;flex-direction:column;gap:6px}label[data-v-e130af13]{font-size:14px;color:#9ca3af}input[data-v-e130af13]{padding:8px 10px;border-radius:6px;border:1px solid rgba(148,163,184,.5);background:#0f172acc;color:#e5e7eb;outline:none}input[data-v-e130af13]:focus{border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf866}.error[data-v-e130af13]{font-size:13px;color:#fca5a5}.btn-submit[data-v-e130af13]{margin-top:8px;padding:8px 0;border-radius:6px;border:none;background:linear-gradient(to right,#38bdf8,#6366f1);color:#0f172a;font-weight:500;cursor:pointer}.btn-submit[data-v-e130af13]:disabled{opacity:.7;cursor:not-allowed}.page[data-v-2c22ed26]{padding:16px}.page-title[data-v-2c22ed26]{font-size:18px;margin-bottom:12px}.toolbar[data-v-2c22ed26]{display:flex;gap:8px;margin-bottom:12px}.select[data-v-2c22ed26]{padding:4px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb}.btn[data-v-2c22ed26]{padding:4px 12px;border-radius:4px;border:none;background:#38bdf8;color:#0f172a;cursor:pointer;font-size:13px}.btn-sm[data-v-2c22ed26]{padding:2px 8px;font-size:12px}.btn[data-v-2c22ed26]:disabled{opacity:.6;cursor:not-allowed}.table[data-v-2c22ed26]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-2c22ed26],td[data-v-2c22ed26]{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.3)}.text[data-v-2c22ed26]{max-width:280px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tag[data-v-2c22ed26]{display:inline-block;padding:2px 6px;border-radius:10px;font-size:12px}.tag-pending[data-v-2c22ed26]{background:#fbbf2433;color:#fcd34d}.tag-warn[data-v-2c22ed26]{background:#f9731633;color:#fdba74}.tag-ok[data-v-2c22ed26]{background:#22c55e26;color:#4ade80}.link[data-v-2c22ed26]{border:none;background:transparent;padding:0;color:#38bdf8;cursor:pointer;font-size:13px}.modal-mask[data-v-2c22ed26]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-2c22ed26]{background:#0f172a;border:1px solid rgba(148,163,184,.3);border-radius:12px;min-width:420px;max-width:560px;max-height:90vh;overflow:auto}.modal-header[data-v-2c22ed26]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(148,163,184,.2)}.modal-header h3[data-v-2c22ed26]{margin:0;font-size:16px}.modal-close[data-v-2c22ed26]{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;line-height:1}.modal-body[data-v-2c22ed26]{padding:16px}.detail-row[data-v-2c22ed26]{margin-bottom:8px;font-size:13px}.detail-row.full[data-v-2c22ed26]{display:flex;flex-direction:column;gap:4px}.detail-row .label[data-v-2c22ed26]{color:#94a3b8;margin-right:8px}.content-block[data-v-2c22ed26]{background:#0f172acc;padding:8px;border-radius:6px;white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px}.muted[data-v-2c22ed26]{font-size:12px;color:#64748b}.actions[data-v-2c22ed26]{margin-top:16px;padding-top:16px;border-top:1px solid rgba(148,163,184,.2)}.action-group[data-v-2c22ed26]{margin-bottom:12px}.action-group label[data-v-2c22ed26]{display:block;font-size:12px;color:#94a3b8;margin-bottom:4px}.textarea[data-v-2c22ed26]{width:100%;padding:8px;border-radius:6px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb;font-size:13px;margin-bottom:8px;resize:vertical}.page[data-v-6700a7da]{padding:16px}.page-title[data-v-6700a7da]{font-size:18px;margin-bottom:12px}.toolbar[data-v-6700a7da]{display:flex;gap:8px;margin-bottom:12px}.input[data-v-6700a7da]{padding:4px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb;font-size:13px}.btn[data-v-6700a7da]{padding:4px 12px;border-radius:4px;border:none;background:#38bdf8;color:#0f172a;cursor:pointer;font-size:13px}.btn-sm[data-v-6700a7da]{padding:2px 10px;font-size:12px}.btn[data-v-6700a7da]:disabled{opacity:.5;cursor:not-allowed}.btn-ghost[data-v-6700a7da]{background:transparent;color:#94a3b8;border:1px solid rgba(148,163,184,.5)}.table[data-v-6700a7da]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-6700a7da],td[data-v-6700a7da]{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.3)}.link[data-v-6700a7da]{border:none;background:transparent;padding:0;margin:0 4px;color:#38bdf8;cursor:pointer;font-size:13px}.link-danger[data-v-6700a7da]{color:#fca5a5}.pagination[data-v-6700a7da]{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:#94a3b8}.page-info[data-v-6700a7da]{flex:1}.modal-mask[data-v-6700a7da]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-6700a7da]{background:#0f172a;border:1px solid rgba(148,163,184,.3);border-radius:12px;min-width:420px;max-width:560px;max-height:90vh;overflow:auto}.modal-header[data-v-6700a7da]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(148,163,184,.2)}.modal-header h3[data-v-6700a7da]{margin:0;font-size:16px}.modal-close[data-v-6700a7da]{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;line-height:1}.modal-body[data-v-6700a7da]{padding:16px}.form-item[data-v-6700a7da]{margin-bottom:12px}.form-item label[data-v-6700a7da]{display:block;font-size:12px;color:#94a3b8;margin-bottom:4px}.form-item .input[data-v-6700a7da],.form-item .textarea[data-v-6700a7da]{width:100%;box-sizing:border-box}.textarea[data-v-6700a7da]{padding:8px;border-radius:6px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb;font-size:13px;resize:vertical}.modal-actions[data-v-6700a7da]{display:flex;gap:8px;margin-top:16px}.page[data-v-f10e2c9d]{padding:16px}.page-title[data-v-f10e2c9d]{font-size:18px;margin-bottom:12px}.toolbar[data-v-f10e2c9d]{display:flex;gap:8px;margin-bottom:12px}.input[data-v-f10e2c9d],.select[data-v-f10e2c9d]{padding:4px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb;font-size:13px}.input[data-v-f10e2c9d]:focus,.select[data-v-f10e2c9d]:focus{outline:none;border-color:#38bdf8}.btn[data-v-f10e2c9d]{padding:4px 12px;border-radius:4px;border:none;background:#38bdf8;color:#0f172a;cursor:pointer;font-size:13px}.table[data-v-f10e2c9d]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-f10e2c9d],td[data-v-f10e2c9d]{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.3)}.mono[data-v-f10e2c9d]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.tag[data-v-f10e2c9d]{display:inline-block;padding:2px 6px;border-radius:10px;font-size:12px}.tag-ok[data-v-f10e2c9d]{background:#22c55e26;color:#4ade80}.tag-danger[data-v-f10e2c9d]{background:#f8717126;color:#fecaca}.link[data-v-f10e2c9d]{border:none;background:transparent;padding:0;margin:0 4px;color:#38bdf8;cursor:pointer;font-size:13px}.link-danger[data-v-f10e2c9d]{color:#fca5a5}.pagination[data-v-f10e2c9d]{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:#94a3b8}.page-info[data-v-f10e2c9d]{flex:1}.btn-sm[data-v-f10e2c9d]{padding:2px 10px;font-size:12px}.btn[data-v-f10e2c9d]:disabled{opacity:.5;cursor:not-allowed}.page[data-v-5448042b]{padding:16px}.page-title[data-v-5448042b]{font-size:18px;margin-bottom:12px}.toolbar[data-v-5448042b]{display:flex;gap:8px;margin-bottom:12px}.input[data-v-5448042b],.select[data-v-5448042b]{padding:4px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb;font-size:13px}.btn[data-v-5448042b]{padding:4px 12px;border-radius:4px;border:none;background:#38bdf8;color:#0f172a;cursor:pointer;font-size:13px}.table[data-v-5448042b]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-5448042b],td[data-v-5448042b]{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.3);vertical-align:top}.mono[data-v-5448042b]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.text[data-v-5448042b]{max-width:420px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tag[data-v-5448042b]{display:inline-block;padding:2px 6px;border-radius:10px;font-size:12px}.tag-ok[data-v-5448042b]{background:#22c55e26;color:#4ade80}.tag-muted[data-v-5448042b]{background:#94a3b833;color:#e5e7eb}.link[data-v-5448042b]{border:none;background:transparent;padding:0;margin:0 4px;color:#38bdf8;cursor:pointer;font-size:13px}.link-warn[data-v-5448042b]{color:#fdba74}.link-danger[data-v-5448042b]{color:#fca5a5}.pagination[data-v-5448042b]{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:#94a3b8}.page-info[data-v-5448042b]{flex:1}.btn-sm[data-v-5448042b]{padding:2px 10px;font-size:12px}.btn[data-v-5448042b]:disabled{opacity:.5;cursor:not-allowed}.page[data-v-049194e3]{padding:16px}.page-title[data-v-049194e3]{font-size:18px;margin-bottom:12px}.toolbar[data-v-049194e3]{display:flex;gap:8px;margin-bottom:12px}.select[data-v-049194e3]{padding:4px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb}.btn[data-v-049194e3]{padding:4px 12px;border-radius:4px;border:none;background:#38bdf8;color:#0f172a;cursor:pointer;font-size:13px}.btn-sm[data-v-049194e3]{padding:2px 10px;font-size:12px}.btn[data-v-049194e3]:disabled{opacity:.5;cursor:not-allowed}.table[data-v-049194e3]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-049194e3],td[data-v-049194e3]{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.3)}.text[data-v-049194e3]{max-width:280px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mono[data-v-049194e3]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.muted[data-v-049194e3]{font-size:12px;color:#64748b}.tag[data-v-049194e3]{display:inline-block;padding:2px 6px;border-radius:10px;font-size:12px}.tag-pending[data-v-049194e3]{background:#fbbf2433;color:#fcd34d}.tag-ok[data-v-049194e3]{background:#22c55e26;color:#4ade80}.tag-muted[data-v-049194e3]{background:#94a3b833;color:#e5e7eb}.link[data-v-049194e3]{border:none;background:transparent;padding:0;margin:0 4px;color:#38bdf8;cursor:pointer;font-size:13px}.link-muted[data-v-049194e3]{color:#94a3b8}.pagination[data-v-049194e3]{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:#94a3b8}.page-info[data-v-049194e3]{flex:1}.page[data-v-82846cb5]{padding:16px}.page-title[data-v-82846cb5]{font-size:18px;margin-bottom:12px}.toolbar[data-v-82846cb5]{display:flex;gap:8px;margin-bottom:12px}.btn[data-v-82846cb5]{padding:4px 12px;border-radius:4px;border:none;background:#38bdf8;color:#0f172a;cursor:pointer;font-size:13px}.btn-ghost[data-v-82846cb5]{background:transparent;color:#94a3b8;border:1px solid rgba(148,163,184,.5)}.btn[data-v-82846cb5]:disabled{opacity:.6;cursor:not-allowed}.table[data-v-82846cb5]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-82846cb5],td[data-v-82846cb5]{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.3)}.text[data-v-82846cb5]{max-width:360px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tag[data-v-82846cb5]{display:inline-block;padding:2px 6px;border-radius:10px;font-size:12px}.tag-ok[data-v-82846cb5]{background:#22c55e26;color:#4ade80}.tag-muted[data-v-82846cb5]{background:#94a3b833;color:#e5e7eb}.link[data-v-82846cb5]{border:none;background:transparent;padding:0;margin:0 4px;color:#38bdf8;cursor:pointer;font-size:13px}.link-danger[data-v-82846cb5]{color:#fca5a5}.pagination[data-v-82846cb5]{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:#94a3b8}.page-info[data-v-82846cb5]{flex:1}.btn-sm[data-v-82846cb5]{padding:2px 10px;font-size:12px}.btn[data-v-82846cb5]:disabled{opacity:.5;cursor:not-allowed}.modal-mask[data-v-82846cb5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-82846cb5]{background:#0f172a;border:1px solid rgba(148,163,184,.3);border-radius:12px;min-width:400px;max-width:500px}.modal-header[data-v-82846cb5]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(148,163,184,.2)}.modal-header h3[data-v-82846cb5]{margin:0;font-size:16px}.modal-close[data-v-82846cb5]{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;line-height:1}.modal-body[data-v-82846cb5]{padding:16px}.form-item[data-v-82846cb5]{margin-bottom:12px}.form-item label[data-v-82846cb5]{display:block;font-size:12px;color:#94a3b8;margin-bottom:4px}.required[data-v-82846cb5]{color:#f87171}.input[data-v-82846cb5],.select[data-v-82846cb5]{width:100%;padding:6px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb;font-size:13px;box-sizing:border-box}.textarea[data-v-82846cb5]{width:100%;padding:6px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.5);background:#0f172ae6;color:#e5e7eb;font-size:13px;resize:vertical;box-sizing:border-box}.modal-actions[data-v-82846cb5]{display:flex;gap:8px;margin-top:16px}*,*:before,*:after{box-sizing:border-box}html,body,#app{margin:0;padding:0;height:100%;font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif}.dashboard{min-height:100%;background:linear-gradient(135deg,#0c162d,#1a2a4a,#0f1c33);color:#e8eef6;padding:20px}.dashboard-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:16px 24px;background:#14284699;border-radius:12px;border:1px solid rgba(100,150,220,.2)}.dashboard-header .title{margin:0;font-size:1.75rem;font-weight:700;letter-spacing:.05em;background:linear-gradient(90deg,#7eb8ff,#a8d4ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-header .filters{display:flex;align-items:center;gap:12px}.dashboard-header .filters .filter-label{color:#b0c4de;font-size:.9rem}.dashboard-header .filters .date-picker{display:flex;align-items:center;gap:8px}.dashboard-header .filters .date-picker .date-input{background:#1e3c6499;border:1px solid rgba(100,150,220,.3);border-radius:8px;color:#e8eef6;padding:8px 12px;font-size:.9rem;min-width:140px}.dashboard-header .filters .date-picker .date-input::placeholder{color:#6b8ab8}.dashboard-header .filters .date-picker .date-sep{color:#8ab4e8;font-size:.9rem}.dashboard-header .filters .shortcuts{display:flex;gap:6px}.dashboard-header .filters .btn-shortcut{padding:6px 12px;background:#1e3c6499;border:1px solid rgba(100,150,220,.3);border-radius:6px;color:#b0c4de;font-size:.85rem;cursor:pointer}.dashboard-header .filters .btn-shortcut:hover{background:#325a8c80;color:#e8eef6}.dashboard-header .filters .btn-refresh{padding:8px 16px;background:linear-gradient(180deg,#2a5a9e,#1e4280);border:1px solid rgba(100,150,220,.4);border-radius:8px;color:#c8e0ff;font-size:.9rem;cursor:pointer;transition:background .2s}.dashboard-header .filters .btn-refresh:hover{background:linear-gradient(180deg,#3468b0,#255090)}.dashboard-header .datetime{color:#8ab4e8;font-size:1rem;font-variant-numeric:tabular-nums}.kpi-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px}.kpi-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:12px;border:1px solid rgba(100,150,220,.2);background:#14284680;transition:transform .2s,box-shadow .2s}.kpi-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00285066}.kpi-card .icon{font-size:2rem;line-height:1}.kpi-card .content .label{font-size:.85rem;color:#b0c4de;margin-bottom:4px}.kpi-card .content .value{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.kpi-card.enterprise .value{color:#7eb8ff}.kpi-card.enterprise-new .value{color:#91cc75}.kpi-card.user .value{color:#fac858}.kpi-card.user-new .value{color:#e66}.kpi-card.visit .value{color:#73c0de}.charts-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}@media (max-width: 900px){.charts-row{grid-template-columns:1fr}}.chart-box{background:#14284680;border:1px solid rgba(100,150,220,.2);border-radius:12px;padding:20px;min-height:320px}.chart-box .chart-title{font-size:1rem;color:#b0c4de;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(100,150,220,.2)}.chart-box .chart{width:100%;height:280px}.pie-wrap .chart{height:260px}.dashboard-footer{text-align:center;padding:16px;color:#6b8ab8;font-size:.85rem}
