:root{--navy-900:#162633;--navy-700:#2b3d4b;--slate-500:#7a8d9e;--sky-300:#a8c8dd;--sky-100:#cce0ea;--red-600:#e1241e;--red-300:#f36865;--blue-50:#e8f0fc;--blue-500:#4c8ff0;--blue-600:#1a66d1;--blue-700:#1552a8;--blue-800:#10407f;--font:Onest, -apple-system, "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--ctl:40px;--toolbar-h:50px;--gap:12px;--edge-l:max(var(--gap), env(safe-area-inset-left));--edge-r:max(var(--gap), env(safe-area-inset-right));--edge-b:max(var(--gap), env(safe-area-inset-bottom));--panel-w:320px;--toolbar-top:max(var(--gap), env(safe-area-inset-top));--below-toolbar:calc(var(--toolbar-top) + var(--toolbar-h) + var(--gap));--stats-w:340px}@media (pointer:coarse){:root{--ctl:44px;--toolbar-h:54px}}:root{--bg:#f4f8fa;--surface:#fff;--surface-muted:#e8f1f6;--surface-selected:var(--sky-100);--text:var(--navy-900);--text-muted:var(--navy-700);--text-subtle:#5f7384;--border:var(--sky-300);--border-strong:var(--slate-500);--primary:var(--blue-600);--primary-hover:var(--blue-700);--primary-active:var(--blue-800);--primary-soft:var(--blue-50);--on-primary:#fff;--danger:var(--red-600);--danger-text:#c81d18;--danger-soft:#fde8e7;--on-danger:#fff;--accent:var(--primary);--accent-text:var(--on-primary);--brand:#e1241e;--brand-line:var(--brand);--brand-soft:#f36865;--hero:url(/hero-light.webp);--warn-bg:#fef3c7;--warn-text:#78350f;--focus-ring:var(--blue-500);--focus:var(--focus-ring);--shadow-sm:0 1px 2px #16263314;--shadow-md:0 8px 24px #16263324;--canvas-dot:#cfdbe3;--shadow:var(--shadow-sm);--lvl0-bg:#1e293b;--lvl0-fg:#fff;--lvl1-bg:#dbeafe;--lvl1-fg:#1e3a8a;--lvl2-bg:#dcfce7;--lvl2-fg:#14532d;--lvl3-bg:#fef3c7;--lvl3-fg:#78350f;--lvl4-bg:#fae8ff;--lvl4-fg:#701a75;--lvl5-bg:#ffe4e6;--lvl5-fg:#881337;--lvl6-bg:#cffafe;--lvl6-fg:#155e75;--lvl7-bg:#ecfccb;--lvl7-fg:#3f6212;--lvl8-bg:#ffedd5;--lvl8-fg:#7c2d12;--lvl9-bg:#e0e7ff;--lvl9-fg:#312e81;--lvl10-bg:#ccfbf1;--lvl10-fg:#115e59;--lvl11-bg:#ede9fe;--lvl11-fg:#4c1d95;--lvl12-bg:#fef9c3;--lvl12-fg:#713f12;--lvl13-bg:#e0f2fe;--lvl13-fg:#075985;--lvl14-bg:#d1fae5;--lvl14-fg:#065f46;--lvl15-bg:#fce7f3;--lvl15-fg:#831843;--lvl16-bg:#e2e8f0;--lvl16-fg:#334155;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1c26;--surface:var(--navy-900);--surface-muted:#1f3140;--surface-selected:#1b3350;--text:#e6eef3;--text-muted:#a3b4c2;--text-subtle:#8fa2b2;--border:var(--navy-700);--primary:var(--blue-500);--primary-hover:#6aa4f5;--primary-active:#8ab8f8;--primary-soft:#1b3350;--on-primary:#0f1c26;--danger:var(--red-300);--danger-text:var(--red-300);--danger-soft:#3a1f24;--on-danger:#0f1c26;--hero:url(/hero-dark.webp);--warn-bg:#422006;--warn-text:#fde68a;--focus-ring:#8ab8f8;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px #00000080;--canvas-dot:#213242;--lvl0-bg:#e2e8f0;--lvl0-fg:#0f172a;--lvl1-bg:#1e3a5f;--lvl1-fg:#dbeafe;--lvl2-bg:#173d2a;--lvl2-fg:#dcfce7;--lvl3-bg:#45330f;--lvl3-fg:#fef3c7;--lvl4-bg:#4a1d4f;--lvl4-fg:#fae8ff;--lvl5-bg:#4c1d24;--lvl5-fg:#ffe4e6;--lvl6-bg:#14414b;--lvl6-fg:#cffafe;--lvl7-bg:#2f4113;--lvl7-fg:#ecfccb;--lvl8-bg:#4a2a12;--lvl8-fg:#ffedd5;--lvl9-bg:#2b2b56;--lvl9-fg:#e0e7ff;--lvl10-bg:#10403b;--lvl10-fg:#ccfbf1;--lvl11-bg:#33215e;--lvl11-fg:#ede9fe;--lvl12-bg:#453c10;--lvl12-fg:#fef9c3;--lvl13-bg:#123a52;--lvl13-fg:#e0f2fe;--lvl14-bg:#0f3f30;--lvl14-fg:#d1fae5;--lvl15-bg:#4a1636;--lvl15-fg:#fce7f3;--lvl16-bg:#2a3444;--lvl16-fg:#e2e8f0;--hero-filter:invert(1) hue-rotate(180deg);--hero-blend:screen;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1c26;--surface:var(--navy-900);--surface-muted:#1f3140;--surface-selected:#1b3350;--text:#e6eef3;--text-muted:#a3b4c2;--text-subtle:#8fa2b2;--border:var(--navy-700);--primary:var(--blue-500);--primary-hover:#6aa4f5;--primary-active:#8ab8f8;--primary-soft:#1b3350;--on-primary:#0f1c26;--danger:var(--red-300);--danger-text:var(--red-300);--danger-soft:#3a1f24;--on-danger:#0f1c26;--hero:url(/hero-dark.webp);--warn-bg:#422006;--warn-text:#fde68a;--focus-ring:#8ab8f8;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px #00000080;--canvas-dot:#213242;--lvl0-bg:#e2e8f0;--lvl0-fg:#0f172a;--lvl1-bg:#1e3a5f;--lvl1-fg:#dbeafe;--lvl2-bg:#173d2a;--lvl2-fg:#dcfce7;--lvl3-bg:#45330f;--lvl3-fg:#fef3c7;--lvl4-bg:#4a1d4f;--lvl4-fg:#fae8ff;--lvl5-bg:#4c1d24;--lvl5-fg:#ffe4e6;--lvl6-bg:#14414b;--lvl6-fg:#cffafe;--lvl7-bg:#2f4113;--lvl7-fg:#ecfccb;--lvl8-bg:#4a2a12;--lvl8-fg:#ffedd5;--lvl9-bg:#2b2b56;--lvl9-fg:#e0e7ff;--lvl10-bg:#10403b;--lvl10-fg:#ccfbf1;--lvl11-bg:#33215e;--lvl11-fg:#ede9fe;--lvl12-bg:#453c10;--lvl12-fg:#fef9c3;--lvl13-bg:#123a52;--lvl13-fg:#e0f2fe;--lvl14-bg:#0f3f30;--lvl14-fg:#d1fae5;--lvl15-bg:#4a1636;--lvl15-fg:#fce7f3;--lvl16-bg:#2a3444;--lvl16-fg:#e2e8f0;--hero-filter:invert(1) hue-rotate(180deg);--hero-blend:screen;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{overscroll-behavior:none;height:100%;margin:0}body{background:var(--bg);color:var(--text);font:14px/1.5 var(--font);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--border-strong) 65%, transparent) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background-color:color-mix(in srgb, var(--border-strong) 55%, transparent);border-radius:var(--radius-full);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb, var(--border-strong) 85%, transparent)}::-webkit-scrollbar-thumb:active{background-color:var(--border-strong)}::-webkit-scrollbar-button{display:none}.toolbar{top:var(--toolbar-top);left:var(--edge-l);right:var(--edge-r);box-sizing:border-box;height:var(--toolbar-h);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);z-index:10;align-items:center;gap:4px;padding:4px;display:flex;position:fixed}.tb-logo{height:var(--ctl);color:var(--text);border-radius:var(--radius-md);flex:none;align-items:center;padding:0 12px;display:flex}.tb-logo .logo{transform-origin:0;width:98px;height:22px;animation:.22s cubic-bezier(.4,0,.2,1) brand-shrink}@keyframes brand-shrink{0%{transform:scale(1.4545)}}@keyframes brand-grow{0%{transform:scale(.6875)}}@media (prefers-reduced-motion:reduce){.home-logo .logo,.tb-logo .logo{animation:none}}.tb-logo.sign{width:var(--ctl);justify-content:center;padding:0}.tb-logo.sign .logo{width:22px}.tb-sep{background:var(--border);flex:none;width:1px;height:24px;margin:0 4px}.spacer{flex:1 1 0;min-width:0}.tb-btn{height:var(--ctl);border-radius:var(--radius-md);color:var(--text);font:500 14px/20px var(--font);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:8px;padding:0 10px;transition:background-color .2s,color .2s;display:inline-flex}.tb-btn:not(:has(.tb-label)){width:var(--ctl);justify-content:center;padding:0}.tb-btn:hover:not(:disabled){background:var(--surface-muted)}.tb-btn.active,.tb-btn[aria-expanded=true],.tb-btn[aria-pressed=true]{background:var(--surface-selected)}.tb-btn:disabled{opacity:.45;cursor:not-allowed}.tb-ico{display:flex;position:relative}.tb-badge{box-sizing:border-box;border-radius:var(--radius-full);background:var(--text);min-width:20px;height:20px;color:var(--surface);font:500 12px/20px var(--font);font-variant-numeric:tabular-nums;text-align:center;padding:0 6px}.tb-badge.corner{min-width:16px;height:16px;font:600 11px/16px var(--font);padding:0 4px;position:absolute;top:-6px;right:-8px}.tb-dot{box-sizing:border-box;border:2px solid var(--surface);border-radius:var(--radius-full);background:var(--danger);width:10px;height:10px;position:absolute;top:-3px;right:-4px}.tb-icon{width:var(--ctl);height:var(--ctl);border-radius:var(--radius-md);color:var(--text);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.tb-icon:hover{background:var(--surface-muted)}.domain-wrap{flex:0 auto;min-width:0;position:relative}.domain-btn{width:100%;min-width:0;height:var(--ctl);border-radius:var(--radius-md);color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px 0 6px;display:flex}.domain-btn:hover,.domain-btn[aria-expanded=true]{background:var(--surface-muted)}.domain-avatar{border-radius:var(--radius-md);background:var(--surface-muted);width:28px;height:28px;color:var(--text-muted);font:600 13px/16px var(--font);flex:none;place-items:center;display:grid}.domain-name{min-width:0;font:500 14px/20px var(--font-mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.domain-count{color:var(--text-subtle);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:13px;line-height:20px}.domain-btn>svg{color:var(--text-subtle);flex:none}.popover.domain-pop{width:400px;max-width:calc(100vw - 2 * var(--gap));box-shadow:var(--shadow-md);padding:16px;left:0;right:auto}.domain-pop h2{font:600 16px/24px var(--font);margin:0}.domain-form{gap:8px;margin-top:12px;display:flex}.domain-form .home-field{height:40px;padding:0 12px 0 10px}.domain-form .url-input{font-size:14px}.domain-submit{border-radius:var(--radius-md);background:var(--primary);height:40px;color:var(--on-primary);font:500 14px/20px var(--font);cursor:pointer;border:0;flex:none;padding:0 16px}.domain-submit:hover{background:var(--primary-hover)}.domain-recent-h{color:var(--text-subtle);margin:16px 0 4px;font-size:13px;line-height:20px}.domain-recent{margin:0 -8px;padding:0;list-style:none}.domain-row{border-radius:var(--radius-md);width:100%;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0 8px;display:flex}.domain-row:hover{background:var(--surface-muted)}.domain-row[aria-current=true]{background:var(--surface-selected)}.domain-row-avatar{background:var(--surface-muted);width:24px;height:24px;color:var(--text-muted);font:600 12px/16px var(--font);border-radius:6px;flex:none;place-items:center;display:grid}.domain-row-name{min-width:0;font:14px/20px var(--font-mono);text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.domain-row-meta{color:var(--text-subtle);font-variant-numeric:tabular-nums;flex:none;font-size:13px;line-height:20px}.icon-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;place-items:center;min-width:36px;height:36px;padding:0 8px;display:inline-grid}.icon-btn:hover{border-color:var(--text-muted)}.toolbar>.icon-btn{min-width:var(--ctl);width:var(--ctl);height:var(--ctl);color:var(--text-muted);background:0 0;border:0;padding:0}.toolbar>.icon-btn:hover{background:var(--surface-muted)}.home{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex;position:relative;overflow:hidden}.home-hero,.home-veil{pointer-events:none;position:absolute;inset:0}.home-hero{background:var(--hero) 50% 100% / cover no-repeat}.home-veil{background:radial-gradient(ellipse var(--veil-size) at 50% var(--veil-y), color-mix(in srgb, var(--bg) 90%, transparent) 0%, color-mix(in srgb, var(--bg) 77%, transparent) 55%, transparent 100%);--veil-size:48% 66%;--veil-y:34%}.home.empty .home-veil{--veil-size:48% 50%;--veil-y:50%}.home-head{z-index:2;height:calc(72px + env(safe-area-inset-top));box-sizing:border-box;padding:env(safe-area-inset-top) max(16px, env(safe-area-inset-right)) 0 max(24px, env(safe-area-inset-left));justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.home-logo{height:44px;color:var(--text);border-radius:var(--radius-sm);align-items:center;display:flex}.home-logo .logo{transform-origin:0;width:143px;height:32px;animation:.22s cubic-bezier(.4,0,.2,1) brand-grow}.home-head .icon-btn{width:40px;height:40px;color:var(--text-muted);background:0 0;border:0;padding:0}.home-head .icon-btn:hover{background:var(--surface-muted)}@media (pointer:coarse){.home-head .icon-btn{width:44px;height:44px}}.home-main{z-index:1;box-sizing:border-box;width:100%;max-width:560px;margin-inline:auto;padding:168px 0 24px;position:relative}.home.empty .home-main{margin-block:auto;padding-top:0}.home-main h1{letter-spacing:-.01em;text-align:center;text-wrap:balance;margin:0;font-size:32px;font-weight:600;line-height:40px}.home-sub{text-align:center;max-width:480px;color:var(--text-muted);margin:12px auto 0;font-size:15px;line-height:22px}.home-form{gap:8px;margin-top:32px;display:flex}.home-field{box-sizing:border-box;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);min-width:0;height:48px;color:var(--text-subtle);flex:auto;align-items:center;gap:8px;padding:0 16px 0 14px;display:flex;position:relative}.home-field.invalid{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}.home-field:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.home-field svg{flex:none}.home-field .url-input{min-width:0;height:100%;box-shadow:none;font-family:var(--font-mono);color:var(--text);background:0 0;border:0;border-radius:0;flex:auto;padding:0;font-size:15px;line-height:22px}.home-field .url-input:focus{outline:none}.home-submit{border-radius:var(--radius-md);background:var(--primary);height:48px;color:var(--on-primary);font:500 15px/20px var(--font);cursor:pointer;white-space:nowrap;border:0;flex:none;padding:0 24px;transition:background-color .2s,border-color .2s,color .2s}.home-submit:hover:not(:disabled){background:var(--primary-hover)}.home-submit:active:not(:disabled){background:var(--primary-active)}.home-submit.secondary{border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}.home-submit.secondary:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.home-msg{min-height:48px;margin-top:12px;font-size:13px;line-height:20px}.msg-error,.msg-progress,.msg-failed{gap:8px;margin:0;display:flex}.msg-error{color:var(--danger-text);align-items:flex-start}.msg-progress{color:var(--text-muted);font-variant-numeric:tabular-nums;align-items:center}.msg-cancelled{color:var(--text-muted);margin:0}.msg-failed{border-radius:var(--radius-md);background:var(--danger-soft);color:var(--danger-text);align-items:flex-start;padding:8px 12px}.msg-error svg,.msg-failed svg{flex:none}.msg-bar{border-radius:var(--radius-full);background:var(--surface-muted);height:4px;margin-top:8px;overflow:hidden}.msg-bar-run{border-radius:var(--radius-full);background:var(--primary);width:30%;height:100%;animation:1.4s cubic-bezier(.4,0,.2,1) infinite msg-run}@keyframes msg-run{0%{transform:translate(-100%)}to{transform:translate(340%)}}@media (prefers-reduced-motion:reduce){.msg-bar-run{animation:none}}@media (width<=1024px){.home-main{padding-top:200px}.home-veil{--veil-size:80% 56%}.home.empty .home-veil{--veil-size:80% 40%}}@media (width<=640px){.home-head{height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(10px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left))}.home-main{max-width:592px;padding:96px 16px 24px}.home-main h1{font-size:28px;line-height:36px}.home-form{flex-direction:column}.home-submit{width:100%}.home-veil{--veil-size:130% 62%;--veil-y:32%}.home.empty .home-veil{--veil-size:130% 44%}}.url-input{border:1px solid var(--border);background:var(--surface);min-width:0;height:44px;box-shadow:var(--shadow);border-radius:10px;flex:1;padding:0 14px}.url-input[aria-invalid=true]{border-color:var(--danger)}.spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.summary{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:10px;flex-direction:column;gap:4px;padding:12px 16px;display:flex}.summary span{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:13px}.summary .warn{color:var(--warn-text);background:var(--warn-bg);border-radius:6px;align-self:flex-start;padding:2px 8px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--stroke-mix:#000;--edge-mix:12%;--badge-mix:78%}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--stroke-mix:#fff;--edge-mix:18%;--badge-mix:88%}:root:not([data-theme=light]) .lvl-0{--badge-mix:78%}}:root[data-theme=dark]{--stroke-mix:#fff;--edge-mix:18%;--badge-mix:88%}:root[data-theme=dark] .lvl-0{--badge-mix:78%}.lvl-0{--node-bg:var(--lvl0-bg);--node-fg:var(--lvl0-fg);--badge-mix:88%}.lvl-1{--node-bg:var(--lvl1-bg);--node-fg:var(--lvl1-fg)}.lvl-2{--node-bg:var(--lvl2-bg);--node-fg:var(--lvl2-fg)}.lvl-3{--node-bg:var(--lvl3-bg);--node-fg:var(--lvl3-fg)}.lvl-4{--node-bg:var(--lvl4-bg);--node-fg:var(--lvl4-fg)}.lvl-5{--node-bg:var(--lvl5-bg);--node-fg:var(--lvl5-fg)}.lvl-6{--node-bg:var(--lvl6-bg);--node-fg:var(--lvl6-fg)}.lvl-7{--node-bg:var(--lvl7-bg);--node-fg:var(--lvl7-fg)}.lvl-8{--node-bg:var(--lvl8-bg);--node-fg:var(--lvl8-fg)}.lvl-9{--node-bg:var(--lvl9-bg);--node-fg:var(--lvl9-fg)}.lvl-10{--node-bg:var(--lvl10-bg);--node-fg:var(--lvl10-fg)}.lvl-11{--node-bg:var(--lvl11-bg);--node-fg:var(--lvl11-fg)}.lvl-12{--node-bg:var(--lvl12-bg);--node-fg:var(--lvl12-fg)}.lvl-13{--node-bg:var(--lvl13-bg);--node-fg:var(--lvl13-fg)}.lvl-14{--node-bg:var(--lvl14-bg);--node-fg:var(--lvl14-fg)}.lvl-15{--node-bg:var(--lvl15-bg);--node-fg:var(--lvl15-fg)}.lvl-16{--node-bg:var(--lvl16-bg);--node-fg:var(--lvl16-fg)}.canvas-host{touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;position:fixed;inset:0}.canvas{background:var(--bg);touch-action:none;cursor:grab;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.canvas-host[data-cursor=grab],.canvas-host[data-cursor=grab] *{cursor:grab!important}.canvas-host[data-cursor=grabbing],.canvas-host[data-cursor=grabbing] *{cursor:grabbing!important}.canvas:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.canvas{--grid-dot:var(--canvas-dot);background-color:var(--bg);background-image:radial-gradient(circle at 1px 1px, var(--grid-dot) 1px, transparent 1.25px);background-size:24px 24px}.world{will-change:transform}.link{fill:none;stroke:color-mix(in srgb, var(--node-fg) 40%, transparent);stroke-width:1.5px}.node{cursor:default}.node-box{fill:var(--node-bg);stroke:color-mix(in srgb, var(--node-bg), var(--stroke-mix) var(--edge-mix));stroke-width:1.5px;transition:stroke .3s,stroke-width .3s}.node-label{fill:var(--node-fg);font:13px var(--font);dominant-baseline:central;pointer-events:none}.node-badge{pointer-events:none}.badge-ball{fill:color-mix(in srgb, var(--node-fg) var(--badge-mix), var(--node-bg))}.badge-num{fill:var(--node-bg);font:600 9px var(--font);font-variant-numeric:tabular-nums;dominant-baseline:central;text-anchor:middle}.root .node-label{font-size:15px;font-weight:600}.virtual .node-badge{opacity:.75}.virtual .node-box{fill:#0000;stroke:color-mix(in srgb, var(--node-fg) 45%, transparent);stroke-dasharray:4 3}.virtual .node-label{opacity:.7}.external .node-label{font-style:italic}@media (hover:hover){.node:hover .node-box{stroke:var(--brand-soft)}}.node-loading{pointer-events:none;animation:.3s both loading-in}.node-loading-bg{fill:color-mix(in srgb, var(--node-bg) 72%, transparent);stroke:color-mix(in srgb, var(--node-fg) 18%, transparent);stroke-width:1px}.node-loading-spin{fill:none;stroke:var(--node-fg);stroke-width:1.75px;stroke-linecap:round;stroke-dasharray:10 28;transform-box:fill-box;transform-origin:50%;animation:.8s linear infinite spin}@keyframes loading-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.node-loading-spin{animation-duration:2s}}.node-clip{pointer-events:none;overflow:hidden}.node-fade{pointer-events:none}.node-fade.start{opacity:0;transition:opacity .3s}.fade-stop{stop-color:var(--node-bg)}.fade-bg{--node-bg:var(--bg)}@media (hover:hover){.node:hover .node-label.marquee{animation:marquee var(--dur) ease-in-out .3s infinite alternate}.node:hover .node-fade.start{opacity:1}}@keyframes marquee{0%,12%{transform:translate(0)}88%,to{transform:translateX(var(--shift))}}@media (prefers-reduced-motion:reduce){.node:hover .node-label.marquee{animation:none}}.node.selected .node-box{stroke:var(--brand-line);stroke-width:2.5px}.node.focused .node-box{stroke:var(--brand-line);stroke-width:2.5px;stroke-dasharray:none}.node-mark{fill:#fde047;opacity:.55;pointer-events:none}.node.matched .node-box{stroke:var(--accent);stroke-width:2px}.node.dimmed,.link.dimmed{opacity:.35}.toggle{cursor:pointer}.toggle-bg{fill:var(--bg);stroke:color-mix(in srgb, var(--node-bg), var(--stroke-mix) 35%);stroke-width:1.5px}.lvl-0 .toggle-bg{stroke:var(--node-bg)}.toggle line{stroke:var(--node-fg);stroke-width:1.75px;stroke-linecap:round;pointer-events:none}.lvl-0 .toggle line{stroke:var(--node-bg)}.toggle-v{transform-box:fill-box;transform-origin:50%;transition:transform .18s cubic-bezier(.4,0,.2,1)}.toggle.open .toggle-v{transform:scaleY(0)}.toggle-hit{fill:#0000;pointer-events:all}@media (hover:hover){.toggle:hover .toggle-bg{stroke-width:2.25px}}.zoom-controls{right:var(--edge-r);bottom:var(--edge-b);box-sizing:border-box;height:var(--toolbar-h);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:5;align-items:center;gap:2px;padding:4px;display:flex;position:fixed}.zc-btn{min-width:var(--ctl);height:var(--ctl);border-radius:var(--radius-md);color:var(--text);cursor:pointer;background:0 0;border:0;place-items:center;padding:0 4px;font-size:18px;line-height:1;display:inline-grid}.zc-btn:hover{background:var(--surface-muted)}.zc-scale{min-width:56px;font:500 13px/20px var(--font);font-variant-numeric:tabular-nums}.zc-sep{background:var(--border);width:1px;height:24px;margin:0 6px}.zc-menu{background:var(--surface);border:1px solid var(--border);min-width:180px;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0}.zc-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;height:36px;padding:0 12px}.zc-menu button:hover:not(:disabled){background:color-mix(in srgb, var(--text) 8%, transparent)}.zc-menu button:disabled{opacity:.45;cursor:default}@media (pointer:coarse){.zc-btn{min-width:44px;height:44px}.zc-menu button{height:44px}}.canvas.animated .node{transition:transform .26s cubic-bezier(.4,0,.2,1)}.node.entering{transform-box:fill-box;transform-origin:0;animation:.26s cubic-bezier(.4,0,.2,1) both node-enter}.node.exiting{transform-box:fill-box;transform-origin:0;pointer-events:none;animation:.2s cubic-bezier(.4,0,.2,1) both node-exit}.link.entering{animation:.26s cubic-bezier(.4,0,.2,1) both fade-in}.link.exiting{animation:.2s cubic-bezier(.4,0,.2,1) both fade-out}@keyframes node-enter{0%{opacity:0;scale:.94}}@keyframes node-exit{to{opacity:0;scale:.94}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.tooltip{z-index:30;box-sizing:border-box;background:var(--surface);border:1px solid var(--border);width:max-content;max-width:min(360px,100vw - 16px);box-shadow:var(--shadow-md);pointer-events:none;border-radius:10px;padding:10px 12px;position:fixed}.tt-arrow{background:var(--surface);border-left:1px solid var(--border);border-top:1px solid var(--border);width:10px;height:10px;position:absolute;top:-6px;left:20px;transform:rotate(45deg)}.tt-arrow.up{top:auto;bottom:-6px;transform:rotate(225deg)}.tt-kind{font:500 12px/16px var(--font);letter-spacing:.02em;color:var(--text-subtle);align-items:center;gap:6px;display:flex}.tt-title{font:600 14px/20px var(--font);color:var(--text);overflow-wrap:anywhere;margin-top:4px}.tt-title.slug{font:600 13px/20px var(--font-mono)}.tt-url{font:12px/17px var(--font-mono);color:var(--text-muted);overflow-wrap:anywhere;margin-top:4px}.tt-note{color:var(--text-muted);margin-top:4px;font-size:12px;line-height:17px}.tt-foot{border-top:1px solid var(--border);color:var(--text-subtle);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 12px;margin-top:8px;padding-top:8px;font-size:12px;line-height:16px;display:flex}.tt-counts{color:var(--text)}.panel{top:var(--below-toolbar);bottom:var(--edge-b);width:var(--panel-w);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:8;flex-direction:column;animation:.2s cubic-bezier(.4,0,.2,1) panel-in;display:flex;position:fixed}.panel.details{right:var(--edge-r)}.panel.stats{left:var(--edge-l);width:var(--stats-w)}@keyframes panel-in{0%{opacity:0;transform:translateY(8px)}}.panel.sheet{width:auto;height:50dvh;padding-bottom:env(safe-area-inset-bottom);border-bottom:0;border-radius:16px 16px 0 0;transition:transform .2s cubic-bezier(.4,0,.2,1);animation:.22s cubic-bezier(.4,0,.2,1) sheet-in;inset:auto 0 0}@keyframes sheet-in{0%{transform:translateY(100%)}}.sheet-handle{touch-action:none;cursor:grab;place-items:center;height:24px;display:grid}.sheet-handle span{background:var(--border);border-radius:2px;width:40px;height:4px}.panel-head{align-items:flex-start;gap:8px;padding:12px 12px 8px 16px;display:flex}.panel-head h2{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;padding-top:7px;font-size:16px;line-height:1.4}.icon-btn.ghost{background:0 0;border-color:#0000}.icon-btn.active{border-color:var(--accent);color:var(--accent)}.icon-btn .tb-label{font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-left:6px;font-size:13px;display:inline-flex}.icon-btn:has(.tb-label){padding:0 10px;display:inline-flex}.dot-warn{background:#f59e0b;border-radius:50%;width:8px;height:8px}.panel-body{overscroll-behavior:contain;flex:1;padding:0 16px 16px;overflow:auto}.d-section{margin:12px 0}.d-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600}.top-list,.plain-list,.err-list{margin:0;padding:0;list-style:none}.top-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;width:100%;min-height:32px;padding:4px 8px;display:flex}.top-list button:hover{background:color-mix(in srgb, var(--text) 6%, transparent)}.dc-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dc-badge{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.top-list{counter-reset:top}.top-list li{counter-increment:top}.top-list button:before{content:counter(top);width:18px;color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.plain-list li{justify-content:space-between;gap:8px;padding:4px 0;font-size:13px;display:flex}.plain-list a{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);overflow:hidden}.files summary{cursor:pointer}.warn-box{background:var(--warn-bg);color:var(--warn-text);border-radius:10px;margin:4px 0 12px;padding:10px 12px;font-size:13px}.err-list li{flex-direction:column;margin-top:6px;display:flex}.err-list a{color:inherit;word-break:break-all}.err-list span{opacity:.8}.banner,.toast{max-width:calc(100vw - 32px);box-shadow:var(--shadow);z-index:9;border-radius:10px;align-items:center;gap:12px;padding:8px 14px;font-size:13px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.banner{top:var(--below-toolbar);background:var(--warn-bg);color:var(--warn-text)}.banner button{cursor:pointer;background:0 0;border:1px solid;border-radius:6px;flex:none;min-height:30px;padding:0 10px}.toast{bottom:calc(var(--edge-b) + 44px + var(--gap));background:var(--text);color:var(--bg)}.toast,.msg-cancelled{animation:.18s ease-out msg-in,.4s 2.6s forwards msg-out}@keyframes msg-in{0%{opacity:0}}@keyframes msg-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){.toast,.msg-cancelled{animation:none}}.zoom-controls.shifted{right:calc(var(--edge-r) + var(--panel-w) + var(--gap))}@media (width<=640px){.icon-btn .tb-label{display:none}.stat-grid{grid-template-columns:repeat(2,1fr)}}.search-box{box-sizing:border-box;min-width:0;height:var(--ctl);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text-subtle);flex:360px;align-items:center;gap:8px;margin-left:4px;padding:0 0 0 10px;display:flex}.search-box:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.search-box.invalid{border-color:var(--danger)}.sb-icon{color:var(--text-subtle);flex:none}.sb-input{min-width:60px;height:100%;font:14px/20px var(--font);color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:0}.sb-input::-webkit-search-cancel-button{display:none}.sb-count{color:var(--text-subtle);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:13px;line-height:20px}.sb-btn{border:0;border-left:1px solid var(--border);min-width:40px;height:100%;color:var(--text-subtle);font:13px/20px var(--font-mono);cursor:pointer;background:0 0;border-radius:0;flex:none;padding:0 4px}.sb-btn:last-child{border-radius:0 7px 7px 0}.sb-btn:hover:not(:disabled){background:var(--surface-muted);color:var(--text)}.sb-btn.on{background:var(--surface-selected);color:var(--text)}.sb-btn:disabled{opacity:.4;cursor:default}.menu-wrap{position:relative}.popover{width:300px;max-height:calc(100vh - var(--below-toolbar) - var(--gap));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:20;padding:8px 14px 14px;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.seg{border:1px solid var(--border);border-radius:8px;margin-bottom:6px;display:flex;overflow:hidden}.seg button{cursor:pointer;background:0 0;border:0;flex:1;min-height:30px;padding:0 6px;font-size:12px}.seg button+button{border-left:1px solid var(--border)}.seg button.on{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);font-weight:600}.chips{top:var(--below-toolbar);left:var(--edge-l);right:calc(var(--edge-r) + var(--panel-w) + var(--gap));z-index:6;pointer-events:none;flex-wrap:wrap;gap:8px;display:flex;position:fixed}.chip{border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);min-height:32px;color:var(--text);box-shadow:var(--shadow-sm);cursor:pointer;pointer-events:auto;align-items:center;gap:2px;padding:0 2px 0 12px;font-size:13px;line-height:20px;display:inline-flex}.chip span{color:var(--text-muted)}.chip.ghost{border-color:var(--border);color:var(--text-muted)}.minimap{left:var(--edge-l);bottom:var(--edge-b);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--border);border-radius:var(--radius-lg);width:200px;height:140px;box-shadow:var(--shadow-md);z-index:5;cursor:crosshair;touch-action:none;position:fixed;overflow:hidden}body:has(.panel.stats:not(.sheet)) .minimap{left:calc(var(--edge-l) + var(--stats-w) + var(--gap))}.minimap canvas{position:absolute;inset:0}.node-date{fill:var(--node-fg);opacity:.6;font:10px var(--font);font-variant-numeric:tabular-nums;dominant-baseline:central;pointer-events:none}@media (width<=640px){.chips{right:var(--edge-r)}}.popover.export{width:320px;padding:4px}.ex-head{padding:8px 10px 10px}.ex-head-t{font:600 14px/20px var(--font)}.ex-wait{align-items:center;gap:var(--space-3);padding:var(--space-4);display:flex}.ex-wait-t{flex:1;min-width:0;font-size:13px;line-height:18px}.ex-wait-n{color:var(--text-subtle);font-variant-numeric:tabular-nums;font-size:12px;display:block}.ex-skip{height:28px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;flex:none;font-size:12px}.ex-skip:hover{border-color:var(--border-strong);color:var(--text)}.ex-head-s{color:var(--text-subtle);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px;line-height:16px}.ex-host{font-family:var(--font-mono)}.ex-group{margin-top:2px}.ex-group-l{border-top:1px solid var(--border);font:500 12px/16px var(--font);color:var(--text-subtle);margin:6px 10px 0;padding:10px 0 4px}.export-item{border-radius:var(--radius-md);width:100%;min-height:56px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:8px 10px;display:flex}.export-item:hover:not(:disabled){background:var(--surface-muted)}.export-item:hover:not(:disabled) .ex-dl{opacity:1}.export-item:disabled{cursor:progress;opacity:.7}.ex-fmt{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:40px;height:40px;font:600 11px/16px var(--font-mono);letter-spacing:.02em;color:var(--text);flex:none;place-items:center;display:grid}.ex-text{flex-direction:column;flex:auto;min-width:0;display:flex}.ex-title{font:500 14px/20px var(--font)}.ex-desc{color:var(--text-subtle);font-size:12px;line-height:17px}.ex-dl{color:var(--text-muted);opacity:0;flex:none;transition:opacity .2s}.export-item .spinner{flex:none}.popover.mobile-menu{width:min(288px,100vw - 24px);padding:4px}.mm-item{border-radius:var(--radius-md);width:100%;height:44px;color:var(--text);font:14px/20px var(--font);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0 12px;display:flex}.mm-item:hover,.mm-item:active{background:var(--surface-muted)}.mm-item>svg{color:var(--text-muted);flex:none}.mm-text{flex:auto;min-width:0}.mm-aside{max-width:50%;color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;flex:none;font-size:13px;line-height:20px;overflow:hidden}.mm-aside.mono{font-family:var(--font-mono)}.mm-aside.danger{color:var(--danger-text);align-items:center;gap:6px;display:inline-flex}.mm-dot{border-radius:var(--radius-full);background:var(--danger);width:8px;height:8px}.mm-sep{background:var(--border);height:1px;margin:4px 8px}.mm-theme{align-items:center;gap:12px;min-height:52px;padding:0 2px 0 12px;font-size:14px;line-height:20px;display:flex}.mm-theme>span{flex:auto}.mm-theme div[role=radiogroup]{background:var(--surface-muted);border-radius:10px;gap:2px;padding:2px;display:flex}.mm-theme button{border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.mm-theme button.on{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--text)}.panel.sheet.mm-sheet{flex-direction:column;display:flex;position:fixed}.mm-sheet-body{padding:12px 16px 16px;overflow-y:auto}.mm-sheet-body h2,.mm-sheet-body #domain-pop-h{font:600 16px/24px var(--font);margin:0 0 8px;padding-right:48px}.mm-sheet-body .export-item{min-height:60px}.mm-sheet-body .domain-form .home-field,.mm-sheet-body .domain-submit{height:44px}.filters-sheet{z-index:25;height:70dvh}.node-menu{z-index:30;background:var(--surface);border:1px solid var(--border);min-width:220px;max-width:calc(100vw - 16px);box-shadow:var(--shadow);border-radius:12px;padding:6px;animation:.15s ease-out panel-in;position:fixed}.nm-title{text-overflow:ellipsis;white-space:nowrap;padding:6px 10px 8px;font-weight:600;overflow:hidden}.nm-item{width:100%;min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;padding:0 10px;text-decoration:none;display:flex}.nm-item:active,.nm-item:hover{background:color-mix(in srgb, var(--text) 8%, transparent)}@media (pointer:coarse){.chip,.ip-btn,.ip-row,.top-list button,.export-item{min-height:44px}.panel-head .icon-btn{width:44px}.panel-head h2{padding-top:11px}}.empty-state{background:var(--surface);border:1px solid var(--border);max-width:min(420px,100vw - 32px);box-shadow:var(--shadow);text-align:center;z-index:6;border-radius:14px;flex-direction:column;gap:6px;padding:20px 24px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.empty-state span{color:var(--text-muted);word-break:break-word;font-size:13px}.recent{text-align:left;margin-top:16px}.recent-head{justify-content:space-between;align-items:center;min-height:32px;display:flex}.recent-head h2{font:500 14px/20px var(--font);color:var(--text-muted);margin:0}.recent-confirm{color:var(--text-muted);align-items:center;gap:10px;font-size:13px;display:inline-flex}.link-btn.danger{color:var(--danger-text)}.recent-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-top:8px;overflow:hidden}.recent-list{margin:0;padding:0;list-style:none}.recent-card{border-bottom:1px solid var(--border);align-items:center;gap:4px;padding-right:8px;display:flex}.rc-main{box-sizing:border-box;min-width:0;height:64px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:12px;padding:0 8px 0 16px;display:flex}.rc-main:hover:not(:disabled){background:var(--surface-muted)}.rc-main:disabled{cursor:progress;opacity:.6}.favicon{object-fit:contain;border-radius:2px;display:block}.rc-avatar{border-radius:var(--radius-md);background:var(--surface-muted);width:32px;height:32px;color:var(--text-muted);font:600 14px/20px var(--font);flex:none;place-items:center;display:grid}.rc-text{flex-direction:column;min-width:0;display:flex}.rc-text b{text-overflow:ellipsis;white-space:nowrap;font:500 14px/20px var(--font-mono);color:var(--text);overflow:hidden}.rc-meta{color:var(--text-subtle);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:0 8px;font-size:13px;line-height:20px;display:inline-flex}.rc-warn{color:var(--warn-text)}.rc-act{border-radius:var(--radius-md);width:40px;height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.rc-act:hover:not(:disabled){background:var(--surface-muted)}.recent-note{text-align:center;color:var(--text-subtle);justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:13px;line-height:20px;display:flex;margin:0!important}.recent-note svg{flex:none}@media (pointer:coarse){.rc-act{width:44px;height:44px}}.recent-dropdown{background:var(--surface);border:1px solid var(--border);width:min(360px,100vw - 24px);max-height:60vh;box-shadow:var(--shadow);z-index:20;border-radius:10px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;overflow:auto}.rd-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:6px 10px 4px;font-size:11px;font-weight:600}.rd-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;flex-direction:column;align-items:flex-start;width:100%;padding:7px 10px;display:flex}.rd-item.active{background:color-mix(in srgb, var(--accent) 10%, transparent)}.snapshot-chip{border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);min-height:32px;color:var(--text-subtle);box-shadow:var(--shadow-sm);pointer-events:auto;align-items:center;gap:8px;padding:0 4px 0 12px;font-size:13px;line-height:20px;display:inline-flex}.error-chip{border-color:color-mix(in srgb, var(--danger) 45%, var(--border));max-width:min(560px,100%);color:var(--danger)}.error-chip-text{padding:4px 0;line-height:1.35}.snapshot-chip .chip-close{min-width:22px;color:var(--text-muted);background:0 0;padding:0;font-weight:400}.snapshot-chip .chip-close:hover{color:var(--text)}.snapshot-chip button{background:color-mix(in srgb, var(--accent) 14%, transparent);min-height:22px;color:var(--accent);cursor:pointer;border:0;border-radius:999px;padding:0 10px;font-size:12px;font-weight:600}@media (pointer:coarse){.rc-act{width:48px}.rd-item{min-height:44px}.snapshot-chip{min-height:46px}.snapshot-chip button{min-height:36px}}@media (width>=1280px){.search-box{max-width:480px}}.toolbar .search-box{flex:360px}.ip-head{flex:none;padding:12px 16px}.ip-kind-row{justify-content:space-between;align-items:center;gap:8px;min-height:32px;display:flex}.ip-kind{font:500 12px/16px var(--font);letter-spacing:.02em;color:var(--text-subtle);align-items:center;gap:6px;display:inline-flex}.ip-close{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;margin-right:-6px;padding:0;display:grid}.ip-close:hover{background:var(--surface-muted)}.ip-head h2{font:600 20px/28px var(--font);letter-spacing:-.01em;overflow-wrap:anywhere;margin:4px 0 0}.ip-crumbs{margin-top:6px}.ip-crumbs ol{flex-wrap:wrap;align-items:center;row-gap:2px;margin:0;padding:0;font-size:13px;line-height:20px;list-style:none;display:flex}.ip-crumbs li{align-items:center;min-width:0;display:inline-flex}.ip-crumbs button{max-width:160px;color:var(--text-subtle);font:inherit;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;padding:0;overflow:hidden}.ip-crumbs button:hover{color:var(--text);text-decoration:underline}.ip-crumbs svg{color:var(--text-subtle);flex:none;margin:0 2px}.ip-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;flex:auto;gap:16px;min-height:0;padding:0 8px 16px 16px;display:flex;overflow-y:auto}.ip-url-block{flex-direction:column;gap:4px;display:flex}.ip-url{background:var(--surface-muted);border-radius:var(--radius-md);color:var(--primary);font:13px/20px var(--font-mono);overflow-wrap:anywhere;padding:8px 12px;text-decoration:none;display:block}.ip-url:hover{text-decoration:underline}.ip-url-acts{gap:4px;display:flex}.ip-link-btn{height:32px;color:var(--text-muted);font:500 13px/20px var(--font);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:0 10px 0 8px;text-decoration:none;display:inline-flex}.ip-link-btn:hover{background:var(--surface-muted)}.ip-link-btn svg{flex:none}.ip-note{background:var(--surface-muted);border-radius:var(--radius-md);color:var(--text-muted);align-items:flex-start;gap:10px;margin:0;padding:10px 12px;font-size:13px;line-height:20px;display:flex}.ip-note svg{color:var(--text-subtle);flex:none;margin-top:1px}.ip-dupes{flex-direction:column;gap:2px;font-size:13px;line-height:20px;display:flex}.ip-dupes-h{color:var(--text-subtle)}.ip-dupes a{color:var(--primary);font-family:var(--font-mono);overflow-wrap:anywhere}.ip-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ip-tile{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px}.ip-tile-v{font:600 20px/28px var(--font);font-variant-numeric:tabular-nums}.ip-tile-l{color:var(--text-subtle);font-size:12px;line-height:16px}.ip-meta{grid-template-columns:auto minmax(0,1fr);gap:6px 16px;margin:0;font-size:13px;line-height:20px;display:grid}.ip-meta dt{color:var(--text-subtle)}.ip-meta dd{color:var(--text);font-variant-numeric:tabular-nums;margin:0}.ip-acts{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.ip-btn{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);height:36px;color:var(--text);font:500 14px/20px var(--font);white-space:nowrap;cursor:pointer;align-items:center;gap:8px;padding:0 14px 0 12px;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.ip-btn:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.ip-btn svg{flex:none}.ip-btn.more{margin-top:8px}.ip-kids{border-top:1px solid var(--border);padding-top:14px}.ip-kids h3{font:500 14px/20px var(--font);white-space:nowrap;align-items:center;gap:8px;margin:0;display:flex}.ip-count{box-sizing:border-box;border-radius:var(--radius-full);background:var(--surface-muted);min-width:20px;height:20px;color:var(--text-muted);font:500 12px/20px var(--font);font-variant-numeric:tabular-nums;text-align:center;padding:0 6px}.ip-kids-hint{color:var(--text-subtle);margin:2px 0 0;font-size:12px;line-height:16px}.ip-kids ul{margin:8px -8px 0;padding:0;list-style:none}.ip-row{border-radius:var(--radius-md);width:100%;min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:6px 8px;display:flex}.ip-row:hover{background:var(--surface-muted)}.ip-row>svg{color:var(--text-subtle);flex:none}.ip-row-text{flex-direction:column;flex:auto;min-width:0;display:flex}.ip-row-title,.ip-row-path{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ip-row-title{font-size:14px;line-height:20px}.ip-row-path{font:12px/16px var(--font-mono);color:var(--text-subtle)}.ip-row-counts{color:var(--text-subtle);font-variant-numeric:tabular-nums;flex:none;font-size:12px;line-height:16px}.panel.details.sheet .ip-head{padding:4px 16px 12px}.panel.details.sheet .ip-close{width:44px;height:44px}.panel.details.sheet .ip-btn,.panel.details.sheet .ip-link-btn{height:44px}.panel.details.sheet .ip-row{min-height:52px}.sp-host{font:500 18px/26px var(--font-mono);overflow-wrap:anywhere;margin:4px 0 0}.sp-sub{color:var(--text-subtle);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:13px;line-height:20px}.sp-body{gap:20px}.sp-tile-v{font:600 24px/32px var(--font);font-variant-numeric:tabular-nums}.sp-meta{grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;margin:-8px 0 0;font-size:13px;line-height:20px;display:grid}.sp-meta dt{color:var(--text-subtle)}.sp-meta dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.sp-ok{justify-content:flex-end;align-items:center;gap:4px;display:inline-flex}.sp-ok svg{color:var(--text-muted)}.sp-errors{background:var(--danger-soft);border-radius:10px;padding:12px}.sp-errors h3{font:600 14px/20px var(--font);color:var(--danger-text);align-items:center;gap:8px;margin:0;display:flex}.sp-errors h3 svg{flex:none}.sp-errors p{color:var(--text-muted);margin:4px 0 0 26px;font-size:13px;line-height:20px}.sp-errors ul{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.sp-errors li{align-items:center;gap:10px;font-size:13px;line-height:20px;display:flex}.sp-err-code{box-sizing:border-box;border-radius:var(--radius-sm);background:var(--surface);min-width:48px;color:var(--text);font:12px/20px var(--font-mono);font-variant-numeric:tabular-nums;text-align:center;flex:none;padding:0 6px}.sp-err-text{min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.sp-err-n{color:var(--text);font-variant-numeric:tabular-nums;flex:none}.sp-h{font:500 14px/20px var(--font);margin:0}.sp-hint{color:var(--text-subtle);margin:2px 0 0;font-size:12px;line-height:16px}.sp-levels{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.sp-levels li{grid-template-columns:20px minmax(0,1fr) 48px;align-items:center;column-gap:10px;font-size:13px;line-height:20px;display:grid}.sp-lv-n{color:var(--text-subtle);text-align:right;font-variant-numeric:tabular-nums}.sp-lv-v{text-align:right;font-variant-numeric:tabular-nums}.sp-bar{background:var(--surface-muted);border-radius:3px;height:12px;overflow:hidden}.sp-bar>span{border-radius:3px;min-width:2px;height:100%;display:block}.sp-top{border-top:1px solid var(--border);padding-top:14px}.sp-top ol{margin:8px -8px 0;padding:0;list-style:none}.sp-row{border-radius:var(--radius-md);width:100%;min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-rows:auto 4px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:6px 8px;display:grid}.sp-row:hover{background:var(--surface-muted)}.sp-rank{color:var(--text-subtle);text-align:right;font-variant-numeric:tabular-nums;font-size:12px;line-height:20px}.sp-path{min-width:0;font:13px/20px var(--font-mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sp-v{font-variant-numeric:tabular-nums;font-size:13px;line-height:20px}.sp-row-bar{background:var(--surface-muted);border-radius:2px;grid-column:2/4;height:4px;overflow:hidden}.sp-row-bar>span{background:var(--border-strong);border-radius:2px;height:100%;display:block}.panel.stats.sheet .ip-head{padding:4px 16px 12px}.panel.stats.sheet .ip-close{width:44px;height:44px}.panel.stats.sheet .sp-row{min-height:52px}.popover.filters{flex-direction:column;width:320px;padding:0;display:flex}.fp-head{flex:none;justify-content:space-between;align-items:center;gap:8px;padding:12px 12px 8px 16px;display:flex}.fp-head h2{font:600 16px/24px var(--font);align-items:center;gap:8px;margin:0;display:flex}.fp-reset{border-radius:var(--radius-md);height:32px;color:var(--primary);font:500 13px/20px var(--font);cursor:pointer;background:0 0;border:0;padding:0 10px}.fp-reset:hover:not(:disabled){background:var(--primary-soft)}.fp-reset:disabled{opacity:.45;cursor:not-allowed}.fp-body{flex-direction:column;flex:auto;gap:18px;min-height:0;padding:4px 16px 16px;display:flex;overflow:hidden auto}.fp-label,.fp-label-row label{font:500 14px/20px var(--font);display:block}.fp-label-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fp-value{font-variant-numeric:tabular-nums;font-size:13px;line-height:20px}.fp-value.muted{color:var(--text-subtle)}.fp-hint{color:var(--text-subtle);margin:0;font-size:12px;line-height:17px}.fp-range{appearance:none;cursor:pointer;background:0 0;width:100%;height:24px;margin:6px 0 0}.fp-range::-webkit-slider-runnable-track{border-radius:var(--radius-full);background:linear-gradient(to right, var(--primary) 0, var(--primary) var(--fill), var(--surface-muted) var(--fill), var(--surface-muted) 100%);height:4px}.fp-range::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--primary);border-radius:var(--radius-full);background:var(--surface);width:20px;height:20px;box-shadow:var(--shadow-sm);margin-top:-8px}.fp-range::-moz-range-track{border-radius:var(--radius-full);background:var(--surface-muted);height:4px}.fp-range::-moz-range-progress{border-radius:var(--radius-full);background:var(--primary);height:4px}.fp-range::-moz-range-thumb{border:2px solid var(--primary);border-radius:var(--radius-full);background:var(--surface);width:16px;height:16px}.fp-range:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-full)}.fp-ticks{color:var(--text-subtle);font-variant-numeric:tabular-nums;justify-content:space-between;padding:0 3px;font-size:11px;line-height:14px;display:flex}.fp-field{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);height:40px;color:var(--text-subtle);align-items:center;gap:8px;margin-top:8px;padding:0 4px 0 12px;display:flex}.fp-field:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.fp-field svg{flex:none}.fp-field input{min-width:0;height:100%;color:var(--text);font:14px/20px var(--font);background:0 0;border:0;outline:none;flex:auto;padding:0}.fp-field input::-webkit-calendar-picker-indicator{opacity:0;width:0;padding:0}.fp-clear{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.fp-clear:hover{background:var(--surface-muted)}.fp-presets{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.fp-chip{border:1px solid var(--border);border-radius:var(--radius-full);height:28px;color:var(--text-muted);font:500 12px/16px var(--font);cursor:pointer;background:0 0;padding:0 10px}.fp-chip:hover{border-color:var(--border-strong)}.fp-chip.on{border-color:var(--text);background:var(--text);color:var(--surface)}.fp-seg{background:var(--surface-muted);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin-top:8px;padding:2px;display:grid}.fp-seg button{border-radius:var(--radius-md);height:32px;color:var(--text-muted);font:500 13px/18px var(--font);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0 6px}.fp-seg button:hover{color:var(--text)}.fp-seg button.on{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--text)}.fp-check{align-items:flex-start;gap:10px;margin-top:10px;font-size:14px;line-height:20px;display:flex}.fp-check input{width:16px;height:16px;accent-color:var(--primary);flex:none;margin:2px 0 0}.fp-check>span{flex-direction:column;display:flex}.fp-check.off{opacity:.45;cursor:not-allowed}.fp-select{margin-top:8px;position:relative}.fp-select select{appearance:none;box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);width:100%;height:40px;color:var(--text);font:14px/20px var(--font);cursor:pointer;padding:0 36px 0 12px}.fp-select svg{pointer-events:none;color:var(--text-muted);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.popover.view{width:320px;padding:0}.vw-body{padding:0 16px 10px}.vw-list{margin:0;padding:0;list-style:none}.vw-list li{align-items:center;gap:12px;min-height:40px;padding:4px 0;display:flex}.fp-tog-text{flex-direction:column;flex:auto;min-width:0;font-size:14px;line-height:20px;display:flex}.fp-tog-text code{font:13px/20px var(--font-mono)}.fp-switch{border-radius:var(--radius-full);background:var(--border-strong);cursor:pointer;border:0;flex:none;width:36px;height:20px;padding:0;transition:background-color .2s;position:relative}.fp-switch.on{background:var(--primary)}.fp-switch>span{border-radius:var(--radius-full);background:var(--surface);width:16px;height:16px;transition:left .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.fp-switch.on>span{left:18px}@media (pointer:coarse){.fp-field,.fp-select select{height:44px}.fp-seg button{height:40px}.fp-view li{min-height:52px}}.panel.sheet.filters-sheet{flex-direction:column;display:flex;position:fixed}.fp-sheet-close{z-index:1;border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.filters-sheet .fp-head{padding-right:60px}.crawl-chip{color:var(--text-muted);font-variant-numeric:tabular-nums}.crawl-chip .spinner{flex:none;width:16px;height:16px}.crawl-chip-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chip-primary{border-radius:var(--radius-full);height:24px;color:var(--primary);font:500 13px/20px var(--font);cursor:pointer;background:0 0;border:0;flex:none;padding:0 10px}.chip-primary:hover{background:var(--primary-soft)}@media (pointer:coarse){.chip-primary{height:32px}input,select,textarea,.home-field .url-input,.domain-form .url-input,.sb-input,.fp-date input{font-size:16px}}
