@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-paper: oklch(98.5% .004 250);--color-paper-2: oklch(96.8% .005 252);--color-paper-3: oklch(93.8% .006 252);--color-ink: oklch(24% .02 258);--color-ink-2: oklch(34% .018 257);--color-ink-3: oklch(46% .016 256);--color-rule: oklch(90.5% .006 252);--color-rule-2: oklch(83% .008 252);--color-control-rule: oklch(62% .014 254);--color-graphite: oklch(21.5% .016 260);--color-graphite-2: oklch(25.5% .017 260);--color-graphite-3: oklch(30% .018 260);--color-graphite-rule: oklch(37% .016 260);--color-graphite-mask: oklch(21.5% .016 260 / 72%);--color-shadow: oklch(21.5% .016 260 / 22%);--color-on-graphite: oklch(93% .008 255);--color-on-graphite-2: oklch(76% .012 256);--color-on-graphite-3: oklch(64% .014 258);--color-accent: oklch(58% .2 256);--color-accent-strong: oklch(46% .18 256);--color-accent-lift: oklch(74% .16 256);--color-accent-ink: oklch(99% .004 250);--color-accent-wash: oklch(58% .2 256 / 12%);--color-accent-wash-dark: oklch(74% .16 256 / 16%);--color-focus: oklch(58% .2 256);--color-focus-dark: oklch(74% .16 256);--font-display: "Space Grotesk Variable", ui-sans-serif, system-ui, sans-serif;--font-body: "Inter Variable", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono Variable", ui-monospace, "SF Mono", Menlo, monospace;--text-2xs: .625rem;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .9375rem;--text-lg: 1.0625rem;--text-xl: 1.375rem;--text-2xl: 1.875rem;--text-display-s: clamp(1.75rem, 2.4vw + 1.1rem, 2.5rem);--tracking-label: .06em;--tracking-display: -.025em;--space-3xs: .125rem;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4.5rem;--rule-1: 1px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--code-gutter: 3.5rem;--code-gutter-number: 2.75rem;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .12s;--dur-base: .18s;--dur-slow: .32s;--shell-top: 52px;--shell-bottom: 32px;--tabstrip: 41px;--hit: 32px;--sg-foreground: var(--color-on-graphite);--sg-background: transparent;--sg-token-keyword: var(--color-accent-lift);--sg-token-function: var(--color-accent-lift);--sg-token-link: var(--color-accent-lift);--sg-token-constant: var(--color-on-graphite);--sg-token-string: var(--color-on-graphite-2);--sg-token-string-expression: var(--color-on-graphite-2);--sg-token-parameter: var(--color-on-graphite-2);--sg-token-comment: var(--color-on-graphite-3);--sg-token-punctuation: var(--color-on-graphite-3)}*,*:before,*:after{box-sizing:border-box}html,body{overflow-x:clip;margin:0;height:100%}body{background:var(--color-paper);color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-base);line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-style:normal;font-weight:600;letter-spacing:var(--tracking-display);color:var(--color-ink);overflow-wrap:anywhere;min-width:0;margin:0}p{margin:0}ul,ol,dl,dd{margin:0;padding:0;list-style:none}button{font:inherit;color:inherit}:not(pre)>code{font-family:var(--font-mono);font-size:.92em;padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-xs);background:var(--color-paper-3);color:var(--color-ink);overflow-wrap:anywhere}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.canvas :focus-visible,.palette :focus-visible,.code :focus-visible,.toast :focus-visible{outline-color:var(--color-focus-dark)}.label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink-3)}.hint{font-size:var(--text-sm);color:var(--color-ink-3);margin-block:var(--space-2xs) var(--space-xs)}.empty{font-size:var(--text-sm);color:var(--color-ink-3);padding:var(--space-md)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.button{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:32px;padding:0 var(--space-sm);border:var(--rule-1) solid var(--color-control-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);font-size:var(--text-sm);font-weight:500;white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.button:hover:not(:disabled){background:var(--color-paper-3);border-color:var(--color-accent)}.button:active:not(:disabled){background:var(--color-paper-3);transform:translateY(1px)}.button:disabled{opacity:.45;cursor:not-allowed}.button--quiet{border-color:var(--color-rule-2);background:transparent;color:var(--color-ink-2)}.button--primary{background:var(--color-accent-strong);border-color:var(--color-accent-strong);color:var(--color-accent-ink)}.button--primary:hover:not(:disabled){background:var(--color-accent);border-color:var(--color-accent)}.input{width:100%;min-height:32px;padding:0 var(--space-xs);border:var(--rule-1) solid var(--color-control-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);font:inherit;font-size:var(--text-sm)}.input:hover{border-color:var(--color-accent)}.chip{display:inline-flex;align-items:center;padding:var(--space-3xs) var(--space-2xs);border:var(--rule-1) solid var(--color-rule-2);border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.04em;color:var(--color-ink-3)}.chips{display:inline-flex;align-items:center;gap:var(--space-2xs);flex-wrap:wrap}.chip--button{cursor:pointer;min-height:28px;white-space:nowrap;background:var(--color-paper);border-color:var(--color-control-rule)}.chip--button:hover{border-color:var(--color-accent)}.chip--button[data-active]{background:var(--color-accent-strong);border-color:var(--color-accent-strong);color:var(--color-accent-ink)}.links__go:active,.idlist__go:active,.index__go:active,.tree__row:active,.statusbar__button:active,.palette__row:active,.issues__go:active,.inspector__tab:active,.mention:active,.cmdk:active,.toggle:active:not(:disabled),.chip--button:active{transform:translateY(1px)}.links__go:disabled,.index__go:disabled,.statusbar__button:disabled,.inspector__tab:disabled{opacity:.45;cursor:not-allowed}.app{display:grid;grid-template-rows:var(--shell-top) minmax(0,1fr) var(--shell-bottom);height:100dvh;min-height:100dvh}.app__shell{display:contents}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-inline:var(--space-md);border-bottom:var(--rule-1) solid var(--color-rule);background:var(--color-paper);min-width:0}.topbar__brand{display:flex;align-items:baseline;gap:var(--space-sm);min-width:0}.wordmark{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);letter-spacing:-.03em;color:var(--color-ink)}.topbar__dataset{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:34ch}.topbar__actions{display:flex;align-items:center;gap:var(--space-xs)}.cmdk{display:flex;align-items:center;gap:var(--space-sm);min-height:32px;padding:0 var(--space-xs) 0 var(--space-sm);border:var(--rule-1) solid var(--color-control-rule);border-radius:var(--radius-sm);background:var(--color-paper-2);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out)}.cmdk:hover{border-color:var(--color-accent)}.cmdk__text{font-size:var(--text-sm);color:var(--color-ink-3);white-space:nowrap}.cmdk__icon{display:none;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;color:var(--color-ink-2)}.cmdk__key{font-family:var(--font-mono);font-size:var(--text-2xs);padding:var(--space-3xs) var(--space-2xs);border:var(--rule-1) solid var(--color-rule-2);border-radius:var(--radius-xs);color:var(--color-ink-3)}.main{position:relative;display:grid;grid-template-columns:var(--split, 62%) 4px minmax(0,1fr);min-height:0;min-width:0}.main--cold{grid-template-columns:minmax(0,1fr)}.canvas{position:relative;min-width:0;min-height:0;background:var(--color-graphite)}.divider{position:relative;cursor:col-resize;background:var(--color-rule);border:0;transition:background var(--dur-fast) var(--ease-out);touch-action:none}.divider:before{content:"";position:absolute;inset-block:0;inset-inline:-6px}.divider:hover,.divider:focus-visible{background:var(--color-accent)}.flow{background:var(--color-graphite)}.flow .react-flow__attribution,.flow .react-flow__attribution.react-flow__panel{background:transparent;font-size:9px;margin:0 var(--space-2xs) var(--space-3xs) 0}.flow .react-flow__attribution a{color:var(--color-on-graphite-3)}.flow__minimap.react-flow__minimap{margin-bottom:var(--space-lg)}.node{position:relative;display:flex;flex-direction:column;justify-content:center;gap:var(--space-3xs);padding-inline:var(--space-sm);border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-sm);background:var(--color-graphite-2);color:var(--color-on-graphite);overflow:hidden;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),opacity var(--dur-base) var(--ease-out),background var(--dur-fast) var(--ease-out)}.node__badge{position:absolute;inset-block-start:var(--space-3xs);inset-inline-end:var(--space-2xs);font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1;color:var(--color-on-graphite-2)}.node[data-role=hub] .node__badge{color:var(--color-accent-ink)}.node:hover{border-color:var(--color-accent-lift);background:var(--color-graphite-3)}.node__label{font-family:var(--font-display);font-weight:500;font-size:var(--text-sm);letter-spacing:-.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node__meta{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-on-graphite-2);white-space:nowrap}.node[data-role=hub]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.node[data-role=hub] .node__meta{color:var(--color-accent-ink);opacity:.82}.node[data-role=hub] .node__label{font-size:var(--text-base);font-weight:600}.node[data-role=root]{border-color:var(--color-accent-lift);background:var(--color-graphite)}.node[data-role=isolated]{border-style:dashed;color:var(--color-on-graphite-2)}.node[data-selected]{outline:2px solid var(--color-on-graphite);outline-offset:3px}.node[data-dimmed]{opacity:.22}.node__handle{opacity:0;pointer-events:none;width:1px;height:1px;min-width:1px;min-height:1px;border:0}.react-flow__edge-path{stroke:var(--color-on-graphite-3);stroke-width:1.1;transition:stroke var(--dur-base) var(--ease-out)}.edge--dim .react-flow__edge-path{stroke:var(--color-graphite-rule);stroke-width:.8}.edge--out .react-flow__edge-path{stroke:var(--color-accent-lift);stroke-width:1.8}.edge--in .react-flow__edge-path{stroke:var(--color-on-graphite);stroke-width:1.8;stroke-dasharray:4 3}.flow{--xy-controls-button-background-color: var(--color-graphite-2);--xy-controls-button-background-color-hover: var(--color-graphite-3);--xy-controls-button-color: var(--color-on-graphite-2);--xy-controls-button-color-hover: var(--color-on-graphite);--xy-controls-button-border-color: var(--color-graphite-rule);--xy-controls-box-shadow: none}.flow .react-flow__controls{border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-sm);overflow:hidden}.flow .react-flow__controls-button{width:var(--hit);height:var(--hit)}.flow__minimap{border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-sm)}.flow__notice{max-width:46ch;margin-top:var(--space-md);padding:var(--space-xs) var(--space-sm);border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-sm);background:var(--color-graphite-2);color:var(--color-on-graphite-2);font-size:var(--text-sm)}.filters{position:absolute;inset-block-start:var(--space-sm);inset-inline-start:var(--space-sm);z-index:5;display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm) var(--space-sm);border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-md);background:var(--color-graphite-2);max-width:min(28rem,calc(100% - 3 * var(--hit) - 3 * var(--space-lg)))}.filters__group{display:flex;flex-direction:column;gap:var(--space-2xs)}.filters__legend{color:var(--color-on-graphite-3)}.filters__row{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.toggle{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:28px;white-space:nowrap;padding:0 var(--space-xs);border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-xs);background:transparent;color:var(--color-on-graphite-2);font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.toggle:hover:not(:disabled){border-color:var(--color-accent-lift);color:var(--color-on-graphite)}.toggle[data-on]{background:var(--color-accent-wash-dark);border-color:var(--color-accent-lift);color:var(--color-on-graphite)}.toggle:disabled{opacity:.4;cursor:not-allowed}.toggle__count{color:var(--color-on-graphite-3)}.toggle[data-on] .toggle__count{color:var(--color-accent-lift)}.legend{position:absolute;inset-block-end:var(--space-sm);inset-inline-start:var(--space-sm);z-index:5;display:flex;flex-direction:column;gap:var(--space-2xs);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-on-graphite-2)}.legend li{display:flex;align-items:center;gap:var(--space-xs)}.legend__swatch{width:24px;height:12px;border-radius:var(--radius-xs);border:var(--rule-1) solid var(--color-graphite-rule);background:var(--color-graphite-2)}.legend__swatch[data-role=hub]{background:var(--color-accent);border-color:var(--color-accent)}.legend__swatch[data-role=root]{border-color:var(--color-accent-lift);background:var(--color-graphite)}.legend__swatch[data-role=isolated]{border-style:dashed}.inspector{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;background:var(--color-paper);border-inline-start:var(--rule-1) solid var(--color-rule)}.inspector__tabs{display:flex;gap:var(--space-md);padding-inline:var(--space-md);border-bottom:var(--rule-1) solid var(--color-rule);overflow-x:auto}.inspector__tab{position:relative;min-height:var(--tabstrip);padding-block:var(--space-sm);border:0;background:none;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink-3);white-space:nowrap}.inspector__tab:after{content:"";position:absolute;inset-inline:0;inset-block-end:-1px;height:2px;background:transparent}.inspector__tab:hover,.inspector__tab[aria-selected=true]{color:var(--color-ink)}.inspector__tab[aria-selected=true]:after{background:var(--color-accent)}.inspector__body{min-height:0;overflow:auto}.pane{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-lg) var(--space-md) var(--space-2xl)}.pane--flush{padding:0;gap:0;height:100%}.skillhead{display:flex;flex-direction:column;gap:var(--space-xs);align-items:flex-start}.skillhead__id{font-size:var(--text-xl);overflow-wrap:anywhere}.skillhead__meta{color:var(--color-ink-3)}.skillhead__desc{font-size:var(--text-sm);color:var(--color-ink-2);max-width:62ch}.figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:var(--space-sm);border-block:var(--rule-1) solid var(--color-rule);padding-block:var(--space-md)}.figure{display:flex;flex-direction:column;gap:var(--space-3xs);min-width:0}.figure__value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;letter-spacing:var(--tracking-display);color:var(--color-ink)}.links{display:flex;flex-direction:column;gap:var(--space-xs)}.links__title{display:flex;align-items:baseline;gap:var(--space-xs);color:var(--color-ink)}.links__count{color:var(--color-ink-3)}.links__list{display:flex;flex-direction:column}.links__item{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap;padding-block:var(--space-2xs);border-bottom:var(--rule-1) solid var(--color-rule)}.links__go,.idlist__go,.index__go{border:0;background:none;padding:0;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-accent-strong);text-align:start;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:2px;transition:text-decoration-color var(--dur-fast) var(--ease-out)}.links__go:hover,.idlist__go:hover,.index__go:hover{text-decoration-color:currentColor}.links__name{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-ink-2);overflow-wrap:anywhere}.chip--flag{color:var(--color-ink);border-color:var(--color-control-rule)}.links__evidence{margin-inline-start:auto;border:0;background:none;padding:var(--space-3xs) 0;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);white-space:nowrap}.links__evidence:hover{color:var(--color-accent-strong)}.idlist{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-md)}.idlist__more{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink-3)}.index{display:flex;flex-direction:column;max-height:22rem;overflow:auto;border:var(--rule-1) solid var(--color-rule);border-radius:var(--radius-sm)}.index li+li{border-top:var(--rule-1) solid var(--color-rule)}.index__go{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm);width:100%;padding:var(--space-2xs) var(--space-xs);color:var(--color-ink);text-decoration:none}.index__go:hover{background:var(--color-paper-3)}.index__id{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.index__meta{white-space:nowrap}.fields{display:grid;grid-template-columns:max-content minmax(0,1fr);margin:0}.fields__row{display:contents}.fields__key,.fields__value{padding-block:var(--space-2xs);border-bottom:var(--rule-1) solid var(--color-rule)}.fields__key{padding-inline-end:var(--space-md);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3)}.fields__value{margin:0;font-size:var(--text-sm);color:var(--color-ink);overflow-wrap:anywhere}.fields__value code{font-family:var(--font-mono)}.kindstats{display:flex;flex-direction:column}.kindstats li{display:flex;justify-content:space-between;gap:var(--space-md);padding-block:var(--space-2xs);border-bottom:var(--rule-1) solid var(--color-rule);font-size:var(--text-sm)}.kindstats__value{font-family:var(--font-mono);color:var(--color-ink)}.tree{padding-block:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-sm)}.tree__list{display:flex;flex-direction:column}.tree__row{display:flex;align-items:center;gap:var(--space-xs);width:100%;min-height:28px;padding-block:var(--space-3xs);padding-inline-end:var(--space-sm);border:0;background:none;cursor:pointer;text-align:start;color:var(--color-ink-2)}.tree__row:hover{background:var(--color-paper-3)}.tree__row[data-selected=true]{background:var(--color-accent-wash);color:var(--color-ink)}.tree__row--dir{color:var(--color-ink-3)}.tree__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree__size{margin-inline-start:auto;font-size:var(--text-2xs);color:var(--color-ink-3);white-space:nowrap}.tree__chevron{width:8px;height:8px;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;transform:rotate(-45deg);transition:transform var(--dur-fast) var(--ease-out);flex:none}.tree__chevron[data-open=true]{transform:rotate(45deg)}.code{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;background:var(--color-graphite)}.code__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-bottom:var(--rule-1) solid var(--color-graphite-rule);background:var(--color-graphite-2);min-width:0}.code__path{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-on-graphite);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;text-align:start}.code__meta{color:var(--color-on-graphite-3);white-space:nowrap}.code__note{padding:var(--space-md);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-on-graphite-2)}.code__plain,.code__body{margin:0;min-height:0;overflow:auto;padding-block:var(--space-xs)}.code__plain{padding-inline:var(--space-sm);color:var(--color-on-graphite);font-family:var(--font-mono);font-size:var(--text-sm)}.code__body pre.shiki{margin:0;background:transparent!important;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.65}.code__body code{display:grid;counter-reset:line;min-width:max-content}.code__body .line{position:relative;padding-inline:var(--code-gutter) var(--space-md);min-height:1.65em}.code__body .line:before{counter-increment:line;content:counter(line);position:absolute;inset-inline-start:0;width:var(--code-gutter-number);text-align:end;color:var(--color-on-graphite-3);-webkit-user-select:none;user-select:none}.code__body .line.is-active{background:var(--color-accent-wash-dark)}.mention{border:0;padding:0;background:none;font:inherit;color:inherit;cursor:pointer;text-decoration:underline dotted var(--color-accent-lift);text-underline-offset:2px;border-radius:var(--radius-xs)}.mention:hover{background:var(--color-accent-wash-dark);text-decoration-style:solid}.palette{position:fixed;inset:0;z-index:40;display:grid;justify-items:center;align-items:start;padding:clamp(var(--space-md),9vh,var(--space-3xl)) var(--space-md)}.palette__backdrop,.sheet__backdrop{position:fixed;inset:0;border:0;padding:0;background:var(--color-graphite-mask);cursor:default}.palette__box{position:relative;width:min(46rem,100%);max-height:70vh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:var(--rule-1) solid var(--color-rule-2);border-radius:var(--radius-md);background:var(--color-paper);box-shadow:0 18px 48px var(--color-shadow);overflow:hidden}.palette__input{border:0;border-bottom:var(--rule-1) solid var(--color-rule);padding:var(--space-sm) var(--space-md);font:inherit;font-family:var(--font-mono);font-size:var(--text-base);background:var(--color-paper);color:var(--color-ink)}.palette__input:focus-visible{outline:none;box-shadow:inset 0 -2px 0 var(--color-accent)}.palette__input::placeholder,.input::placeholder{color:var(--color-ink-3)}.input:disabled,.palette__input:disabled{opacity:.5;cursor:not-allowed}.palette__list{overflow:auto}.palette__row{display:grid;grid-template-columns:5.5rem minmax(0,auto) minmax(0,1fr);align-items:baseline;gap:var(--space-sm);width:100%;padding:var(--space-2xs) var(--space-md);border:0;background:none;cursor:pointer;text-align:start}.palette__row[data-active]{background:var(--color-accent-wash)}.palette__kind{color:var(--color-ink-3)}.palette__label{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette__hint{font-size:var(--text-xs);color:var(--color-ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette__empty{padding:var(--space-md);font-size:var(--text-sm);color:var(--color-ink-3)}.palette__foot{padding:var(--space-xs) var(--space-md);border-top:var(--rule-1) solid var(--color-rule);background:var(--color-paper-2)}.sheet{position:fixed;inset:0;z-index:40;display:grid;justify-items:center;align-items:start;padding:clamp(var(--space-md),7vh,var(--space-2xl)) var(--space-md)}.sheet__box{position:relative;width:min(56rem,100%);max-height:80vh;display:grid;grid-template-rows:auto auto minmax(0,1fr);border:var(--rule-1) solid var(--color-rule-2);border-radius:var(--radius-md);background:var(--color-paper);box-shadow:0 18px 48px var(--color-shadow);overflow:hidden}.sheet__head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-xs) var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:var(--rule-1) solid var(--color-rule)}.sheet__title{font-size:var(--text-lg)}.sheet__title:focus{outline:none}.sheet__actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2xs)}.sheet__filters{display:flex;flex-wrap:wrap;gap:var(--space-2xs);padding:var(--space-xs) var(--space-md);border-bottom:var(--rule-1) solid var(--color-rule)}.issues{overflow:auto}.issues__item+.issues__item{border-top:var(--rule-1) solid var(--color-rule)}.issues__go{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:var(--space-3xs) var(--space-sm);width:100%;padding:var(--space-xs) var(--space-md);border:0;background:none;cursor:pointer;text-align:start}.issues__go:hover{background:var(--color-paper-3)}.issues__kind{grid-row:span 2}.issues__message{font-size:var(--text-sm);color:var(--color-ink);overflow-wrap:anywhere}.issues__where{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);overflow-wrap:anywhere}.cold{display:grid;place-items:center;min-height:0;overflow:auto;padding:var(--space-xl) var(--space-md) var(--space-2xl);background:var(--color-paper);transition:background var(--dur-base) var(--ease-out)}.cold[data-dragging]{background:var(--color-accent-wash)}.cold__inner{width:min(62rem,100%);display:flex;flex-direction:column;gap:var(--space-md)}.cold__eyebrow{color:var(--color-accent-strong)}.cold__title{font-size:var(--text-display-s);line-height:1.05;max-width:18ch}.cold__lede{font-size:var(--text-lg);color:var(--color-ink-2);max-width:56ch}.cold__actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs);margin-block-start:var(--space-xs)}.cold__error{display:flex;flex-direction:column;gap:var(--space-3xs);padding:var(--space-sm) var(--space-md);border:var(--rule-1) solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-paper);font-size:var(--text-sm);color:var(--color-ink)}.cold__error-hint{color:var(--color-ink-2)}.cold__progress{display:flex;flex-direction:column;gap:var(--space-xs);max-width:34rem}.meter{display:block;height:var(--space-2xs);background:var(--color-rule-2);border-radius:var(--radius-xs);overflow:hidden;position:relative}.meter:after{content:"";position:absolute;inset-block:0;inset-inline:0;background:var(--color-accent);transform-origin:left center;transform:scaleX(var(--meter, 0));transition:transform var(--dur-base) var(--ease-out)}.meter[data-indeterminate]:after{transform:scaleX(.34);animation:meter-slide 1.1s var(--ease-in-out) infinite alternate}@keyframes meter-slide{0%{transform:scaleX(.34) translate(-25%)}to{transform:scaleX(.34) translate(220%)}}.cold__notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:var(--space-lg);margin-block-start:var(--space-lg);padding-block-start:var(--space-lg);border-block-start:var(--rule-1) solid var(--color-rule)}.cold__notes dd{font-size:var(--text-sm);color:var(--color-ink-2);margin-block-start:var(--space-2xs);max-width:46ch}.dropveil{position:fixed;inset:0;z-index:30;display:grid;place-items:center;background:var(--color-accent-wash);border:2px dashed var(--color-accent);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-ink);pointer-events:none}.statusbar{display:flex;align-items:center;gap:var(--space-md);padding-inline:var(--space-md);border-top:var(--rule-1) solid var(--color-rule);background:var(--color-paper-2);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);overflow-x:auto;white-space:nowrap}.statusbar b{color:var(--color-ink);font-weight:500}.statusbar__spacer{margin-inline-start:auto}.statusbar__group--quiet{color:var(--color-ink-3)}.statusbar__button{border:0;background:none;padding:0;cursor:pointer;font:inherit;white-space:nowrap;color:var(--color-accent-strong)}.statusbar__button:hover{text-decoration:underline;text-underline-offset:2px}.toast{position:fixed;inset-inline:0;inset-block-end:calc(var(--shell-bottom) + var(--space-md));z-index:35;display:flex;align-items:center;gap:var(--space-md);width:fit-content;max-width:calc(100% - var(--space-xl));margin-inline:auto;padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md);border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-md);background:var(--color-graphite);color:var(--color-on-graphite-2);font-size:var(--text-sm);box-shadow:0 12px 32px var(--color-shadow);animation:toast-in var(--dur-slow) var(--ease-out)}.toast b{color:var(--color-on-graphite);font-weight:600;overflow-wrap:anywhere}.toast__undo{flex:none;min-height:32px;padding:0 var(--space-sm);border:var(--rule-1) solid var(--color-graphite-rule);border-radius:var(--radius-sm);background:var(--color-graphite-2);color:var(--color-accent-lift);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out)}.toast__undo:hover{border-color:var(--color-accent-lift)}.toast__undo:active{transform:translateY(1px)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.crash{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-lg);background:var(--color-paper-2)}.crash__card{width:100%;max-width:32rem;text-align:center}.crash__title{margin:0;font-size:var(--text-xl);color:var(--color-ink)}.crash__body{margin-block:var(--space-xs) 0;font-size:var(--text-sm);color:var(--color-ink-3)}.crash__detail{margin-block:var(--space-md) 0;padding:var(--space-sm);overflow-x:auto;border-radius:var(--radius-sm);background:var(--color-paper-3);color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);text-align:left}.crash .button{margin-block-start:var(--space-md)}.phonetoggle{display:none}@media(max-width:900px){.main{grid-template-columns:minmax(0,1fr);grid-template-rows:40vh minmax(0,1fr)}.divider{display:none}.inspector{border-inline-start:0;border-block-start:var(--rule-1) solid var(--color-rule)}.flow__minimap{display:none}.flow .react-flow__panel.react-flow__controls{inset-block:auto 1.25rem}.filters{max-width:calc(100% - var(--space-md));padding:var(--space-2xs) var(--space-xs);gap:var(--space-2xs)}.filters__group{flex-direction:row;align-items:center;gap:var(--space-xs)}.filters__legend{flex:none;width:5.5rem}}@media(max-width:600px){.main{grid-template-rows:minmax(0,1fr)}.canvas{display:none}.main[data-graph-open] .canvas{display:block}.main[data-graph-open] .inspector{display:none}.main[data-graph-open]{grid-template-rows:calc(var(--tabstrip) + var(--rule-1)) minmax(0,1fr)}.main[data-graph-open]:before{content:"Map";display:flex;align-items:center;padding-inline:var(--space-md);border-block-end:var(--rule-1) solid var(--color-rule);background:var(--color-paper);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-ink)}.cmdk{padding-inline:var(--space-sm)}.cmdk__icon{display:block}.cmdk__key{display:none}.phonetoggle{position:absolute;display:block;inset-block-start:0;inset-inline-end:0;z-index:20;height:calc(var(--tabstrip) + var(--rule-1));padding:0 var(--space-sm);white-space:nowrap;border:0;border-inline-start:var(--rule-1) solid var(--color-rule);border-block-end:var(--rule-1) solid var(--color-rule);background:var(--color-paper-2);color:var(--color-accent-strong);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;cursor:pointer}.phonetoggle:hover{background:var(--color-paper-3)}.inspector__tabs{padding-inline-end:7.5rem}.topbar__folder{display:none}.topbar{padding-inline:var(--space-sm)}.topbar__dataset,.cmdk__text,.legend{display:none}.statusbar{gap:var(--space-sm)}.statusbar__group--quiet,.statusbar__group:nth-of-type(3){display:none}.palette__row{grid-template-columns:minmax(0,1fr);gap:0}.issues__go{grid-template-columns:minmax(0,1fr);padding-inline:var(--space-sm)}.issues__kind{grid-row:auto}.filters__group{min-width:0}.filters__row{flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}}@media(max-width:420px){.statusbar__group:nth-of-type(2){display:none}}@media(pointer:coarse){:root{--shell-bottom: 44px;--tabstrip: 44px;--hit: 44px}.button,.cmdk,.toggle,.chip--button,.toast__undo{min-height:44px}.cmdk{min-width:44px;justify-content:center}.links__go,.idlist__go,.index__go,.links__evidence,.tree__row,.issues__go,.palette__row{min-height:44px}.statusbar__button{align-self:stretch;padding-inline:var(--space-xs)}.input,.palette__input{font-size:max(1rem,var(--text-base))}}@media(hover:none)and (pointer:coarse){.palette__keys{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
