.vp-kg-open{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;text-align:left;color:var(--ws-accent);background:none;border:0}.vp-kg-open[hidden]{display:none}.vp-kg-dialog{width:calc(100vw - 32px);max-width:none;height:calc(100dvh - 32px);max-height:none;padding:0;border:1px solid var(--ws-line,#323741);border-radius:10px;background:var(--ws-bg,#17191e);color:var(--ws-ink,#e9ebf1);overflow:hidden;isolation:isolate}/* WebGL 회전과 뒤 화면의 블러 재합성이 겹치지 않게 한다. */
.vp-kg-dialog::backdrop{background:rgba(0,0,0,.45);backdrop-filter:none;-webkit-backdrop-filter:none}.vp-kg-dialog iframe{display:block;width:100%;height:100%;border:0;background:var(--ws-bg,#17191e)}.vp-kg-loading{background:var(--ws-bg,#17191e);position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;margin:0;padding:24px;text-align:center;font-family:inherit;font-size:13px;line-height:1.7}.vp-kg-loading h2{font-size:18px;font-weight:650;margin:0}.vp-kg-loading p{margin:0;color:var(--ws-muted,#a2a9b8);max-width:36em}.vp-kg-loading-brand{font-weight:750;color:var(--ws-accent,#aaa3ff);font-size:12px}.vp-kg-progress{height:4px;width:min(280px,80%);overflow:hidden;background:var(--ws-line,#323741);border-radius:2px;margin:8px 0}.vp-kg-progress>span{display:block;width:35%;height:100%;background:var(--ws-accent,#aaa3ff);animation:vp-kg-progress 1.4s ease-in-out infinite}.vp-kg-actions button{min-width:88px;min-height:44px;background:none;color:var(--ws-accent);border:0;border-radius:5px;cursor:pointer}.vp-kg-loading[hidden]{display:none}.vp-kg-dismiss{position:absolute;z-index:2;top:14px;right:16px;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;color:var(--ws-muted,#a2a9b8);background:none;border:0;cursor:pointer}.vp-kg-dismiss[hidden]{display:none}.vp-kg-open:focus-visible,.vp-kg-actions button:focus-visible,.vp-kg-dismiss:focus-visible{outline:2px solid var(--ws-accent,#aaa3ff);outline-offset:2px}
@keyframes vp-kg-progress{from{transform:translateX(-120%)}to{transform:translateX(400%)}}
#vpKnowledgeGraph.vp-loading::before{display:none}
@media(hover:hover){.vp-kg-dismiss:hover,.vp-kg-actions button:hover{background:var(--ws-hover,#2b303a)}}
@media(prefers-reduced-motion:reduce){.vp-kg-progress>span{animation:none;transform:translateX(95%)}}
@media(max-width:900px){.vp-kg-dialog{width:100vw;height:100dvh;margin:0;border-radius:0;border:0}.vp-kg-dismiss{padding-bottom:env(safe-area-inset-bottom)}}
.vp-kg-dialog.vp-kg-expanded{width:100vw;height:100dvh;margin:0;border:0;border-radius:0}

body.workspace dialog.vp-kg-dialog{background:var(--ws-bg,#17191e);isolation:isolate}
/* 그래프 합성 중 뒤의 문서·WebGL 표면이 다시 비치지 않도록 메인 화면의 페인팅을 쉰다. */
body.vp-kg-active{background:var(--ws-bg,#17191e)!important}
body.vp-kg-active>:not(#vpKnowledgeGraph){visibility:hidden;content-visibility:hidden}
