.modal-backdrop[data-v-e94a0f0b]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;display:flex;align-items:center;justify-content:center}.modal[data-v-e94a0f0b]{width:360px;max-width:calc(100vw - 32px);background:var(--bg-elev);border:1px solid var(--border);border-radius:10px;padding:18px 20px 20px;box-shadow:0 12px 40px #00000080}.modal-head[data-v-e94a0f0b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.modal-head b[data-v-e94a0f0b]{font-size:1rem}.modal-x[data-v-e94a0f0b]{background:none;border:0;color:var(--text-dim);cursor:pointer;font-size:.95rem;line-height:1;padding:4px}.modal-x[data-v-e94a0f0b]:hover{color:var(--text)}.pw-form[data-v-e94a0f0b]{display:flex;flex-direction:column;gap:12px}label[data-v-e94a0f0b]{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--text-dim)}input[data-v-e94a0f0b]{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px 10px;color:var(--text)}.err[data-v-e94a0f0b]{font-size:12px;color:var(--red);margin:0}.ok[data-v-e94a0f0b]{font-size:12px;color:var(--green);margin:0}.modal-actions[data-v-e94a0f0b]{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.pie-body[data-v-3a44d5c1]{display:flex;flex-direction:column;align-items:center;gap:14px}.pie-wrap[data-v-3a44d5c1]{flex:1 1 0;min-height:0;display:flex;align-items:center;justify-content:center;width:100%}.pie[data-v-3a44d5c1]{height:100%;max-height:240px;width:auto;aspect-ratio:1}.pie-total[data-v-3a44d5c1]{fill:var(--text);font-size:20px;font-weight:700;pointer-events:none}.pie-cap[data-v-3a44d5c1]{fill:var(--text-muted);font-size:9px;pointer-events:none}.pie-legend[data-v-3a44d5c1]{flex:0 0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;padding:0 4px 4px}.pie-li[data-v-3a44d5c1]{display:grid;grid-template-columns:12px 1fr auto auto;align-items:center;gap:8px;font-size:.82rem;cursor:default;transition:opacity .1s}.pie-li.dim[data-v-3a44d5c1]{opacity:.4}.pie-chip[data-v-3a44d5c1]{width:12px;height:12px;border-radius:3px}.pie-type[data-v-3a44d5c1]{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pie-val[data-v-3a44d5c1]{font-weight:600;color:var(--text)}.pie-pct[data-v-3a44d5c1]{color:var(--text-muted);min-width:34px;text-align:right}.trend-body[data-v-3a44d5c1]{display:flex;flex-direction:column;height:100%;min-height:0}.trend-sub[data-v-3a44d5c1]{font-size:.74rem;color:var(--text-dim);margin:2px 0 6px}.trend-chart[data-v-3a44d5c1]{flex:0 1 178px;min-height:40px;margin-bottom:14px;display:flex;align-items:stretch;gap:2px;border-bottom:1px solid var(--border);padding-bottom:2px}.tcol[data-v-3a44d5c1]{flex:1;display:flex;flex-direction:column;min-width:0;cursor:pointer}.tbar-wrap[data-v-3a44d5c1]{flex:1;min-height:0;display:flex;align-items:flex-end}.tbar[data-v-3a44d5c1]{width:100%;background:var(--primary);opacity:.72;border-radius:2px 2px 0 0;min-height:2px;transition:opacity .1s}.tcol:hover .tbar[data-v-3a44d5c1],.tcol.on .tbar[data-v-3a44d5c1]{opacity:1}.tlab[data-v-3a44d5c1]{font-size:.6rem;color:var(--text-muted);text-align:center;margin-top:3px;height:12px;line-height:12px;white-space:nowrap;overflow:hidden}.trend-tip[data-v-3a44d5c1]{font-size:.76rem;color:var(--text-dim);background:var(--bg-elev);border:1px solid var(--border);border-radius:5px;padding:4px 8px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trend-tip.ph[data-v-3a44d5c1]{color:var(--text-muted);background:transparent;border-color:transparent}.trend-tip b[data-v-3a44d5c1]{color:var(--text)}.ip-list[data-v-3a44d5c1]{display:flex;flex-direction:column;gap:3px}.ip-row[data-v-3a44d5c1]{display:grid;grid-template-columns:26px 116px 1fr 52px;align-items:center;gap:7px;font-size:.78rem;padding:1px 0}.ip-flag[data-v-3a44d5c1]{font-size:.68rem;color:var(--text-muted);text-align:center;border:1px solid var(--border);border-radius:3px;padding:0 2px}.ip-addr[data-v-3a44d5c1]{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-bar-wrap[data-v-3a44d5c1]{height:8px;background:var(--bg-elev);border-radius:4px;overflow:hidden}.ip-bar[data-v-3a44d5c1]{display:block;height:100%;border-radius:4px;min-width:3px;background:linear-gradient(90deg,var(--primary),var(--accent))}.ip-ev[data-v-3a44d5c1]{text-align:right;color:var(--text-dim);font-weight:600}.trend-spacer[data-v-3a44d5c1]{flex:1 1 0;min-height:0}.ed-bar[data-v-b8b97605]{display:flex;align-items:center;gap:4px;flex-wrap:wrap;border:1px solid var(--border);border-bottom:none;border-radius:6px 6px 0 0;padding:6px 8px;background:var(--bg-elev)}.ed-btn[data-v-b8b97605]{background:transparent;border:1px solid transparent;border-radius:4px;color:var(--text);padding:3px 9px;font-size:.8rem;cursor:pointer}.ed-btn[data-v-b8b97605]:hover:not(:disabled){border-color:var(--border);background:var(--bg)}.ed-btn[data-v-b8b97605]:disabled{opacity:.5;cursor:progress}.ed-sep[data-v-b8b97605]{width:1px;height:16px;background:var(--border);margin:0 4px}.ed-body[data-v-b8b97605]{min-height:320px;max-height:60vh;overflow-y:auto;border-radius:0 0 6px 6px;outline:none}.ed-body[data-v-b8b97605]:empty:before{content:attr(data-ph);color:#9aa3ad}.chip[data-v-b8b97605]{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;border:1px solid var(--border);border-radius:999px;padding:4px 12px}.chip.new[data-v-b8b97605]{border-color:var(--primary)}.chip.gone[data-v-b8b97605]{opacity:.45;text-decoration:line-through}.chip a[data-v-b8b97605]{cursor:pointer;color:var(--red);font-weight:700}.chip.gone a[data-v-b8b97605]{color:var(--text-dim)}.analysis-tool[data-v-f469cdab]{display:flex;gap:14px;align-items:center;transition:border-color .15s,transform .15s}.analysis-tool[data-v-f469cdab]:hover{border-color:var(--primary);transform:translateY(-2px)}.tool-logo[data-v-f469cdab]{width:64px;height:64px;flex-shrink:0;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;padding:8px}.tool-logo img[data-v-f469cdab]{max-width:100%;max-height:100%;object-fit:contain}.set-card[data-v-fe829cb8]{padding:0;margin-bottom:18px;overflow:hidden}.set-head[data-v-fe829cb8]{display:flex;align-items:center;gap:16px;padding:13px 16px;border-bottom:1px solid var(--border)}.set-toggle[data-v-fe829cb8]{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:.88rem}.set-msg[data-v-fe829cb8]{color:var(--green);font-size:.82rem}.set-badge[data-v-fe829cb8]{font-size:.72rem;padding:2px 8px;border-radius:10px;border:1px solid var(--border);color:var(--text-muted)}.set-badge.open[data-v-fe829cb8]{color:var(--green);border-color:var(--green)}.set-sub[data-v-fe829cb8]{color:var(--text-muted);font-size:.75rem;margin-top:2px;opacity:.85}.set-save[data-v-fe829cb8]{margin-left:auto}.sw[data-v-fe829cb8]{display:inline-flex;align-items:center;cursor:pointer}.sw input[data-v-fe829cb8]{position:absolute;opacity:0;width:0;height:0}.sw-track[data-v-fe829cb8]{position:relative;width:38px;height:20px;border-radius:999px;background:var(--bg);border:1px solid var(--border);transition:background .15s,border-color .15s}.sw-track[data-v-fe829cb8]:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--text-muted);transition:transform .15s,background .15s}.sw input:checked+.sw-track[data-v-fe829cb8]{background:var(--primary);border-color:var(--primary)}.sw input:checked+.sw-track[data-v-fe829cb8]:after{transform:translate(18px);background:#fff}.sw input:focus-visible+.sw-track[data-v-fe829cb8]{outline:2px solid var(--accent);outline-offset:2px}.set-tbl[data-v-fe829cb8]{width:100%;table-layout:fixed}.set-tbl th[data-v-fe829cb8],.set-tbl td[data-v-fe829cb8]{padding:9px 12px;vertical-align:middle}.set-tbl th.ac[data-v-fe829cb8],.set-tbl td.ac[data-v-fe829cb8]{text-align:center}.set-url[data-v-fe829cb8]{display:block;margin-top:3px;font-size:.75rem;color:var(--text-muted);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}a.set-url[data-v-fe829cb8]:hover{color:var(--accent);text-decoration:underline}.set-url.plain[data-v-fe829cb8]{opacity:.75}.set-result[data-v-fe829cb8]{color:var(--text-muted);font-size:.78rem;margin-top:3px}.set-result.err[data-v-fe829cb8]{color:var(--red)}.set-num[data-v-fe829cb8]{width:74px;text-align:center;padding:3px 6px}.set-ts[data-v-fe829cb8]{font-size:.78rem}.set-run[data-v-fe829cb8]{padding:4px 12px;white-space:nowrap}.set-note[data-v-fe829cb8]{color:var(--text-muted);font-size:.8rem;line-height:1.6;padding:12px 16px;border-top:1px solid var(--border-dim);margin:0}.set-card[data-v-065e6cc8]{padding:0;margin-bottom:18px;overflow:hidden}.set-head[data-v-065e6cc8]{display:flex;align-items:center;gap:16px;padding:13px 16px;border-bottom:1px solid var(--border)}.set-badge[data-v-065e6cc8]{font-size:.72rem;padding:2px 8px;border-radius:10px;border:1px solid var(--border);color:var(--text-muted)}.set-msg[data-v-065e6cc8]{color:var(--green);font-size:.82rem}.set-save[data-v-065e6cc8]{margin-left:auto}.apikey-body[data-v-065e6cc8]{display:flex;align-items:center;gap:10px;padding:14px 16px;flex-wrap:wrap}.apikey-val[data-v-065e6cc8]{flex:1;min-width:240px;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px 12px;color:var(--text)}.set-run[data-v-065e6cc8]{padding:4px 12px;white-space:nowrap}.set-note[data-v-065e6cc8]{color:var(--text-muted);font-size:.8rem;line-height:1.6;padding:12px 16px;border-top:1px solid var(--border-dim);margin:0}.login-wrap[data-v-57bbbb06]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.login-card[data-v-57bbbb06]{width:360px;display:flex;flex-direction:column;gap:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:28px 26px}.login-brand[data-v-57bbbb06]{display:flex;align-items:center;gap:10px;margin-bottom:6px}.login-brand img[data-v-57bbbb06]{height:34px}.login-brand b[data-v-57bbbb06]{display:block;font-size:14px;color:var(--text)}.login-brand span[data-v-57bbbb06]{display:block;font-size:11px;color:var(--text-dim);margin-top:2px}label[data-v-57bbbb06]{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--text-dim)}input[data-v-57bbbb06]{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:9px 10px;color:var(--text);font-size:14px}input[data-v-57bbbb06]:focus{outline:none;border-color:var(--primary)}button[data-v-57bbbb06]{margin-top:4px;padding:10px;border:0;border-radius:6px;cursor:pointer;background:var(--primary);color:#fff;font-size:14px;font-weight:600}button[data-v-57bbbb06]:disabled{opacity:.55;cursor:default}.login-err[data-v-57bbbb06]{margin:0;font-size:12px;color:var(--red)}.login-note[data-v-57bbbb06]{margin:2px 0 0;font-size:11px;color:var(--text-dim);text-align:center}.pw-form[data-v-c7984898]{display:flex;flex-direction:column;gap:12px;max-width:340px}label[data-v-c7984898]{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--text-dim)}input[data-v-c7984898]{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px 10px;color:var(--text)}button[data-v-c7984898]{padding:9px;border:0;border-radius:6px;background:var(--primary);color:#fff;font-weight:600;cursor:pointer}button[data-v-c7984898]:disabled{opacity:.55;cursor:default}.warn[data-v-c7984898]{font-size:12px;color:var(--amber)}.err[data-v-c7984898]{font-size:12px;color:var(--red);margin:0}.ok[data-v-c7984898]{font-size:12px;color:var(--green);margin:0}.tbl[data-v-df4a7f20]{width:100%;border-collapse:collapse;font-size:13px}.tbl th[data-v-df4a7f20],.tbl td[data-v-df4a7f20]{border-bottom:1px solid var(--border);padding:8px 6px;text-align:left}.tbl th[data-v-df4a7f20]{color:var(--text-dim);font-weight:600}select[data-v-df4a7f20]{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:5px;padding:3px 6px}.acts[data-v-df4a7f20]{vertical-align:middle}.acts-in[data-v-df4a7f20]{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.acts-in button[data-v-df4a7f20]{background:transparent;border:1px solid var(--border);border-radius:5px;color:var(--text);padding:3px 8px;font-size:12px;cursor:pointer}.acts-in .danger[data-v-df4a7f20]{color:var(--red)}.tag.sys[data-v-df4a7f20]{color:var(--text-dim);border-color:var(--border)}.sysnote[data-v-df4a7f20]{font-size:11.5px}.acts select[data-v-df4a7f20]:disabled,select[data-v-df4a7f20]:disabled{opacity:.5;cursor:not-allowed}.head-actions[data-v-df4a7f20]{display:flex;align-items:center;gap:8px}.cfg-btn[data-v-df4a7f20]{background:none;border:1px solid var(--border);color:var(--text-dim);border-radius:6px;padding:6px 12px;font-size:12px;cursor:pointer;white-space:nowrap}.cfg-btn[data-v-df4a7f20]:hover{color:var(--text);border-color:var(--primary)}.modal-backdrop[data-v-df4a7f20]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;display:flex;align-items:center;justify-content:center}.modal[data-v-df4a7f20]{width:460px;max-width:calc(100vw - 32px);background:var(--bg-elev);border:1px solid var(--border);border-radius:10px;padding:18px 20px 16px;box-shadow:0 12px 40px #00000080;display:flex;flex-direction:column;gap:12px}.modal-head[data-v-df4a7f20]{display:flex;align-items:center;justify-content:space-between}.modal-head b[data-v-df4a7f20]{font-size:1rem}.modal-x[data-v-df4a7f20]{background:none;border:0;color:var(--text-dim);cursor:pointer;font-size:.95rem;padding:4px}.modal-x[data-v-df4a7f20]:hover{color:var(--text)}.fl[data-v-df4a7f20]{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--text-dim)}.fl input[data-v-df4a7f20]{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px 10px;color:var(--text);font-size:13px}.fl .tag[data-v-df4a7f20]{font-style:normal}.fnote[data-v-df4a7f20]{font-size:11.5px;color:var(--text-muted);line-height:1.6;margin:0}.fnote code[data-v-df4a7f20]{background:var(--bg);padding:1px 5px;border-radius:4px}.fmsg[data-v-df4a7f20]{font-size:12px;color:var(--green);margin:0;word-break:break-all}.fmsg.bad[data-v-df4a7f20]{color:var(--red)}.modal-actions[data-v-df4a7f20]{display:flex;justify-content:flex-end;gap:8px}.mail[data-v-df4a7f20]{cursor:pointer;color:var(--text-dim);text-decoration:underline dotted}.mail[data-v-df4a7f20]:hover{color:var(--text)}.tag[data-v-df4a7f20]{margin-left:5px;font-size:11px;color:var(--amber)}.on[data-v-df4a7f20]{color:var(--green)}.off[data-v-df4a7f20]{color:var(--red)}.dim[data-v-df4a7f20]{color:var(--text-dim)}.sub[data-v-df4a7f20]{margin:22px 0 8px;font-size:14px}.new-form[data-v-df4a7f20]{display:flex;gap:8px;flex-wrap:wrap}.new-form input[data-v-df4a7f20],.new-form select[data-v-df4a7f20]{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:7px 9px;font-size:13px}.new-form button[data-v-df4a7f20]{background:var(--primary);border:0;border-radius:6px;color:#fff;padding:7px 16px;font-weight:600;cursor:pointer}.new-form button[data-v-df4a7f20]:disabled{opacity:.5;cursor:default}.err[data-v-df4a7f20]{color:var(--red);font-size:12px}.ok[data-v-df4a7f20]{color:var(--green);font-size:12px}.head[data-v-df4a7f20]{display:flex;align-items:center;justify-content:space-between;gap:12px}.import-btn[data-v-df4a7f20]{background:var(--bg-elev);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.import-btn[data-v-df4a7f20]:hover{border-color:var(--primary)}.import-btn[data-v-df4a7f20]:disabled{opacity:.5;cursor:default}.import-result[data-v-df4a7f20]{border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin:12px 0;font-size:13px;background:var(--bg-elev)}.ir-block[data-v-df4a7f20]{margin-top:10px}.ir-title[data-v-df4a7f20]{font-size:12px;color:var(--text-dim);margin-bottom:6px}.mono[data-v-df4a7f20]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.dr-wrap[data-v-e476b2e5]{display:grid;grid-template-columns:280px 1fr;gap:14px;align-items:start}.dr-list[data-v-e476b2e5]{max-height:calc(100vh - 230px);overflow-y:auto}.dr-list tbody tr[data-v-e476b2e5]:hover{background:var(--bg-elev)}.dr-list tbody tr.on[data-v-e476b2e5]{background:var(--primary-dim)}.dr-view iframe[data-v-e476b2e5]{width:100%;height:calc(100vh - 230px);border:0;display:block;background:#fff}@media(max-width:900px){.dr-wrap[data-v-e476b2e5]{grid-template-columns:1fr}.dr-list[data-v-e476b2e5]{max-height:260px}.dr-view iframe[data-v-e476b2e5]{height:70vh}}.set-card[data-v-f1804b18]{display:flex;flex-direction:column;gap:14px;padding:18px;max-width:620px}.field[data-v-f1804b18]{display:flex;flex-direction:column;gap:5px}.field label[data-v-f1804b18]{font-size:13px;color:var(--text-dim)}.field input[data-v-f1804b18],.field textarea[data-v-f1804b18]{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:13px;font-family:inherit}.field textarea[data-v-f1804b18]{resize:vertical}.rcpt-head[data-v-f1804b18]{display:flex;align-items:center;justify-content:space-between}.add-btn[data-v-f1804b18]{padding:4px 12px;font-size:12px}.rcpt-list[data-v-f1804b18]{border:1px solid var(--border);border-radius:6px;max-height:320px;overflow-y:auto}.rcpt[data-v-f1804b18]{display:grid;grid-template-columns:80px 1fr auto auto;align-items:center;gap:10px;padding:7px 10px;font-size:12.5px;border-bottom:1px solid var(--border-dim)}.rcpt[data-v-f1804b18]:last-child{border-bottom:0}.rcpt.off[data-v-f1804b18]{opacity:.55}.rcpt .rmail[data-v-f1804b18]{color:var(--text-dim)}.rdel[data-v-f1804b18]{background:none;border:0;color:var(--text-dim);cursor:pointer;font-size:13px;padding:2px 6px}.rdel[data-v-f1804b18]:hover{color:var(--red)}.empty[data-v-f1804b18]{padding:22px 10px;text-align:center;color:var(--text-dim);font-size:12.5px;margin:0}.hint[data-v-f1804b18]{font-size:12px;color:var(--amber);margin:0;line-height:1.5}.modal-backdrop[data-v-f1804b18]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;display:flex;align-items:center;justify-content:center}.modal[data-v-f1804b18]{width:560px;max-width:calc(100vw - 32px);background:var(--bg-elev);border:1px solid var(--border);border-radius:10px;padding:18px 20px 16px;box-shadow:0 12px 40px #00000080}.modal-head[data-v-f1804b18]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-head b[data-v-f1804b18]{font-size:1rem}.modal-x[data-v-f1804b18]{background:none;border:0;color:var(--text-dim);cursor:pointer;font-size:.95rem;padding:4px}.modal-x[data-v-f1804b18]:hover{color:var(--text)}.pick-head[data-v-f1804b18]{display:flex;gap:8px;margin-bottom:10px}.pick-head .search[data-v-f1804b18]{flex:1;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:7px 10px;font-size:13px}.pick-body[data-v-f1804b18]{max-height:340px;overflow-y:auto;border:1px solid var(--border);border-radius:6px}.prow[data-v-f1804b18]{display:grid;grid-template-columns:70px 100px 1fr auto auto;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;border-bottom:1px solid var(--border-dim)}.prow[data-v-f1804b18]:last-child{border-bottom:0}.prow[data-v-f1804b18]:hover{background:var(--bg)}.prow.off[data-v-f1804b18]{opacity:.55}.prow .uid[data-v-f1804b18],.prow .umail[data-v-f1804b18]{color:var(--text-dim)}.add-one[data-v-f1804b18]{padding:2px 10px;font-size:12px}.modal-actions[data-v-f1804b18]{display:flex;justify-content:flex-end;margin-top:12px}.actions[data-v-f1804b18]{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.test[data-v-f1804b18]{display:flex;gap:6px;align-items:center}.test input[data-v-f1804b18]{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:7px 9px;font-size:13px;width:240px}.tag[data-v-f1804b18]{margin-left:6px;font-size:11px;color:var(--green);border:1px solid var(--border);border-radius:4px;padding:1px 6px}.tag.warn[data-v-f1804b18]{color:var(--amber)}.note[data-v-f1804b18]{font-size:12px;color:var(--text-muted);line-height:1.6;margin:0}.err[data-v-f1804b18]{color:var(--red);font-size:13px}.ok[data-v-f1804b18]{color:var(--green);font-size:13px}.dim[data-v-f1804b18]{color:var(--text-dim);font-weight:400}.sec[data-v-e6c9aaee]{font-size:.92rem;font-weight:600;margin-bottom:12px}.kv[data-v-e6c9aaee]{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:8px 24px;font-size:.85rem}.kv>div[data-v-e6c9aaee]{display:flex;gap:10px}.kv .dim[data-v-e6c9aaee]{min-width:120px}.lbl[data-v-e6c9aaee]{display:inline-flex;align-items:center;gap:6px;font-size:.85rem}.input.num[data-v-e6c9aaee]{width:62px;padding:5px 8px;text-align:center}.on[data-v-e6c9aaee]{color:var(--green)}.off[data-v-e6c9aaee]{color:var(--red)}.pill[data-v-e6c9aaee]{display:inline-block;font-size:.74rem;border:1px solid var(--border);border-radius:999px;padding:1px 9px;margin:0 5px 3px 0}.pill.okp[data-v-e6c9aaee]{color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,transparent)}.pill.ngp[data-v-e6c9aaee]{color:var(--red);border-color:var(--red)}.wall[data-v-0afb56a0]{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto 1fr;gap:.75rem;padding:.75rem;background:var(--bg-deep);color:var(--text);overflow:hidden}.topbar[data-v-0afb56a0]{display:flex;align-items:center;gap:1rem;padding:.4rem .85rem;border:1px solid var(--border-dim);border-radius:.6rem;background:linear-gradient(180deg,#121a2b,#0f1420)}.topbar.warn[data-v-0afb56a0]{border-color:#7f1d1d;background:#f871711f}.ttl[data-v-0afb56a0]{font-size:1.6rem;font-weight:800;letter-spacing:-.01em;white-space:nowrap}.ttl .hl[data-v-0afb56a0]{color:var(--primary)}.flag[data-v-0afb56a0]{font-size:1.05rem;font-weight:700;color:#fca5a5;background:#f871712e;border-radius:999px;padding:.15rem .8rem;white-space:nowrap}.upd[data-v-0afb56a0]{margin-left:auto;font-size:.9rem;color:var(--text-muted);white-space:nowrap}.row[data-v-0afb56a0]{display:grid;gap:.75rem;min-height:0;grid-template-columns:2fr 3fr 3fr}.card[data-v-0afb56a0]{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bg-card);border:1px solid var(--border-dim);border-radius:.6rem;padding:.9rem 1.1rem}.ct[data-v-0afb56a0]{flex:0 0 auto;font-size:1.25rem;font-weight:700;margin-bottom:.7rem;display:flex;align-items:baseline;gap:.5rem}.ct .sub[data-v-0afb56a0]{font-size:.8rem;font-weight:400;color:var(--text-muted)}.empty[data-v-0afb56a0]{color:var(--text-muted);font-size:1rem;text-align:center;padding:1.5rem 0}.meter[data-v-0afb56a0]{height:.6rem;background:var(--bg-elev);border-radius:.3rem;overflow:hidden;display:flex;align-items:stretch}.meter-fill[data-v-0afb56a0]{display:block;height:auto;align-self:stretch;border-radius:.3rem;min-width:.2rem}.mid[data-v-0afb56a0]{display:grid;grid-template-rows:2fr 8fr;gap:.75rem;min-height:0}.sp-card.warn[data-v-0afb56a0]{border-color:#7f1d1d;background:#f871711f}.sp-body[data-v-0afb56a0]{flex:1;min-height:0;display:flex;align-items:baseline;justify-content:center;gap:.5rem}.sp-n[data-v-0afb56a0]{font-size:3.6rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.sp-u[data-v-0afb56a0]{font-size:1.5rem;font-weight:700}.sp-l[data-v-0afb56a0]{font-size:1rem;color:var(--text-muted);margin-left:.6rem}.sp-card.warn .sp-n[data-v-0afb56a0],.sp-card.warn .sp-u[data-v-0afb56a0]{color:#fca5a5}.left[data-v-0afb56a0]{display:grid;grid-template-rows:1fr 1fr;gap:.75rem;min-height:0}.alert[data-v-0afb56a0]{flex:1;min-height:0;display:grid;grid-template-rows:1fr auto;justify-items:center;align-items:center;gap:.35rem}.a-img[data-v-0afb56a0]{min-width:0;min-height:0;width:90%;height:auto;max-height:100%;max-width:90%;object-fit:contain;justify-self:center}.a-step[data-v-0afb56a0]{font-size:2.6rem;font-weight:800;white-space:nowrap;text-align:center;line-height:1.05}.ioc-body[data-v-0afb56a0]{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center}.pie-wrap[data-v-0afb56a0]{flex:0 1 auto;min-height:0;display:flex;align-items:center;justify-content:center}.pie[data-v-0afb56a0]{width:64%;height:auto;max-height:100%;max-width:100%;aspect-ratio:1}.pie-n[data-v-0afb56a0]{fill:var(--text);font-size:22px;font-weight:800}.pie-c[data-v-0afb56a0]{fill:var(--text-muted);font-size:8px}.legend[data-v-0afb56a0]{flex:0 0 auto;display:grid;grid-template-columns:1fr;gap:.55rem;padding-top:1rem}.lg[data-v-0afb56a0]{display:grid;grid-template-columns:.8rem 1fr auto 2.8rem;align-items:center;gap:.5rem;font-size:1.05rem}.lg .chip[data-v-0afb56a0]{width:.8rem;height:.8rem;border-radius:.2rem}.lg .ty[data-v-0afb56a0]{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lg .v[data-v-0afb56a0]{font-weight:700;text-align:right}.lg .p[data-v-0afb56a0]{color:var(--text-muted);text-align:right;font-size:.9rem}.ct-sub[data-v-0afb56a0]{flex:0 0 auto;font-size:.95rem;color:var(--text-dim);margin:.2rem 0 .45rem;display:flex;align-items:baseline;gap:.6rem}.ct-sub .last[data-v-0afb56a0]{margin-left:auto;color:var(--text);font-weight:700}.right[data-v-0afb56a0]{display:grid;grid-template-rows:1fr 1fr;gap:.75rem;min-height:0}.chart[data-v-0afb56a0]{flex:1 1 0;min-height:3rem;display:flex;align-items:stretch;gap:.2rem;border-bottom:1px solid var(--border);padding-bottom:.2rem}.col[data-v-0afb56a0]{flex:1;display:flex;flex-direction:column;min-width:0}.bw[data-v-0afb56a0]{flex:1;min-height:0;display:flex;align-items:flex-end}.bh[data-v-0afb56a0]{width:100%;background:var(--primary);opacity:.8;border-radius:.15rem .15rem 0 0;min-height:.15rem}.tick[data-v-0afb56a0]{font-size:.75rem;color:var(--text-muted);text-align:center;margin-top:.25rem;height:1rem;line-height:1rem;white-space:nowrap;overflow:hidden}.ips[data-v-0afb56a0]{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-between;gap:.3rem}.ip[data-v-0afb56a0]{display:grid;grid-template-columns:1.4rem 2.2rem 9.5rem 1fr 3.6rem;align-items:center;gap:.55rem;font-size:1rem}.ip .rk[data-v-0afb56a0]{color:var(--text-muted);text-align:right;font-size:.85rem}.ip .cc[data-v-0afb56a0]{font-size:.78rem;color:var(--text-muted);text-align:center;border:1px solid var(--border);border-radius:.2rem;padding:0 .15rem}.ip .addr[data-v-0afb56a0]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip .ev[data-v-0afb56a0]{text-align:right;font-weight:700;color:var(--text-dim)}.ip-bar[data-v-0afb56a0]{background:linear-gradient(90deg,var(--primary),var(--accent))}@font-face{font-family:NanumSquare;font-weight:300;font-display:swap;src:url(/fonts/NanumSquareL.woff2) format("woff2")}@font-face{font-family:NanumSquare;font-weight:400;font-display:swap;src:url(/fonts/NanumSquareR.woff2) format("woff2")}@font-face{font-family:NanumSquare;font-weight:700;font-display:swap;src:url(/fonts/NanumSquareB.woff2) format("woff2")}@font-face{font-family:NanumSquare;font-weight:800;font-display:swap;src:url(/fonts/NanumSquareEB.woff2) format("woff2")}@font-face{font-family:GongGothic;font-weight:300;font-display:swap;src:url(/fonts/GongGothicLight.woff2) format("woff2")}@font-face{font-family:GongGothic;font-weight:500;font-display:swap;src:url(/fonts/GongGothicMedium.woff2) format("woff2")}@font-face{font-family:GongGothic;font-weight:700;font-display:swap;src:url(/fonts/GongGothicBold.woff2) format("woff2")}:root{--bg-deep: #0b0f17;--bg: #0f1420;--bg-elev: #151c2c;--bg-card: #131a28;--border: #232c40;--border-dim: #1c2436;--text: #e6ebf5;--text-dim: #9aa6bd;--text-muted: #5d6982;--primary: #3b82f6;--primary-dim: #1e3a5f;--accent: #22d3ee;--green: #34d399;--amber: #fbbf24;--red: #f87171;--radius: 8px}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{font-family:NanumSquare,-apple-system,Segoe UI,Malgun Gothic,sans-serif;background:var(--bg-deep);color:var(--text);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}.mono{font-family:D2Coding,Consolas,monospace}.app-shell{display:flex;flex-direction:column;height:100%}.app-header{background:linear-gradient(180deg,#121a2b,#0f1420);border-bottom:1px solid var(--border);flex-shrink:0}.gnb-bar{display:flex;align-items:stretch;height:76px;padding:0 20px;gap:8px}.brand{display:flex;align-items:center;gap:12px;padding-right:20px}.brand .logo-img{width:40px;height:40px;object-fit:contain}.brand .name b{font-size:.95rem;letter-spacing:.2px;display:block}.brand .name span{font-size:.68rem;color:var(--text-dim);letter-spacing:.3px}.gnb{display:flex;align-items:stretch;gap:2px;flex:1}.gnb-item{display:flex;align-items:center;padding:0 18px;font-size:.92rem;font-weight:500;color:var(--text-dim);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;white-space:nowrap}.gnb-item:hover{color:var(--text)}.gnb-item.active{color:#fff;border-bottom-color:var(--primary)}.header-tools{display:flex;align-items:center;gap:12px}.lnb-bar{display:flex;align-items:center;gap:4px;height:44px;padding:0 20px;background:var(--bg);border-bottom:1px solid var(--border-dim)}.lnb-item{padding:6px 14px;font-size:.84rem;color:var(--text-dim);border-radius:6px;cursor:pointer;transition:all .15s}.lnb-item:hover{background:var(--bg-elev);color:var(--text)}.lnb-item.active{background:var(--primary-dim);color:#fff}.app-main{flex:1;overflow-y:auto;padding:20px;background:var(--bg-deep)}.page-title{font-size:1.15rem;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:10px}.card{background:var(--bg-card);border:1px solid var(--border-dim);border-radius:var(--radius);padding:18px}.card-title{font-size:.95rem;font-weight:700;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;color:var(--text)}.card-title .more{color:var(--text-muted);font-size:.8rem;cursor:pointer}.card-title .more:hover{color:var(--accent)}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;font-size:.76rem;font-weight:600;color:var(--text-muted);padding:8px 10px;border-bottom:1px solid var(--border)}.tbl td{padding:9px 10px;font-size:.83rem;border-bottom:1px solid var(--border-dim);color:var(--text)}.tbl tr:hover td{background:#ffffff05}.tbl .ellipsis{max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ar{text-align:right}.ac{text-align:center}.al{text-align:left}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.72rem;font-weight:600}.badge-transfer{background:#3b2a5f;color:#c4b5fd}.badge-safety{background:#1e3a5f;color:#93c5fd}.badge-weakness{background:#5f3a1e;color:#fcd34d}.badge-ctas{background:#14463a;color:#6ee7b7}.badge-foreign{background:#4a2535;color:#fca5b4}.badge-news{background:#243150;color:#9db4e0}.badge-gray{background:#2a3346;color:#9aa6bd}.input,.select{background:var(--bg-elev);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 10px;font-size:.85rem;outline:none}.input:focus,.select:focus{border-color:var(--primary)}.btn{background:var(--bg-elev);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 14px;font-size:.85rem;cursor:pointer;transition:all .15s}.btn:hover{border-color:var(--primary)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover{filter:brightness(1.1)}.btn-accent{border-color:var(--accent);color:var(--accent)}.btn-danger{border-color:var(--red);color:var(--red)}.btn-danger:hover:not(:disabled){background:var(--red);color:#fff}.grid{display:grid;gap:16px}.dash-grid{display:grid;gap:16px;height:100%;grid-template-columns:1fr 1fr;grid-template-rows:348px minmax(0,1fr)}.dash-subgrid{display:grid;gap:16px;grid-template-columns:1fr 1fr;min-height:0}.dash-cell{display:flex;flex-direction:column;min-height:0;overflow:hidden}.dash-scroll{flex:1;min-height:0;overflow-y:auto}@media(max-width:1100px){.dash-grid{grid-template-columns:1fr;grid-template-rows:none;height:auto}}.flex{display:flex}.muted{color:var(--text-dim)}.dim{color:var(--text-muted)}.chip-perf{font-size:.8rem;color:var(--accent)}.board-content{background:#fff;color:#1a1a1a;padding:24px;border-radius:6px;font-size:.9rem;line-height:1.7;overflow-x:auto}.board-content *{max-width:100%}.board-content img{max-width:100%;height:auto}.board-content a{color:#0b5cad;text-decoration:underline}.board-content table{border-collapse:collapse}.board-content table td,.board-content table th{border:1px solid #ddd;padding:6px 8px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#2a3346;border-radius:5px}::-webkit-scrollbar-track{background:transparent}.user-box{display:flex;align-items:center;gap:8px;margin-left:12px;font-size:12px}.user-box .uname{color:var(--text);font-weight:600;cursor:pointer}.user-box .uname:hover{text-decoration:underline}.user-box .urole{color:var(--accent);border:1px solid var(--border);border-radius:4px;padding:1px 5px}.user-box .ulink{background:none;border:0;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 4px;text-decoration:none}.user-box .ulink:hover{color:var(--text);text-decoration:underline}.gnb-item,.lnb-item,.brand .name b,.brand .name span{font-family:GongGothic,NanumSquare,sans-serif}.gnb-item{font-weight:500;letter-spacing:-.01em}.lnb-item{font-weight:300}.brand .name b{font-weight:700}
