@font-face{font-family:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/schibsted-grotesk-latin-ext-wght-normal-hsMS0n0O.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:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/schibsted-grotesk-latin-wght-normal-Bb8VGrTG.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{--font-sans: "Schibsted Grotesk Variable", "Schibsted Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--t-micro: .6875rem;--t-xs: .75rem;--t-sm: .8125rem;--t-base: .875rem;--t-md: 1rem;--t-lg: 1.1875rem;--t-xl: 1.625rem;--t-2xl: clamp(1.875rem, 1.2rem + 2.4vw, 3rem);--t-3xl: clamp(2.25rem, 1.3rem + 3.6vw, 4.25rem);--t-display: clamp(2.75rem, 1.2rem + 6.2vw, 6.75rem);--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--s-8: 4rem;--s-9: 6rem;--s-10: 8rem;--r-1: 2px;--r-2: 4px;--r-3: 6px;--r-pill: 999px;--page-max: 1320px;--gutter: clamp(1rem, .4rem + 2.6vw, 2.5rem);--bar-h: 48px;--panel-head-h: 34px;--transport-h: 56px;--dur-1: 90ms;--dur-2: .16s;--dur-3: .26s;--dur-4: .52s;--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1)}:root,:root[data-theme=dark]{--bg: #0f0f0e;--bg-sunk: #0b0b0a;--surface: #141413;--surface-2: #1a1a18;--surface-3: #22221f;--surface-4: #2b2b27;--rule: rgba(236, 232, 220, .075);--rule-2: rgba(236, 232, 220, .13);--rule-3: rgba(236, 232, 220, .24);--ink: #ecebe5;--ink-2: #b2afa5;--ink-3: #8a877e;--ink-4: #6c6a63;--ink-inverse: #10100f;--signal: #d4f24c;--signal-hover: #e1f87a;--signal-ink: #11120c;--signal-text: #d4f24c;--signal-wash: rgba(212, 242, 76, .11);--signal-line: rgba(212, 242, 76, .55);--op-read: #6cc4ff;--op-read-bg: rgba(108, 196, 255, .13);--op-compare: #b9a1ff;--op-compare-bg: rgba(185, 161, 255, .15);--op-write: #ffb547;--op-write-bg: rgba(255, 181, 71, .14);--op-swap: #ff7096;--op-swap-bg: rgba(255, 112, 150, .15);--op-active: #d4f24c;--op-active-bg: rgba(212, 242, 76, .13);--danger: #ff6a55;--danger-bg: rgba(255, 106, 85, .11);--warning: #ffb547;--warning-bg: rgba(255, 181, 71, .11);--success: #a8e46e;--focus: #d4f24c;--shadow-pop: 0 18px 50px -18px rgba(0, 0, 0, .75), 0 0 0 1px var(--rule-2);--grain-opacity: .035;color-scheme:dark}:root[data-theme=light]{--bg: #f2f0e9;--bg-sunk: #ebe8de;--surface: #f8f7f2;--surface-2: #fdfcf8;--surface-3: #e8e5db;--surface-4: #dedbd0;--rule: rgba(28, 26, 20, .085);--rule-2: rgba(28, 26, 20, .15);--rule-3: rgba(28, 26, 20, .3);--ink: #1a1915;--ink-2: #4e4b43;--ink-3: #6b675d;--ink-4: #8d897e;--ink-inverse: #f8f7f2;--signal: #d2ef4a;--signal-hover: #c5e536;--signal-ink: #1a1915;--signal-text: #4a6c00;--signal-wash: rgba(196, 230, 40, .3);--signal-line: rgba(74, 108, 0, .6);--op-read: #0a6aa8;--op-read-bg: rgba(10, 106, 168, .1);--op-compare: #6741c9;--op-compare-bg: rgba(103, 65, 201, .1);--op-write: #a05c00;--op-write-bg: rgba(214, 140, 0, .15);--op-swap: #c2285a;--op-swap-bg: rgba(194, 40, 90, .1);--op-active: #4a6c00;--op-active-bg: rgba(196, 230, 40, .32);--danger: #bf3520;--danger-bg: rgba(191, 53, 32, .08);--warning: #a05c00;--warning-bg: rgba(214, 140, 0, .12);--success: #3f7a12;--focus: #1a1915;--shadow-pop: 0 18px 50px -20px rgba(40, 34, 20, .35), 0 0 0 1px var(--rule-2);--grain-opacity: .05;color-scheme:light}:root{--op-read-solid: color-mix(in srgb, var(--op-read) 16%, var(--surface));--op-compare-solid: color-mix(in srgb, var(--op-compare) 18%, var(--surface));--op-write-solid: color-mix(in srgb, var(--op-write) 16%, var(--surface));--op-swap-solid: color-mix(in srgb, var(--op-swap) 16%, var(--surface));--signal-solid: color-mix(in srgb, var(--signal) 22%, var(--surface))}@media(prefers-reduced-motion:reduce){:root{--dur-1: .01ms;--dur-2: .01ms;--dur-3: .01ms;--dur-4: .01ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root[data-motion=reduced]{--dur-1: .01ms;--dur-2: .01ms;--dur-3: .01ms;--dur-4: .01ms}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body,#root{height:100%}body{font-family:var(--font-sans);font-size:var(--t-base);line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"ss01" on;overflow:hidden}h1,h2,h3,h4{font-weight:500;line-height:1.1;letter-spacing:-.02em;text-wrap:balance}p{text-wrap:pretty}ul,ol{padding:0;list-style:none}a{color:inherit}code,kbd,pre,samp,.mono{font-family:var(--font-mono);font-variant-ligatures:none;font-variant-numeric:tabular-nums}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none;padding:0;text-align:inherit}button:disabled{cursor:not-allowed;opacity:.4}img,svg{display:block}svg{flex-shrink:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-1)}:focus:not(:focus-visible){outline:none}::selection{background:var(--signal);color:var(--signal-ink)}*{scrollbar-width:thin;scrollbar-color:var(--rule-3) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--rule-2);border-radius:var(--r-pill);border:3px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--rule-3);background-clip:content-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:var(--s-2);z-index:100;padding:var(--s-2) var(--s-3);background:var(--signal);color:var(--signal-ink);font-weight:600;text-decoration:none}.skip-link:focus{top:var(--s-2)}.label{font-family:var(--font-mono);font-size:var(--t-micro);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:1.6em;padding:1px 5px;border:1px solid var(--rule-2);border-bottom-width:2px;border-radius:var(--r-2);font-family:var(--font-mono);font-size:10.5px;font-weight:500;line-height:1.4;color:inherit;opacity:.75}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);height:36px;padding:0 var(--s-4);border:1px solid var(--rule-3);border-radius:var(--r-2);background:transparent;color:var(--ink);font-size:var(--t-base);font-weight:500;line-height:1;white-space:nowrap;text-decoration:none;transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out)}.btn:hover:not(:disabled){background:var(--surface-3);border-color:var(--ink-3)}.btn:active:not(:disabled){transform:translateY(1px)}.btn--signal{background:var(--signal);border-color:var(--signal);color:var(--signal-ink);font-weight:600}.btn--signal:hover:not(:disabled){background:var(--signal-hover);border-color:var(--signal-hover)}.btn--ink{background:var(--ink);border-color:var(--ink);color:var(--ink-inverse)}.btn--ink:hover:not(:disabled){background:var(--ink-2);border-color:var(--ink-2)}.btn--quiet{border-color:transparent;color:var(--ink-2)}.btn--quiet:hover:not(:disabled){color:var(--ink);border-color:transparent}.btn--sm{height:28px;padding:0 var(--s-3);font-size:var(--t-sm);gap:6px}.btn--lg{height:46px;padding:0 var(--s-5);font-size:var(--t-md)}.btn--danger:hover:not(:disabled){border-color:var(--op-swap);color:var(--op-swap)}.btn__arrow{transition:transform var(--dur-2) var(--ease-out)}.btn:hover .btn__arrow{transform:translate(3px)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid transparent;border-radius:var(--r-2);color:var(--ink-2);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.icon-btn:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.icon-btn[aria-pressed=true]{border-color:var(--rule-2);color:var(--ink)}.seg{display:inline-flex;align-items:stretch;padding:2px;gap:2px;border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--bg-sunk)}.seg__opt{display:inline-flex;align-items:center;gap:6px;padding:0 var(--s-3);min-height:26px;border-radius:var(--r-2);font-size:var(--t-sm);font-weight:500;color:var(--ink-3);white-space:nowrap;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.seg__opt:hover:not([aria-checked=true]):not([aria-selected=true]){color:var(--ink)}.seg__opt[aria-checked=true],.seg__opt[aria-selected=true]{background:var(--surface-4);color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule-2)}:root[data-theme=light] .seg__opt[aria-checked=true],:root[data-theme=light] .seg__opt[aria-selected=true]{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--rule-2),0 1px 2px #28221414}.mark{background:linear-gradient(var(--signal),var(--signal)) no-repeat 0 55% / 100% 82%;color:var(--signal-ink);padding:0 .08em;margin:0 -.04em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.boot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-4);height:100%;background:var(--bg);color:var(--ink-3)}.boot__ruler{position:relative;width:180px;height:14px;background:repeating-linear-gradient(90deg,var(--rule-3) 0 1px,transparent 1px 12px) 0 100% / 100% 6px no-repeat,linear-gradient(var(--rule-2),var(--rule-2)) 0 100% / 100% 1px no-repeat}.boot__ruler:after{content:"";position:absolute;left:0;bottom:0;width:2px;height:14px;background:var(--signal-text);animation:boot-head 1.6s steps(15,end) infinite}@keyframes boot-head{0%{left:0}to{left:calc(100% - 2px)}}.viz{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;background:radial-gradient(circle at 1px 1px,var(--rule-2) 1px,transparent 0) 0 0 / 20px 20px,var(--bg-sunk)}.viz__scroll{flex:1;overflow:auto;padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-5);justify-content:safe center}.viz--empty{align-items:center;justify-content:safe center;overflow-y:auto}.viz--empty .viz__scroll{width:100%}.viz__section-title{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-3);font-family:var(--font-mono);font-size:var(--t-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.viz__section-title:after{content:"";flex:1;height:1px;background:var(--rule-2)}.entity-grid{display:flex;flex-direction:column;gap:var(--s-4)}.entity{position:relative;border:1px solid var(--rule-2);border-radius:var(--r-2);background:var(--surface);overflow:hidden;transition:border-color var(--dur-2) var(--ease-out)}.entity:hover{border-color:var(--rule-3)}.entity--selected{border-color:var(--signal-line);box-shadow:inset 2px 0 0 var(--signal-text)}.entity__header{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px var(--s-3);padding:7px var(--s-3);border-bottom:1px solid var(--rule);background:var(--surface-2)}.entity__names{font-family:var(--font-mono);font-size:var(--t-sm);font-weight:600;color:var(--ink)}.entity__badge{font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-3)}.entity__badge:before{content:"· ";color:var(--ink-4)}.entity__badge--focus{color:var(--signal-text)}.entity__meta{margin-left:auto;font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-4)}.entity__body{padding:var(--s-4) var(--s-4) var(--s-3);overflow-x:auto}.entity__truncated,.entity__placeholder{font-size:var(--t-xs);color:var(--ink-3);margin-top:var(--s-2)}.entity__truncated{padding:0 var(--s-4) var(--s-3)}.entity__recurrence{padding:var(--s-2) var(--s-4);border-top:1px dashed var(--rule-2);background:var(--surface-2);font-size:var(--t-xs);color:var(--ink-2)}.entity__recurrence:before{content:"rule  ";color:var(--ink-4);white-space:pre}.cells{display:flex;flex-wrap:wrap;row-gap:var(--s-3)}.cells>.cell+.cell{margin-left:-1.5px}.cells>.cell--set+.cell--set{margin-left:6px}.cells--fit{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr))}.cells__empty{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-4)}.cells__empty:before{content:"[ ] "}.cell{position:relative;display:flex;flex-direction:column;align-items:center;flex:1 1 auto;min-width:46px;max-width:78px}.cell__pointers{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;min-height:19px;margin-bottom:5px}.cell__pointer,.chain__pointer{position:relative;padding:0 5px;border:1px solid var(--rule-3);border-radius:var(--r-1);background:var(--surface-2);font-family:var(--font-mono);font-size:10px;font-weight:600;line-height:15px;color:var(--ink-2);white-space:nowrap}.cell__pointer--active,.chain__pointer--active{background:var(--signal);border-color:var(--signal);color:var(--signal-ink)}.cell__pointer--active:after,.chain__pointer--active:after{content:"";position:absolute;left:50%;bottom:-5px;margin-left:-3px;border:3px solid transparent;border-top-color:var(--signal)}.cell__box{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:42px;padding:4px 6px;border:1.5px solid var(--rule-3);border-radius:2px;background:var(--surface);overflow:hidden;transition:background var(--dur-3) var(--ease-out),border-color var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-out)}.cell__value{position:relative;font-family:var(--font-mono);font-size:var(--t-base);font-weight:600;line-height:1.2;color:var(--ink);font-variant-numeric:tabular-nums;animation:cell-land var(--dur-3) var(--ease-out)}@keyframes cell-land{0%{opacity:0;transform:translateY(-6px)}}.cell__index{margin-top:5px;font-family:var(--font-mono);font-size:10px;line-height:1;color:var(--ink-3)}.cell__mag{position:absolute;left:0;right:0;bottom:0;height:var(--mag, 0%);background:var(--ink);opacity:.07;transition:height var(--dur-3) var(--ease-out)}.cell[data-state=read],.cell[data-state=compare],.cell[data-state=write],.cell[data-state=swap]{z-index:1}.cell--read .cell__box{border-color:var(--op-read);background:var(--op-read-bg)}.cell--compare .cell__box{border-color:var(--op-compare);border-width:2px;background:var(--op-compare-bg);transform:translateY(-3px);overflow:visible}.cell--write .cell__box{border-color:var(--op-write);border-width:2.5px;background:var(--op-write-bg)}.cell--swap .cell__box{border-color:var(--op-swap);border-width:2.5px;background:var(--op-swap-bg);transform:translateY(-5px);overflow:visible}.cell--compare .cell__box:after,.cell--swap .cell__box:after{position:absolute;top:1px;right:3px;font-family:var(--font-mono);font-size:9px;font-weight:700;line-height:1}.cell--compare .cell__box:after{content:"↔";color:var(--op-compare)}.cell--swap .cell__box:after{content:"⇄";color:var(--op-swap)}.cell--compare .cell__mag,.cell--swap .cell__mag{background:var(--op, var(--ink));opacity:.2}.cell--compare{--op: var(--op-compare)}.cell--swap{--op: var(--op-swap)}.cell--more .cell__box,li.cell--more{justify-content:center;font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-3)}li.cell--more{align-self:flex-end;min-height:42px;margin-bottom:15px;padding:0 8px;border:1.5px dashed var(--rule-3)}.cell--out-of-range .cell__box{border-color:var(--danger);border-style:dashed;background:var(--danger-bg);color:var(--danger)}.cell--out-of-range .cell__value{color:var(--danger)}.cell--out-of-range .cell__index{color:var(--danger);font-weight:700}.cell--object{min-width:120px;max-width:200px}.cell--object .cell__box{justify-content:flex-start}.obj-preview{display:flex;flex-direction:column;gap:1px;text-align:left;min-width:0}.obj-preview__type{font-size:10px;font-weight:700;color:var(--ink-3)}.obj-preview__field{font-size:var(--t-micro);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.obj-preview__key{color:var(--ink-3);font-weight:400}.obj-preview__more{font-size:10px;color:var(--ink-3);font-style:italic}.cell--role-source .cell__box{outline:1.5px dashed var(--op-read);outline-offset:2px;overflow:visible}.cell--role-target .cell__box{outline:2px solid var(--signal-text);outline-offset:2px;overflow:visible}.cell--role-target .cell__box:before{content:"=";position:absolute;top:-9px;left:-6px;padding:0 2px;background:var(--surface);font-family:var(--font-mono);font-size:10px;font-weight:700;line-height:1.1;color:var(--signal-text)}.stack-cells{display:flex;flex-direction:column;align-items:flex-start}.stack-row{display:flex;align-items:center;gap:var(--s-2)}.stack-row+.stack-row{margin-top:-1.5px}.stack-row__marker{width:44px;font-family:var(--font-mono);font-size:var(--t-micro);font-weight:600;color:var(--signal-text)}.stack-row:not(:first-child){padding-left:calc(44px + var(--s-2))}.stack-row .cell{flex-direction:row;align-items:center;gap:var(--s-2);min-width:0;max-width:none}.stack-row .cell__pointers{order:3;min-height:0;margin:0}.stack-row .cell__box{width:132px;min-height:34px}.stack-row .cell__index{order:2;margin:0;min-width:2ch}.stack-row:first-child .cell__box{border-top-width:2.5px;border-top-color:var(--ink-2)}.queue-ends{display:flex;justify-content:space-between;margin-bottom:var(--s-1);font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.queue-ends span:first-child:before{content:"← "}.queue-ends span:last-child:after{content:" ←"}.grid-body{display:flex;flex-direction:column;width:max-content}.grid-row{display:flex;align-items:center}.grid-row+.grid-row{margin-top:-1.5px}.grid-row__index{width:24px;padding-right:8px;text-align:right;font-family:var(--font-mono);font-size:10px;color:var(--ink-3)}.grid-row .cell{flex:0 0 auto;min-width:42px;max-width:none}.grid-row .cell__pointers{display:none}.grid-row .cell__box{min-height:34px}.grid-row .cell__value{font-size:var(--t-sm)}.grid-row .cell--compare .cell__box,.grid-row .cell--swap .cell__box{transform:none}.pairs{display:flex;flex-direction:column;border-top:1px solid var(--rule);min-width:220px}.pair{display:grid;grid-template-columns:minmax(64px,max-content) minmax(0,1fr);gap:var(--s-4);padding:5px var(--s-2);border-bottom:1px solid var(--rule);border-left:2px solid transparent;transition:background var(--dur-3) var(--ease-out)}.pair--read{border-left-color:var(--op-read);background:var(--op-read-bg)}.pair--write{border-left-color:var(--op-write);background:var(--op-write-bg)}.pair--compare{border-left-color:var(--op-compare);background:var(--op-compare-bg)}.pair__key{font-size:var(--t-sm);color:var(--tk-fn)}.pair__value{font-size:var(--t-sm);font-weight:600;overflow-wrap:anywhere}.call-stack{display:flex;flex-direction:column;gap:4px}.frame{padding:7px 10px;border:1px solid var(--rule-2);border-left:3px solid var(--rule-3);background:var(--surface);transition:border-color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.frame--recursive{border-left-color:var(--op-compare)}.frame--active{border-color:var(--signal-line);border-left-color:var(--signal-text);background:var(--signal-wash)}.frame__header{display:flex;align-items:baseline;gap:var(--s-3)}.frame__name{font-size:var(--t-sm);font-weight:600}.frame__line{font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-3)}.frame__tag{margin-left:auto;font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--signal-text)}.frame__tag--muted{color:var(--ink-4)}.frame__locals{display:flex;flex-wrap:wrap;gap:2px var(--s-4);margin-top:4px}.frame__local{display:flex;gap:5px;font-size:var(--t-xs)}.frame__local dt{color:var(--ink-3)}.frame__return{margin-top:4px;font-size:var(--t-xs);font-weight:600;color:var(--op-write)}.frame__return:before{content:"↩ "}.legend{display:flex;flex-wrap:wrap;gap:4px var(--s-4);padding:8px var(--s-4);border-top:1px solid var(--rule);background:var(--surface);font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-3)}.legend__item{display:inline-flex;align-items:center;gap:6px}.legend__swatch{width:10px;height:10px;border:1.5px solid var(--sw, var(--rule-3));background:var(--sw-bg, transparent)}.legend__item[data-state=read]{--sw: var(--op-read);--sw-bg: var(--op-read-bg)}.legend__item[data-state=compare]{--sw: var(--op-compare);--sw-bg: var(--op-compare-bg)}.legend__item[data-state=write]{--sw: var(--op-write);--sw-bg: var(--op-write-bg)}.legend__item[data-state=swap]{--sw: var(--op-swap);--sw-bg: var(--op-swap-bg)}.legend__item[data-state=now]{--sw: var(--signal);--sw-bg: var(--signal)}.setup-skip{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--rule-2);border-left:3px solid var(--signal-text);background:var(--surface)}.setup-skip__icon{display:inline-flex;flex-shrink:0;color:var(--signal-text)}.setup-skip__text{display:grid;gap:1px;font-size:var(--t-xs);line-height:1.5;color:var(--ink-3)}.setup-skip__text strong{font-size:var(--t-sm);font-weight:600;color:var(--ink)}.setup-skip__action{margin-left:auto;flex-shrink:0}@media(max-width:760px){.setup-skip{flex-wrap:wrap}.setup-skip__action{margin-left:0;width:100%}}.viz-empty,.viz-start{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--s-3);max-width:460px;padding:var(--s-6) var(--s-4);margin:0 auto}.viz-empty__cells{display:flex;margin-bottom:var(--s-3)}.viz-empty__cells li{display:flex;flex-direction:column;align-items:center;gap:4px}.viz-empty__cells li+li{margin-left:-1.5px}.viz-empty__cells span{width:34px;height:34px;border:1.5px solid var(--rule-3);background:var(--surface);animation:empty-scan 3s steps(1,end) infinite;animation-delay:calc(var(--i) * .4s)}.viz-empty__cells em{font-style:normal;font-family:var(--font-mono);font-size:10px;color:var(--ink-3)}@keyframes empty-scan{0%{border-color:var(--op-read);background:var(--op-read-bg)}13%{border-color:var(--rule-3);background:var(--surface)}}.viz-empty__title{font-size:var(--t-lg);font-weight:600;letter-spacing:-.02em;color:var(--ink)}.viz-empty__body{font-size:var(--t-sm);line-height:1.6;color:var(--ink-3)}.viz-empty__body code{font-size:.92em;color:var(--ink-2)}.viz-empty__note{font-size:var(--t-xs);color:var(--ink-4)}.viz-tracing .boot__ruler{margin-bottom:var(--s-3)}.viz-start__list{display:flex;flex-direction:column;width:100%;margin:var(--s-2) 0 var(--s-3);border-top:1px solid var(--rule-2);text-align:left}.viz-start__item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px var(--s-3);width:100%;padding:10px var(--s-3);border-bottom:1px solid var(--rule);background:var(--surface);transition:background var(--dur-2) var(--ease-out)}.viz-start__item:hover{background:var(--surface-3)}.viz-start__title{font-size:var(--t-base);font-weight:600}.viz-start__blurb{grid-column:1;font-size:var(--t-xs);color:var(--ink-3)}.viz-start__go{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:var(--t-micro);color:var(--signal-text);opacity:0;transition:opacity var(--dur-2) var(--ease-out)}.viz-start__item:hover .viz-start__go,.viz-start__item:focus-visible .viz-start__go{opacity:1}.viz-boundary{margin:var(--s-3);padding:var(--s-3);border:1px dashed var(--rule-3);background:var(--surface)}.viz-boundary__title{font-weight:600;margin:0 0 var(--s-1)}.viz-boundary__detail{font-size:var(--t-xs);color:var(--ink-3);margin:0}.error-visual{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-4);border:1px solid color-mix(in srgb,var(--danger) 45%,transparent);border-left:3px solid var(--danger);background:var(--danger-bg)}.error-visual__header{display:flex;gap:var(--s-3);align-items:flex-start}.error-visual__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;background:var(--danger);color:var(--bg);font-family:var(--font-mono);font-weight:700;font-size:var(--t-sm)}.error-visual__title{font-size:var(--t-base);font-weight:600;letter-spacing:-.01em;color:var(--danger)}.error-visual__subtitle{margin-top:2px;font-size:var(--t-xs);color:var(--ink-2);overflow-wrap:anywhere}.error-visual__caption{font-size:var(--t-sm);margin-bottom:var(--s-3)}.error-visual__hint{border-top:1px solid color-mix(in srgb,var(--danger) 25%,transparent);padding-top:var(--s-3)}.error-visual__hint h4{font-family:var(--font-mono);font-size:var(--t-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-bottom:var(--s-1)}.error-visual__hint p{font-size:var(--t-sm);line-height:1.6}.error-visual__hint code{padding:1px 4px;font-size:.92em;background:var(--surface-3)}.chain{display:flex;align-items:flex-end;gap:0;flex-wrap:nowrap;width:max-content}.chain__item{display:flex;align-items:flex-end}.chain__item--tail{align-self:flex-end;padding:0 0 12px 4px}.chain__slot{display:flex;flex-direction:column;align-items:center;gap:6px}.chain__pointers{display:flex;gap:2px;min-height:17px;white-space:nowrap}.chain__node{position:relative;display:flex;align-items:stretch;min-width:64px;height:40px;padding:0;border:1.5px solid var(--rule-3);border-radius:2px;background:var(--surface);color:inherit;cursor:pointer;font:inherit;transition:background var(--dur-3) var(--ease-out),border-color var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-out)}.chain__node:after{content:"";width:16px;flex-shrink:0;border-left:1px solid var(--rule-3);background:radial-gradient(circle at center,var(--ink-2) 2.5px,transparent 3px)}.chain__node:hover{border-color:var(--ink-3)}.chain__value{flex:1;display:flex;align-items:center;justify-content:center;padding:0 10px;font-size:var(--t-base);font-weight:600}.chain__node.cell--read{border-color:var(--op-read);background:var(--op-read-bg)}.chain__node.cell--write{border-color:var(--op-write);border-width:2.5px;background:var(--op-write-bg)}.chain__node.cell--compare{border-color:var(--op-compare);border-width:2px;background:var(--op-compare-bg);transform:translateY(-3px)}.chain__node.cell--swap{border-color:var(--op-swap);border-width:2.5px;background:var(--op-swap-bg);transform:translateY(-5px)}.chain__node--target{border-color:var(--ink-3)}.chain__link{padding:0 6px 11px;font-family:var(--font-mono);font-size:15px;color:var(--ink-3)}.chain__null{font-size:var(--t-xs);color:var(--ink-4)}.chain__null:before{content:"→ ";color:var(--ink-3)}.chain__more{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-3)}.chain__cycle{display:flex;align-items:center;gap:5px;margin:var(--s-2) 0 0;font-size:var(--t-xs);color:var(--ink-2)}.chain-wrap{position:relative;overflow-x:auto;isolation:isolate}.chain-edges{position:absolute;top:0;left:0;height:100%;overflow:visible;pointer-events:none}.chain-edge__line{fill:none;stroke:var(--ink-3);stroke-width:1.5}.chain-edge__head{fill:var(--ink-3)}.tree-body{display:flex;flex-direction:column;align-items:safe center}.tree-svg{max-width:100%;height:auto;overflow:visible}.tree-level__rule{stroke:var(--rule-2);stroke-width:1;stroke-dasharray:2 5}.tree-level__label{font-family:var(--font-mono);font-size:9px;fill:var(--ink-3)}.tree-edge{stroke:var(--rule-3);stroke-width:1.5}.tree-edge--path{stroke:var(--signal-text);stroke-width:2.5}.tree-edge__side{font-family:var(--font-mono);font-size:8px;font-weight:700;fill:var(--ink-3);paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round;pointer-events:none}.tree-stub__link{stroke:var(--rule-3);stroke-width:1.2;stroke-dasharray:2 3}.tree-stub__label{font-family:var(--font-mono);font-size:11px;fill:var(--ink-4);pointer-events:none}.tree-node{cursor:pointer;transition:opacity var(--dur-3) var(--ease-out)}.tree-node--out,.tree-edge-group--dim{opacity:.3}.tree-node--out:hover{opacity:.75}.tree-edge-group--dim{transition:opacity var(--dur-3) var(--ease-out)}.tree-node__halo{fill:var(--signal);opacity:.2;animation:halo 2s steps(2,end) infinite}@keyframes halo{50%{opacity:.08}}.tree-node__circle{fill:var(--surface);stroke:var(--ink-3);stroke-width:1.5;transition:fill var(--dur-3) var(--ease-out),stroke var(--dur-3) var(--ease-out)}.tree-node:hover .tree-node__circle{stroke:var(--ink)}.tree-node:focus-visible{outline:none}.tree-node:focus-visible .tree-node__circle{stroke:var(--focus);stroke-width:3}.tree-node__label{font-family:var(--font-mono);font-size:12px;font-weight:600;fill:var(--ink);pointer-events:none}.tree-node__pointer{font-family:var(--font-mono);font-size:9.5px;font-weight:600;fill:var(--ink-3);pointer-events:none}.tree-node--visited .tree-node__circle{stroke:var(--op-read);fill:var(--op-read-solid)}.tree-node--current .tree-node__circle{stroke:var(--signal-text);stroke-width:2.5;fill:var(--signal)}.tree-node--current .tree-node__label{fill:var(--signal-ink)}.tree-node--current .tree-node__pointer{fill:var(--signal-text);font-weight:700}.tree-node--selected .tree-node__circle{stroke:var(--ink);stroke-width:2.5;stroke-dasharray:3 2}.tree-return__path{fill:none;stroke:var(--op-write);stroke-width:1.2;stroke-linecap:round;stroke-dasharray:3 3;opacity:.45;transition:opacity var(--dur-3) var(--ease-out)}.tree-return__head{fill:var(--op-write);opacity:.45}.tree-return__pill{fill:var(--surface);opacity:.9}.tree-return__label{font-family:var(--font-mono);font-size:9px;font-weight:600;fill:var(--op-write);opacity:.75;pointer-events:none}.tree-return--fresh .tree-return__path,.tree-return--fresh .tree-return__head{opacity:.9}.tree-return--fresh .tree-return__label{opacity:1}.tree-result__pill{fill:var(--surface);stroke:color-mix(in srgb,var(--op-write) 45%,transparent);stroke-width:.8}.tree-result__label{font-family:var(--font-mono);font-size:8.5px;font-weight:600;fill:var(--op-write);pointer-events:none}.tree-result--fresh .tree-result__pill{stroke:var(--op-write)}.tree-legend{display:flex;align-items:center;justify-content:center;gap:var(--s-2);margin-top:var(--s-2);font-size:var(--t-xs);color:var(--ink-3)}.tree-legend__swatch{width:18px;height:0;border-top:1.5px dashed var(--op-write)}.entity--graph .entity__body{padding:0}.graph{display:flex;flex-direction:column;gap:var(--s-2)}.graph__canvas{width:100%;height:auto;display:block;margin-inline:auto;touch-action:none}.graph__line{stroke:var(--rule-3);stroke-width:1.5;transition:stroke var(--dur-2) var(--ease-out),stroke-width var(--dur-2) var(--ease-out)}.graph__arrow{fill:var(--rule-3)}.graph__edge--traversed .graph__line{stroke:var(--signal-text);stroke-width:3}.graph__arrow--traversed{fill:var(--signal-text)}.graph__edge--path .graph__line{stroke:var(--ink);stroke-width:3.5}.graph__arrow--path{fill:var(--ink)}.graph__edge--tree .graph__line{stroke:var(--op-compare);stroke-width:2}.graph__arrow--tree{fill:var(--op-compare)}.graph__weight{fill:var(--ink-2);font-size:11px;font-family:var(--font-mono)}.graph__weight-bg{fill:var(--surface);stroke:var(--rule-2);stroke-width:1}.graph__node{cursor:grab}.graph__node--dragging{cursor:grabbing}.graph__disc{fill:var(--surface-2);stroke:var(--ink-3);stroke-width:1.5;transition:fill var(--dur-2) var(--ease-out),stroke var(--dur-2) var(--ease-out)}.graph__label{fill:var(--ink);font-size:12px;font-weight:600;font-family:var(--font-mono);pointer-events:none;-webkit-user-select:none;user-select:none}.graph__node--visited .graph__disc{fill:var(--op-read-solid);stroke:var(--op-read)}.graph__node--component .graph__disc{fill:var(--op-compare-solid);stroke:var(--op-compare)}.graph__node--frontier .graph__disc{fill:var(--op-write-solid);stroke:var(--op-write)}.graph__node--path .graph__disc{fill:var(--surface);stroke:var(--ink);stroke-width:3}.graph__node--stack .graph__disc{fill:var(--op-swap-solid);stroke:var(--op-swap)}.graph__node--neighbor .graph__disc{fill:var(--op-write-solid);stroke:var(--op-write);stroke-width:2.5}.graph__node--source .graph__disc,.graph__node--target .graph__disc{fill:var(--surface-2);stroke:var(--ink);stroke-width:2;stroke-dasharray:4 3}.graph__node--current .graph__disc{fill:var(--signal);stroke:var(--signal-text);stroke-width:2.5}.graph__node--current .graph__label{fill:var(--signal-ink)}.graph__legend{display:flex;flex-wrap:wrap;gap:4px var(--s-4);margin:0;padding:var(--s-2) var(--s-4) var(--s-3);font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-3)}.graph__legend-item{display:flex;align-items:center;gap:6px}.graph__swatch{width:10px;height:10px;border-radius:50%;background:var(--surface-2);border:1.5px solid var(--ink-3)}.graph__swatch.graph__node--visited{background:var(--op-read-bg);border-color:var(--op-read)}.graph__swatch.graph__node--component{background:var(--op-compare-bg);border-color:var(--op-compare)}.graph__swatch.graph__node--frontier{background:var(--op-write-bg);border-color:var(--op-write)}.graph__swatch.graph__node--path{background:var(--surface);border-color:var(--ink);border-width:2px}.graph__swatch.graph__node--stack{background:var(--op-swap-bg);border-color:var(--op-swap)}.graph__swatch.graph__node--neighbor{background:var(--op-write-bg);border-color:var(--op-write)}.graph__swatch.graph__node--source,.graph__swatch.graph__node--target{border-color:var(--ink);border-style:dashed}.graph__swatch.graph__node--current{background:var(--signal);border-color:var(--signal-text)}.lab{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--rule-2);border-top:2px solid var(--signal-text);background:var(--surface)}.lab__row{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center}.lab__group{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.lab__group--end{margin-left:auto}.lab__label{font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.lab__label strong{color:var(--ink)}.lab__input{width:80px;height:28px;padding:0 var(--s-2);border:1px solid var(--rule-3);border-radius:var(--r-2);background:var(--bg-sunk);color:var(--ink);font-size:var(--t-sm)}.lab__selection{padding-left:var(--s-3);border-left:1px solid var(--rule-2)}.lab__hint{font-size:var(--t-xs);color:var(--ink-3);margin:0}.nested-list{display:flex;flex-direction:column;gap:3px}.nested-list__row{display:flex;align-items:baseline;gap:var(--s-2)}.nested-list__row--plain{gap:0}.nested-list__index{flex:0 0 auto;min-width:1.6em;color:var(--ink-4)}.nested-list__more{color:var(--ink-3);font-style:italic}.nested-pairs{display:flex;flex-direction:column;gap:3px}.nested-pairs__row{display:flex;align-items:baseline;gap:var(--s-2)}.nested-pairs__key{flex:0 0 auto;color:var(--ink-3)}.nested-pairs__value{margin:0;min-width:0}.nested-value{color:var(--ink);overflow-wrap:anywhere}.nested-flat{margin:0;color:var(--ink-2);overflow-wrap:anywhere}.nested-container{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.nested-container__toggle{display:inline-flex;align-items:center;gap:4px;color:var(--tk-fn);font-size:inherit;font-weight:600}.nested-container__toggle:hover{color:var(--ink)}.nested-container__chevron{font-size:9px;color:var(--ink-3)}.nested-container__body{padding-left:var(--s-3);margin-left:2px;border-left:1px solid var(--rule-2)}.narration{display:flex;align-items:baseline;gap:var(--s-3);min-height:40px;padding:9px var(--s-4);border-bottom:1px solid var(--rule);background:var(--surface);box-shadow:inset 3px 0 0 var(--tone, var(--rule-3));flex-shrink:0}.narration[data-tone=swap]{--tone: var(--op-swap)}.narration[data-tone=compare]{--tone: var(--op-compare)}.narration[data-tone=write]{--tone: var(--op-write)}.narration[data-tone=read]{--tone: var(--op-read)}.narration[data-tone=call]{--tone: var(--signal-text)}.narration[data-tone=return]{--tone: var(--op-write)}.narration__line{flex-shrink:0;padding:0 6px;background:var(--signal);color:var(--signal-ink);font-size:var(--t-micro);font-weight:700;line-height:18px}.narration__text{font-size:var(--t-base);line-height:1.45;color:var(--ink);min-width:0}.code-token{padding:0 4px;border-radius:var(--r-1);background:var(--surface-3);font-family:var(--font-mono);font-size:.9em;white-space:nowrap}.watch{display:flex;flex-wrap:wrap;gap:var(--s-2)}.watch__tile{display:flex;flex-direction:column;gap:4px;flex:0 1 172px;min-width:140px;padding:10px 12px 12px;border:1px solid var(--rule-2);background:var(--surface);transition:box-shadow var(--dur-2) var(--ease-out)}.watch__tile.is-touched{box-shadow:inset 0 2px 0 var(--signal-text)}.watch__head{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2)}.watch__name{font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch__unpin{width:18px;height:18px;color:var(--ink-3);font-size:14px;line-height:1}.watch__unpin:hover{color:var(--ink)}.watch__value{font-size:26px;font-weight:600;letter-spacing:-.02em;line-height:1.1;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;animation:cell-land var(--dur-3) var(--ease-out)}.watch__value.is-missing{font-size:var(--t-sm);font-weight:400;color:var(--ink-3)}.spark{flex-shrink:0;overflow:visible}.spark__line{fill:none;stroke:var(--ink-2);stroke-width:1.2;stroke-linejoin:round}.spark__line--future{stroke:var(--rule-3)}.spark__dot{fill:var(--signal-text)}.pair--new{border-left-color:var(--signal-text);background:var(--signal-wash);animation:pair-in var(--dur-4) var(--ease-out)}@keyframes pair-in{0%{opacity:0;transform:translate(-6px)}}.pair--changed{border-left-color:var(--op-write)}.pair__tag{margin-left:var(--s-2);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--signal-text)}.pair__was{color:var(--ink-3);font-weight:400;text-decoration:line-through;text-decoration-color:var(--rule-3)}.pair__was span{text-decoration:none;display:inline-block;margin:0 2px}.cell--new .cell__box{border-color:var(--signal-text);background:var(--signal-wash)}.view-toggle{display:inline-flex;padding:1px;border:1px solid var(--rule-2);border-radius:var(--r-2);background:var(--bg-sunk)}.view-toggle button{padding:1px 7px;border-radius:var(--r-1);font-family:var(--font-mono);font-size:10px;color:var(--ink-3)}.view-toggle button[aria-checked=true]{background:var(--surface-4);color:var(--ink)}:root[data-theme=light] .view-toggle button[aria-checked=true]{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--rule-2)}.chart{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(10px,46px);justify-content:start;align-items:end;gap:4px;min-width:max-content;padding-top:var(--s-2)}.chart__bar{display:flex;flex-direction:column;align-items:stretch;min-width:0}.chart__plot{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;height:150px}.chart__value{margin-bottom:3px;font-size:11px;font-weight:600;text-align:center;color:var(--ink-2);white-space:nowrap;animation:cell-land var(--dur-3) var(--ease-out)}.chart[data-dense] .chart__value{display:none}.chart__col{min-height:2px;border-top:2px solid var(--ink-3);background:var(--surface-3);transition:height var(--dur-3) var(--ease-out),background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.chart__index{margin-top:4px;font-size:10px;text-align:center;color:var(--ink-3)}.chart__pointers{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:19px;margin-top:4px}.chart__pointers .cell__pointer--active:after{bottom:auto;top:-5px;border-top-color:transparent;border-bottom-color:var(--signal)}.chart__bar--read .chart__col{background:var(--op-read-bg);border-top-color:var(--op-read)}.chart__bar--compare .chart__col{background:var(--op-compare);border-top-color:var(--op-compare)}.chart__bar--write .chart__col{background:var(--op-write);border-top-color:var(--op-write)}.chart__bar--swap .chart__col{background:var(--op-swap);border-top-color:var(--op-swap)}.chart__bar--compare .chart__value{color:var(--op-compare)}.chart__bar--swap .chart__value{color:var(--op-swap)}.chart__bar--write .chart__value{color:var(--op-write)}.chart__bar--role-source .chart__col{outline:1.5px dashed var(--op-read);outline-offset:2px}.chart__bar--role-target .chart__col{outline:2px solid var(--signal-text);outline-offset:2px}.chart__more{align-self:end;padding-bottom:46px;font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-3)}.cell--tone-0 .cell__box{background:var(--bg-sunk)}.cell--tone-0 .cell__value{color:var(--ink-3)}.cell--tone-1 .cell__box{background:color-mix(in srgb,#6f8fa6 30%,var(--surface))}.cell--tone-2 .cell__box{background:color-mix(in srgb,#4fa894 28%,var(--surface))}.cell--tone-3 .cell__box{background:color-mix(in srgb,#c98b58 30%,var(--surface))}.cell--tone-4 .cell__box{background:color-mix(in srgb,#9a9358 32%,var(--surface))}.cell--heat:not([data-state=read]):not([data-state=write]):not([data-state=compare]):not([data-state=swap]) .cell__box{background:color-mix(in srgb,var(--ink) calc(var(--heat) * 24%),var(--surface))}@media(prefers-reduced-motion:reduce){.graph__line,.graph__disc,.cell__value{transition:none;animation:none}}.viz__section-head{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-3)}.viz__section-head .viz__section-title{flex:1;min-width:0;margin-bottom:0}.viz-mode{display:inline-flex;align-items:center;gap:5px;flex:none;height:24px;padding:0 7px;border:1px solid var(--rule-2);border-radius:var(--r-2);background:transparent;color:var(--ink-3);font-family:var(--font-mono);font-size:var(--t-micro);line-height:1;cursor:pointer;transition:color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.viz-mode:hover{color:var(--ink);border-color:var(--ink-3);background:var(--surface-3)}.viz-mode:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.viz-mode[aria-pressed=true]{color:var(--ink);border-color:var(--signal-line);background:var(--signal-wash)}.viz-mode__icon{display:inline-flex}@media(max-width:1100px){.viz-mode__text{display:none}}.rtree__zoom{flex:none;height:22px;padding:0 7px;font-family:var(--font-mono);font-size:var(--t-micro)}.rtree__scroll{display:flex;justify-content:safe center;max-width:100%}.rtree__scroll--wide{justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.rtree{overflow:visible}.rtree-call__path{fill:none;stroke:var(--rule-3);stroke-width:1.5}.rtree-call__head{fill:var(--rule-3)}.rtree-call--live .rtree-call__path{stroke:var(--signal-text);stroke-width:2.2}.rtree-call--live .rtree-call__head{fill:var(--signal-text)}.rcall__box{fill:var(--surface);stroke:var(--rule-3);stroke-width:1.3;transition:fill var(--dur-3) var(--ease-out),stroke var(--dur-3) var(--ease-out)}.rcall__label{font-family:var(--font-mono);font-size:11px;font-weight:600;fill:var(--ink);pointer-events:none}.rcall__answer{font-family:var(--font-mono);font-size:9.5px;font-weight:600;fill:var(--op-write);text-anchor:middle;pointer-events:none}.rcall__answer--waiting{fill:var(--ink-4);font-weight:500}.rcall__halo{fill:var(--signal);opacity:.2;animation:halo 2s steps(2,end) infinite}.rcall--active .rcall__box{stroke:var(--signal-text);stroke-width:2.2;fill:var(--signal)}.rcall--active .rcall__label,.rcall--active .rcall__answer{fill:var(--signal-ink)}.rcall--running .rcall__box{stroke:var(--op-read);fill:var(--op-read-solid)}.rcall--returned .rcall__box{stroke:color-mix(in srgb,var(--op-write) 55%,transparent)}.rcall--base .rcall__box{stroke:var(--op-write);stroke-width:1.8;fill:var(--op-write-solid)}.rcall--cache-hit .rcall__box{stroke:var(--op-compare);stroke-width:1.6;stroke-dasharray:4 2.5;fill:var(--op-compare-solid)}.rcall--cache-hit .rcall__answer{fill:var(--op-compare)}.rcall--unfinished .rcall__box{stroke:var(--rule-2);stroke-dasharray:3 3}.rcall--unfinished .rcall__label{fill:var(--ink-3)}.rcall--new{animation:rcall-in var(--dur-3) var(--ease-out)}@keyframes rcall-in{0%{opacity:0}}.rtree-return__path{fill:none;stroke:var(--op-write);stroke-width:1.2;stroke-linecap:round;stroke-dasharray:3 3;opacity:.5;transition:opacity var(--dur-3) var(--ease-out)}.rtree-return__head{fill:var(--op-write);opacity:.5}.rtree-return__pill{fill:var(--surface);opacity:.92}.rtree-return__label{font-family:var(--font-mono);font-size:9px;font-weight:600;fill:var(--op-write);opacity:.8;pointer-events:none}.rtree-return--fresh .rtree-return__path,.rtree-return--fresh .rtree-return__head,.rtree-return--fresh .rtree-return__label{opacity:1}.rtree-return--cached .rtree-return__path,.rtree-return--cached .rtree-return__head{stroke:var(--op-compare);fill:var(--op-compare)}.rtree-return--cached .rtree-return__path{fill:none}.rtree-return--cached .rtree-return__label{fill:var(--op-compare)}.rtree-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--s-2) var(--s-4);margin-top:var(--s-2);font-size:var(--t-xs);color:var(--ink-3)}.rtree-legend__item{display:inline-flex;align-items:center;gap:6px}.rtree-legend__swatch{width:18px;height:0;flex:none;border-top:1.5px solid var(--rule-3)}.rtree-legend__swatch--return{border-top:1.5px dashed var(--op-write)}.rtree-legend__swatch--base{width:12px;height:10px;border:1.6px solid var(--op-write);border-radius:3px;background:var(--op-write-solid)}.rtree-legend__swatch--memo{width:12px;height:10px;border:1.4px dashed var(--op-compare);border-radius:3px;background:var(--op-compare-solid)}@media(prefers-reduced-motion:reduce){.rcall--new,.rcall__halo{animation:none}.rcall__box,.rtree-return__path,.rtree-return__head{transition:none}}.app{display:flex;flex-direction:column;height:100%;background:var(--bg)}.app>.workspace{flex:1 1 auto}.bar{position:relative;z-index:20;display:flex;align-items:center;gap:var(--s-3);min-height:var(--bar-h);padding:0 var(--s-3) 0 var(--s-2);border-bottom:1px solid var(--rule-2);background:var(--surface);flex-shrink:0}.bar__home{display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 10px 0 6px;border-radius:var(--r-2);flex-shrink:0;transition:background var(--dur-2) var(--ease-out)}.bar__home:hover{background:var(--surface-3)}.bar__home .brand-mark{transition:transform var(--dur-3) var(--ease-out)}.bar__home:hover .brand-mark{transform:translate(-2px)}.bar__name{font-size:var(--t-base);font-weight:650;letter-spacing:-.02em;white-space:nowrap}.bar__name-dim{font-weight:450;color:var(--ink-3)}.bar__rule{width:1px;height:22px;background:var(--rule-2)}.bar__group{display:flex;align-items:center;gap:var(--s-2);min-width:0}.bar__group--end{margin-left:auto}.bar__picker{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 6px 0 10px;min-width:190px;border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--bg-sunk);color:var(--ink-3);font-size:var(--t-sm);transition:border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.bar__picker:hover{border-color:var(--rule-3);color:var(--ink)}.bar__picker-text{flex:1;text-align:left}.bar__detail{display:flex;align-items:center;gap:var(--s-2)}.bar__run{height:34px;min-width:108px;margin-left:var(--s-1);padding:0 var(--s-3) 0 var(--s-4)}.bar__run-kbd{border-color:#11120c40;opacity:.7}.bar__run.is-busy:disabled{opacity:1;cursor:progress;background:var(--surface-3);border-color:var(--rule-2);color:var(--ink)}.bar__run-spin{width:12px;height:12px;border:2px solid var(--rule-3);border-top-color:var(--signal-text);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.motion-icon__ring{transform-origin:center;animation:spin 6s linear infinite}.motion-icon--reduced .motion-icon__ring{animation:none;stroke-dasharray:none;opacity:.4}@media(max-width:1320px){.bar__detail-label,.bar__name-dim{display:none}}@media(max-width:1180px){.bar__picker{min-width:0}.bar__picker-kbd{display:none}}.picker{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;justify-content:center;align-items:flex-start;padding:10vh var(--s-4) var(--s-4)}.picker__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--bg) 72%,transparent);animation:fade var(--dur-2) var(--ease-out)}@keyframes fade{0%{opacity:0}}.picker__dialog{position:relative;display:flex;flex-direction:column;width:min(640px,100%);max-height:76vh;border:1px solid var(--rule-3);border-radius:var(--r-3);background:var(--surface);box-shadow:var(--shadow-pop);overflow:hidden;animation:pop var(--dur-3) var(--ease-out)}@keyframes pop{0%{opacity:0;transform:translateY(-8px) scale(.99)}}.picker__search{display:flex;align-items:center;gap:var(--s-3);padding:0 var(--s-4);border-bottom:1px solid var(--rule);color:var(--ink-3)}.picker__search input{flex:1;min-width:0;height:52px;border:none;background:transparent;font-size:var(--t-md);color:var(--ink)}.picker__search input:focus{outline:none}.picker__search input::placeholder{color:var(--ink-3)}.picker__filters{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-2) var(--s-4);border-bottom:1px solid var(--rule);background:var(--surface-2)}.picker__count{font-size:var(--t-micro);color:var(--ink-3)}.picker__list{flex:1;overflow-y:auto;padding:var(--s-2) 0;overscroll-behavior:contain}.picker__group+.picker__group{margin-top:var(--s-2)}.picker__group-title{padding:var(--s-2) var(--s-4) var(--s-1)}.picker__item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px var(--s-3);padding:7px var(--s-4);border-left:2px solid transparent;cursor:pointer}.picker__item[aria-selected=true]{background:var(--surface-3);border-left-color:var(--signal-text)}.picker__item-title{font-size:var(--t-base);font-weight:600}.picker__item-blurb{grid-column:1;font-size:var(--t-xs);color:var(--ink-3)}.picker__item-go{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:var(--t-micro);color:var(--signal-text);visibility:hidden}.picker__item[aria-selected=true] .picker__item-go{visibility:visible}.picker__empty{padding:var(--s-5) var(--s-4);font-size:var(--t-sm);color:var(--ink-3)}.picker__foot{display:flex;gap:var(--s-4);padding:var(--s-2) var(--s-4);border-top:1px solid var(--rule);font-size:var(--t-micro);color:var(--ink-3)}.picker__foot span{display:inline-flex;align-items:center;gap:4px}.banner{display:flex;align-items:baseline;gap:var(--s-3);padding:var(--s-2) var(--s-4);border-bottom:1px solid var(--rule-2);font-size:var(--t-sm);line-height:1.5;flex-shrink:0}.banner__tag{flex-shrink:0;padding:0 6px;font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:.06em;border:1px solid currentColor;border-radius:var(--r-1)}.banner--error{background:var(--danger-bg);color:var(--danger)}.banner--error span:last-child{color:var(--ink)}.banner--warning{background:var(--warning-bg);color:var(--warning)}.banner--warning span:last-child{color:var(--ink)}.workspace{display:grid;grid-template-columns:var(--panel-code, 460px) auto minmax(320px,1fr) auto var(--panel-insights, 400px);min-height:0;overflow:hidden;background:var(--bg)}.panel{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:var(--surface)}.panel__head{display:flex;align-items:center;gap:var(--s-2);height:var(--panel-head-h);padding:0 var(--s-3);border-bottom:1px solid var(--rule);background:var(--surface);flex-shrink:0}.panel__no{font-size:10px;font-weight:600;color:var(--ink-4)}.panel__title{font-family:var(--font-mono);font-size:var(--t-micro);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.panel__meta{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-size:var(--t-micro);color:var(--ink-3);white-space:nowrap;overflow:hidden}.panel__meta strong{color:var(--ink);font-weight:600}.panel__dim{color:var(--ink-3)}.panel__sep{width:1px;height:10px;margin:0 6px;background:var(--rule-2)}.divider{position:relative;width:1px;background:var(--rule-2);cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;z-index:2}.divider:before{content:"";position:absolute;top:0;right:-5px;bottom:0;left:-5px}.divider__grip{position:absolute;top:50%;left:-1px;width:3px;height:0;background:var(--signal-text);transform:translateY(-50%);transition:height var(--dur-3) var(--ease-out)}.divider:hover .divider__grip,.divider:focus-visible .divider__grip{height:72px}.divider:hover{background:var(--rule-3)}.divider:focus-visible{outline:2px solid var(--focus);outline-offset:0}.editor{flex:1;min-height:0;display:flex;flex-direction:column}.editor__surface{flex:1;min-height:0}.editor--loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-3);height:100%;color:var(--ink-3);font-size:var(--t-sm);background:var(--surface)}.ctabs{display:flex;align-items:stretch;height:32px;flex-shrink:0;border-bottom:1px solid var(--rule);background:var(--bg-sunk)}.ctabs__list{display:flex;min-width:0;overflow-x:auto;scrollbar-width:none}.ctabs__list::-webkit-scrollbar{display:none}.ctabs__tab{position:relative;display:flex;align-items:center;flex-shrink:0;max-width:200px;border-right:1px solid var(--rule);color:var(--ink-3);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.ctabs__tab:hover{background:var(--surface-2);color:var(--ink-2)}.ctabs__tab[data-active]{margin-bottom:-1px;background:var(--surface);color:var(--ink)}.ctabs__tab[data-active]:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--signal-text)}.ctabs__select{display:flex;align-items:center;gap:7px;min-width:0;height:100%;padding:0 4px 0 12px;color:inherit}.ctabs__select:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.ctabs__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--t-xs)}.ctabs__mark{flex-shrink:0;width:6px;height:6px;border-radius:1px;background:var(--rule-3)}.ctabs__tab[data-active] .ctabs__mark{background:var(--ink-3)}.ctabs__tab[data-status=tracing] .ctabs__mark{background:var(--signal-text);animation:cursor-blink 1s steps(1,end) infinite}.ctabs__tab[data-status=failed] .ctabs__mark{width:7px;height:7px;border-radius:50%;background:var(--danger)}.ctabs__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:20px;height:20px;margin-right:6px;padding:0 3px;border-radius:var(--r-1);color:var(--ink-3);font-family:var(--font-mono);font-size:10px;white-space:nowrap;opacity:0;transition:opacity var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.ctabs__tab:hover .ctabs__close,.ctabs__tab[data-active] .ctabs__close,.ctabs__close[data-armed]{opacity:1}.ctabs__close:hover{background:var(--surface-3);color:var(--ink)}.ctabs__close[data-armed]{background:var(--danger-bg);color:var(--danger);font-weight:600}.ctabs__new{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;color:var(--ink-3);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.ctabs__new:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.ctabs__new:disabled{opacity:.4;cursor:not-allowed}.ctabs__new:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}@media(hover:none){.ctabs__close{opacity:1}}.open-in{position:fixed;z-index:40;top:calc(var(--bar-h) + var(--panel-head-h) + 32px + var(--s-3));left:var(--s-3);width:min(380px,calc(100vw - 2 * var(--s-3)));padding:var(--s-4);border:1px solid var(--rule-2);border-top:2px solid var(--signal-text);border-radius:var(--r-3);background:var(--surface-2);box-shadow:0 24px 48px -20px #0000008c;animation:open-in-rise var(--dur-3) var(--ease-out)}:root[data-theme=light] .open-in{box-shadow:0 24px 48px -24px #3c321e4d}@keyframes open-in-rise{0%{opacity:0;transform:translateY(-6px)}}.open-in__title{font-size:var(--t-base);color:var(--ink-2)}.open-in__title strong{color:var(--ink);font-weight:600}.open-in__body{margin-top:4px;font-size:var(--t-sm);line-height:1.45;color:var(--ink-3)}.open-in__body code{font-size:.92em;color:var(--ink);white-space:nowrap}.open-in__actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-3)}@media(max-width:760px){.open-in{top:auto;left:var(--s-3);right:var(--s-3);bottom:calc(var(--transport-h) + var(--s-3));width:auto}.ctabs__tab{max-width:160px}}.editor-line--current{background:var(--signal-wash);box-shadow:inset 2px 0 0 var(--signal-text)}.editor-inline-values{color:var(--ink-3)!important;font-style:italic;opacity:.9}.editor-glyph--current:before{content:"▶";display:block;margin-left:4px;font-size:9px;color:var(--signal-text)}.editor-line--error{background:var(--danger-bg);box-shadow:inset 2px 0 0 var(--danger)}.editor-glyph--error:before{content:"!";display:block;margin-left:5px;font-family:var(--font-mono);font-weight:700;font-size:11px;color:var(--danger)}.editor-heat{width:3px!important;margin-left:3px;background:var(--op-write)}.editor-heat--low{opacity:.25}.editor-heat--mid{opacity:.55}.editor-heat--high{opacity:1}.entrypoint{flex:none;border-bottom:1px solid var(--rule-2);background:var(--surface-2);font-size:var(--t-sm)}.entrypoint__head{display:flex;align-items:center;gap:var(--s-3);width:100%;padding:var(--s-2) var(--s-3);transition:background var(--dur-2) var(--ease-out)}.entrypoint__head:hover{background:var(--surface-3)}.entrypoint__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border:1px solid var(--rule-2);border-radius:var(--r-2);color:var(--signal-text)}.entrypoint__headline{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px var(--s-2);flex:1;min-width:0}.entrypoint__badge{flex:none;font-family:var(--font-mono);font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink)}.entrypoint__text{min-width:0;color:var(--ink-3);font-size:var(--t-xs);line-height:1.5}.entrypoint__text code{color:var(--ink)}.entrypoint__chevron{display:inline-flex;flex:none;color:var(--ink-3);transition:transform var(--dur-3) var(--ease-out)}.entrypoint--closed .entrypoint__chevron{transform:rotate(-90deg)}.entrypoint__body{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-1) var(--s-3) var(--s-3);max-height:46vh;overflow-y:auto}.entrypoint__choice{align-self:flex-start}.entrypoint__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s-2) var(--s-3)}.entrypoint__field{display:flex;flex-direction:column;gap:4px;min-width:0}.entrypoint__label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2);font-size:var(--t-xs)}.entrypoint__param{font-weight:600;color:var(--ink)}.entrypoint__type{flex:none;font-size:var(--t-micro);color:var(--ink-3)}.entrypoint__input{width:100%;height:32px;padding:0 var(--s-2);border:1px solid var(--rule-3);border-radius:var(--r-2);background:var(--surface);color:var(--ink);font-size:var(--t-xs);transition:border-color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.entrypoint__input:focus{border-color:var(--ink-2);outline-offset:1px}.entrypoint__input:disabled{color:var(--ink-3);background:transparent;border-style:dashed;cursor:default}.entrypoint__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}.entrypoint__hint{margin:0;color:var(--ink-3);font-size:var(--t-xs)}.entrypoint__run{flex:none;height:28px;padding:0 var(--s-3);border-radius:var(--r-2);background:var(--signal);color:var(--signal-ink);font-size:var(--t-xs);font-weight:600;transition:background var(--dur-2) var(--ease-out)}.entrypoint__run:hover:not(:disabled){background:var(--signal-hover)}.entrypoint__run--pending{animation:nudge var(--dur-4) var(--ease-out)}@keyframes nudge{0%{transform:scale(.95)}}.entrypoint__choice.entrypoint__choice{display:inline-flex;padding:2px;gap:2px;border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--bg-sunk)}.entrypoint__option{padding:0 var(--s-3);min-height:24px;border-radius:var(--r-2);font-size:var(--t-xs);font-weight:500;color:var(--ink-3);white-space:nowrap}.entrypoint__option:hover:not(.entrypoint__option--on){color:var(--ink)}.entrypoint__option--on{background:var(--surface-4);color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule-2)}:root[data-theme=light] .entrypoint__option--on{background:var(--surface-2)}.insights{flex:1;overflow-y:auto;padding:0 var(--s-4) var(--s-5);display:flex;flex-direction:column;gap:var(--s-4)}.insights--empty{justify-content:center;gap:var(--s-3);padding:var(--s-5)}.insights__promise{display:flex;flex-direction:column;border-top:1px solid var(--rule)}.insights__promise li{display:grid;grid-template-columns:2.6em minmax(0,1fr);gap:var(--s-2);padding:9px 0;border-bottom:1px solid var(--rule);font-size:var(--t-sm);color:var(--ink-3)}.insights__promise .mono{color:var(--ink-4);font-size:var(--t-xs)}.insights__none{font-size:var(--t-xs);color:var(--ink-3)}.insights__section{display:flex;flex-direction:column;gap:var(--s-2)}.insights__title{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:var(--s-2);margin-inline:calc(var(--s-4) * -1);padding:8px var(--s-4) 6px;background:var(--surface);border-bottom:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--t-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.now{display:flex;flex-direction:column;gap:var(--s-2);margin:0 calc(var(--s-4) * -1);padding:var(--s-4);border-bottom:1px solid var(--rule);background:var(--surface-2)}.now__where{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.now__badge{display:inline-flex;align-items:baseline;gap:5px;padding:1px 7px;background:var(--signal);color:var(--signal-ink);font-size:var(--t-sm);font-weight:700}.now__badge-key{font-size:var(--t-micro);font-weight:500;opacity:.7}.now__fn{font-size:var(--t-xs);color:var(--ink-2)}.now__action{font-size:var(--t-md);font-weight:500;letter-spacing:-.01em;line-height:1.35;color:var(--tone, var(--ink))}.now__action[data-tone=swap]{--tone: var(--op-swap)}.now__action[data-tone=compare]{--tone: var(--op-compare)}.now__action[data-tone=write]{--tone: var(--op-write)}.now__action[data-tone=read]{--tone: var(--op-read)}.now__action[data-tone=call]{--tone: var(--signal-text)}.now__action[data-tone=return]{--tone: var(--op-write)}.output{margin:0;padding:var(--s-2) var(--s-3);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--bg-sunk);font-size:var(--t-xs);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;max-height:160px;overflow:auto}.output__upcoming{color:var(--ink-3)}.output__result{display:flex;align-items:baseline;gap:var(--s-2);flex-wrap:wrap;margin:var(--s-1) 0 0}.output__result-label{font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.output__result-value{padding:1px 6px;border:1px solid var(--signal-line);background:var(--signal-wash);font-size:var(--t-xs);font-weight:600}.variables{display:flex;flex-direction:column}.variable{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px var(--s-3);padding:4px 6px;margin:0 -6px;border-left:2px solid transparent;border-bottom:1px solid var(--rule);font-size:var(--t-sm);transition:background var(--dur-2) var(--ease-out)}.variable--touched{border-left-color:var(--ink-3);background:var(--surface-2)}.variable--hovered{background:var(--surface-3)}.variable--changed{border-left-color:var(--op-write);animation:changed .9s var(--ease-out)}@keyframes changed{0%{background:var(--op-write-bg)}}.variable__changed-badge{font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--op-write)}.variable__name{color:var(--ink-2)}.variable__value{display:flex;align-items:center;justify-content:flex-end;gap:6px;overflow-wrap:anywhere}.variable__value-text{display:inline-flex;align-items:baseline;gap:6px;font-weight:600;color:var(--kind, var(--ink))}.variable__value[data-kind=number]{--kind: var(--tk-num)}.variable__value[data-kind=string]{--kind: var(--tk-str)}.variable__value[data-kind=bool]{--kind: var(--tk-num)}.variable__value[data-kind=none]{--kind: var(--ink-4)}.variable__value[data-kind=ref] .variable__value-text{padding:0 5px;border:1px solid var(--rule-3);border-radius:var(--r-1);color:var(--tk-fn)}.variable__value[data-kind=ref] .variable__value-text:before{content:"→";color:var(--ink-4);font-weight:400}.variable__pin{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--r-1);color:var(--ink-3);opacity:0;transition:opacity var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.variable:hover .variable__pin,.variable:focus-within .variable__pin,.variable__pin.is-on{opacity:1}.variable__pin:hover{color:var(--ink)}.variable__pin.is-on{color:var(--signal-text)}@media(hover:none){.variable__pin{opacity:1}}.variable__expand{padding:0 3px;color:var(--ink-3);font-size:9px;line-height:1}.variable__expand:hover{color:var(--ink)}.variable__links,.variable__full{flex:1 0 100%;margin:2px 0;padding:var(--s-2);border-left:1px solid var(--rule-3);background:var(--bg-sunk);font-size:var(--t-xs);font-weight:400;color:var(--ink-2);overflow-wrap:anywhere}.variable__links{display:flex;flex-wrap:wrap;gap:4px var(--s-3)}.variable__link{display:inline-flex;align-items:center;gap:5px}.variable__link-field{color:var(--ink-3)}.variable__link--own{flex:1 0 100%;padding-bottom:3px;border-bottom:1px dashed var(--rule-2)}.variable__link-value{font-weight:600;color:var(--ink)}.variable__link-unknown{font-style:italic;color:var(--ink-3)}.globals{margin-top:var(--s-2)}.globals summary{display:flex;align-items:center;gap:6px;padding:4px 0;font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);cursor:pointer;list-style:none}.globals summary::-webkit-details-marker{display:none}.globals summary:before{content:"";border-left:4px solid currentColor;border-top:3.5px solid transparent;border-bottom:3.5px solid transparent;transition:transform var(--dur-2) var(--ease-out)}.globals[open] summary:before{transform:rotate(90deg)}.globals summary:hover{color:var(--ink)}.scope summary{text-transform:none;letter-spacing:0}.scope__count{margin-left:auto;color:var(--ink-4)}.variable--ended .variable__name,.variable--ended .variable__value{opacity:.6}.variable__note{flex:1 0 100%;font-family:var(--font-mono);font-size:10px;color:var(--ink-4)}.counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:var(--s-3) var(--s-4)}.counter{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:3px var(--s-2);font-size:var(--t-xs);min-width:0}.counter__label{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.counter__value{font-weight:600}.counter__total{color:var(--ink-3);font-weight:400}.counter__bar{grid-column:1 / -1;height:2px;background:var(--rule-2);position:relative}.counter__bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--fill, 0%);background:var(--op, var(--ink-2));transition:width var(--dur-2) var(--ease-out)}.complexity{display:flex;flex-direction:column;gap:var(--s-3)}.complexity__figures{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3)}.complexity__figure{padding:var(--s-2) 0;border-top:2px solid var(--ink)}.complexity__figure+.complexity__figure{border-top-color:var(--rule-3)}.complexity__label{display:block;font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.complexity__value{display:block;margin-top:4px;font-size:var(--t-xl);font-weight:600;letter-spacing:-.03em;line-height:1.1}.complexity__confidence{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-family:var(--font-mono);font-size:var(--t-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em}.complexity__confidence:before{content:"";width:6px;height:6px;background:currentColor}.complexity__confidence--high{color:var(--success)}.complexity__confidence--medium{color:var(--warning)}.complexity__confidence--low{color:var(--ink-3)}.complexity__rationale,.complexity__bottleneck,.complexity__note{font-size:var(--t-xs);color:var(--ink-2);line-height:1.6}.complexity__rationale{padding-left:var(--s-3);border-left:2px solid var(--rule-3);font-family:var(--font-mono)}.complexity__note{color:var(--warning)}.hotspots{display:flex;flex-direction:column;gap:var(--s-2)}.hotspot{display:flex;flex-direction:column;gap:3px}.hotspot__head{display:flex;justify-content:space-between;font-size:var(--t-xs)}.hotspot__line{color:var(--ink-3)}.hotspot__count{color:var(--op-write);font-weight:600}.hotspot__snippet{font-size:var(--t-xs);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hotspot__bar{height:2px;background:var(--rule-2);position:relative}.hotspot__bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--fill, 0%);background:var(--op-write)}.ai__provider{margin-left:auto;text-transform:none;letter-spacing:0;color:var(--ink-4)}.ai__questions{display:flex;flex-wrap:wrap;gap:4px}.ai__question{padding:4px 9px;border:1px solid var(--rule-2);border-radius:var(--r-2);font-size:var(--t-xs);color:var(--ink-2);transition:border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.ai__question:hover:not(:disabled){border-color:var(--ink-3);color:var(--ink)}.ai__ask{display:flex;gap:4px}.ai__ask input{flex:1;min-width:0;height:30px;padding:0 var(--s-2);border:1px solid var(--rule-3);border-radius:var(--r-2);background:var(--bg-sunk);font-size:var(--t-xs)}.ai__ask button{height:30px;padding:0 var(--s-3);border:1px solid var(--rule-3);border-radius:var(--r-2);font-size:var(--t-xs)}.ai__pending{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-3)}.ai__result{padding:var(--s-3);border:1px solid var(--rule-2);border-left:2px solid var(--ink-2);background:var(--surface-2)}.ai__algorithm{font-weight:650;margin-bottom:var(--s-1)}.ai__text{display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--t-sm);line-height:1.6}.ai__text ul{padding-left:var(--s-4);list-style:disc;display:flex;flex-direction:column;gap:var(--s-1)}.ai__text code{font-size:.92em;padding:1px 4px;background:var(--surface-3)}.ai__footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--t-micro);color:var(--ink-3)}.ai__failure{font-size:var(--t-xs);color:var(--ink-3);padding:var(--s-2);border-left:2px solid var(--rule-3);background:var(--surface-2)}.transport{display:flex;align-items:center;gap:var(--s-4);height:var(--transport-h);padding:0 var(--s-3);border-top:1px solid var(--rule-2);background:var(--surface);flex-shrink:0}.transport__buttons{display:flex;align-items:center;gap:2px}.transport__button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-2);color:var(--ink-2);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.transport__button:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.transport__play{display:inline-flex;align-items:center;justify-content:center;width:40px;height:36px;margin:0 4px;border-radius:var(--r-2);background:var(--ink);color:var(--ink-inverse);transition:background var(--dur-2) var(--ease-out)}.transport__play:hover:not(:disabled){background:var(--ink-2)}.transport__timeline{flex:1;min-width:0}.strip{position:relative;display:flex;align-items:center;flex:1;min-width:120px;height:30px;--strip-thumb: 14px;--strip-rail: 6px}.strip__rail{position:absolute;left:0;right:0;top:50%;height:var(--strip-rail);transform:translateY(-50%);border-radius:999px;background:var(--rule-2);overflow:hidden;pointer-events:none;transition:height var(--dur-2) var(--ease-out)}.strip:hover .strip__rail,.strip:focus-within .strip__rail{--strip-rail: 8px}.strip__fill{height:100%;border-radius:inherit;background:var(--signal)}.transport[data-empty=true] .strip__fill{background:transparent}.strip__mark{position:absolute;top:0;bottom:0;z-index:3;width:12px;margin-left:-6px;background:transparent;cursor:pointer}.strip__mark:before{content:"";position:absolute;left:50%;top:50%;width:2px;height:14px;margin-left:-1px;border-radius:1px;background:var(--ink-2);transform:translateY(-50%);transition:background var(--dur-2) var(--ease-out),height var(--dur-2) var(--ease-out)}.strip__mark:hover:before,.strip__mark:focus-visible:before{height:18px;background:var(--ink)}.strip__mark:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-radius:var(--r-1)}.strip__error{position:absolute;top:50%;right:0;z-index:3;width:5px;height:var(--strip-rail);border-radius:999px;background:var(--danger);transform:translateY(-50%);pointer-events:none;transition:height var(--dur-2) var(--ease-out)}.strip input[type=range]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;margin:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.strip input[type=range]::-webkit-slider-runnable-track{height:100%;background:transparent}.strip input[type=range]::-moz-range-track{height:100%;background:transparent}.strip input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;box-sizing:border-box;width:var(--strip-thumb);height:var(--strip-thumb);margin-top:calc((30px - var(--strip-thumb)) / 2);border:2px solid var(--surface);border-radius:50%;background:var(--ink);box-shadow:0 1px 4px #00000059;transition:transform var(--dur-1) var(--ease-out)}.strip input[type=range]::-moz-range-thumb{box-sizing:border-box;width:var(--strip-thumb);height:var(--strip-thumb);border:2px solid var(--surface);border-radius:50%;background:var(--ink);box-shadow:0 1px 4px #00000059;transition:transform var(--dur-1) var(--ease-out)}.strip input[type=range]:hover::-webkit-slider-thumb,.strip input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15)}.strip input[type=range]:hover::-moz-range-thumb,.strip input[type=range]:active::-moz-range-thumb{transform:scale(1.15)}.strip input[type=range]:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:999px}.strip input[type=range]:disabled{cursor:default}.strip input[type=range]:disabled::-webkit-slider-thumb{opacity:0}.strip input[type=range]:disabled::-moz-range-thumb{opacity:0}@media(prefers-reduced-motion:reduce){.strip__rail,.strip__error,.strip__mark:before,.strip input[type=range]::-webkit-slider-thumb,.strip input[type=range]::-moz-range-thumb{transition:none}}.transport__readout{display:flex;align-items:baseline;gap:var(--s-3);min-width:112px;font-size:var(--t-xs);color:var(--ink-2);white-space:nowrap}.transport__readout strong{color:var(--ink);font-weight:600}.transport__dim{color:var(--ink-3)}.transport__line{padding:0 5px;background:var(--signal);color:var(--signal-ink);font-weight:600}.transport__speed select{height:30px;padding:0 24px 0 8px;border:1px solid var(--rule-3);border-radius:var(--r-2);background:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%) calc(100% - 13px) 50% / 4px 4px no-repeat,linear-gradient(-45deg,transparent 50%,var(--ink-3) 50%) calc(100% - 9px) 50% / 4px 4px no-repeat,var(--surface);font-family:var(--font-mono);font-size:var(--t-xs);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.tabs{display:none}.tabs__tab{display:inline-flex;align-items:baseline;justify-content:center;gap:6px;padding:10px var(--s-4);border-bottom:2px solid transparent;font-size:var(--t-sm);font-weight:500;color:var(--ink-3)}.tabs__no{font-size:10px;color:var(--ink-4)}.tabs__tab[aria-current=true]{color:var(--ink);border-bottom-color:var(--signal-text)}@media(max-width:1080px){.workspace{grid-template-columns:minmax(0,1.6fr) auto minmax(260px,.9fr)}.divider{display:none}.workspace>.divider:last-of-type{display:block;cursor:default;pointer-events:none}.workspace>.divider:last-of-type .divider__grip{display:none}.panel--code{display:none}.tabs{display:flex;justify-content:center;gap:var(--s-2);border-bottom:1px solid var(--rule-2);background:var(--surface);flex-shrink:0}.tabs__tab[data-tab=insights]{display:none}.workspace[data-mobile-tab=code] .panel--code{display:flex}.workspace[data-mobile-tab=code] .panel--visual,.bar__detail{display:none}}@media(max-width:760px){.workspace{grid-template-columns:minmax(0,1fr)}.workspace>.divider,.workspace>.divider:last-of-type{display:none}.tabs__tab[data-tab=insights]{display:inline-flex}.tabs{justify-content:stretch;gap:0}.tabs__tab{flex:1;padding-inline:var(--s-2)}.panel{display:none}.workspace[data-mobile-tab=code] .panel--code,.workspace[data-mobile-tab=visual] .panel--visual,.workspace[data-mobile-tab=insights] .panel--insights{display:flex}.bar{flex-wrap:wrap;gap:var(--s-2);padding:var(--s-2)}.bar__name,.bar__rule{display:none}.bar__group{flex:1}.bar__group--end{justify-content:flex-end}.bar__group:not(.bar__group--end){order:3;flex-basis:100%}.bar__group:not(.bar__group--end) .seg{flex:1}.bar__group:not(.bar__group--end) .seg__opt{flex:1;justify-content:center}.bar__picker{flex:0 0 auto}.bar__run{min-width:0}.bar__run-kbd{display:none}.transport{flex-wrap:wrap;height:auto;gap:var(--s-2) var(--s-3);padding:var(--s-2) var(--s-3) calc(var(--s-2) + env(safe-area-inset-bottom))}.transport__timeline{order:-1;flex-basis:100%}.transport__readout{min-width:0;margin-left:auto}.transport__button,.transport__play{width:40px;height:40px}.viz__scroll{padding:var(--s-4) var(--s-3)}}@media(max-width:420px){.bar__picker-text,.transport__speed{display:none}}.bar__download.is-failed{gap:6px;width:auto;padding-inline:8px;border-color:var(--op-swap, #dc3c3c);color:var(--op-swap, #dc3c3c)}.bar__download-size{font-size:var(--t-micro);color:inherit}.site{position:relative;height:100%;overflow-x:hidden;overflow-y:auto;background:var(--bg);scroll-behavior:smooth;font-size:var(--t-md)}@media(min-width:900px){.site:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}}.site-main{position:relative;max-width:var(--page-max);margin:0 auto}@media(min-width:1100px){.site-main{border-left:1px solid var(--rule);border-right:1px solid var(--rule)}}.site-main>section,.site-main [id]{scroll-margin-top:72px}@media(scripting:enabled){[data-reveal]:not([data-reveal=stagger]):not([data-revealed]){opacity:0}[data-reveal=up]:not([data-revealed]){transform:translateY(18px)}[data-reveal=line]:not([data-revealed]){opacity:1;transform:scaleX(0)}[data-reveal=stagger]:not([data-revealed])>*{opacity:0;transform:translateY(12px)}}[data-reveal][data-revealed]{transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}[data-reveal=stagger][data-revealed]>*{transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}[data-reveal=stagger][data-revealed]>:nth-child(2){transition-delay:60ms}[data-reveal=stagger][data-revealed]>:nth-child(3){transition-delay:.12s}[data-reveal=stagger][data-revealed]>:nth-child(4){transition-delay:.18s}[data-reveal=stagger][data-revealed]>:nth-child(5){transition-delay:.24s}[data-reveal=stagger][data-revealed]>:nth-child(6){transition-delay:.3s}[data-reveal=stagger][data-revealed]>:nth-child(7){transition-delay:.36s}[data-reveal=stagger][data-revealed]>:nth-child(n+8){transition-delay:.42s}[data-reveal=line]{transform-origin:left center}[data-paused=true] *,[data-paused=true] *:before,[data-paused=true] *:after{animation-play-state:paused!important}.nav{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid transparent;transition:border-color var(--dur-3) var(--ease-out)}.nav--scrolled{border-bottom-color:var(--rule-2)}.nav__inner{display:flex;align-items:center;gap:var(--s-5);max-width:var(--page-max);height:60px;margin:0 auto;padding:0 var(--gutter)}.nav__brand{display:inline-flex;text-decoration:none;flex-shrink:0}.brand{display:inline-flex;align-items:center;gap:10px}.brand__name{font-size:15px;font-weight:650;letter-spacing:-.02em;white-space:nowrap}.brand__accent{font-weight:450;color:var(--ink-3)}.nav__links{display:flex;align-items:center;gap:var(--s-1);margin-left:auto}.nav__links a{display:inline-flex;align-items:baseline;gap:6px;padding:6px 10px;border-radius:var(--r-2);font-size:var(--t-sm);font-weight:500;color:var(--ink-2);text-decoration:none;transition:color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.nav__links a:hover{color:var(--ink);background:var(--surface-3)}.nav__links a[aria-current=true]{color:var(--ink)}.nav__links a[aria-current=true] .nav__no{color:var(--signal-ink);background:var(--signal)}.nav__no{font-size:10px;padding:0 3px;color:var(--ink-4);transition:color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.nav__guides{margin-left:var(--s-2)}.nav__actions{display:flex;align-items:center;gap:var(--s-2);margin-left:var(--s-2)}.nav__textlink{font-size:var(--t-sm);font-weight:500;color:var(--ink-2);text-decoration:none;padding:6px 10px}.nav__textlink:hover{color:var(--ink)}.nav__burger,.nav__menu-cta{display:none}.nav__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:color-mix(in srgb,var(--bg) 60%,transparent)}@media(max-width:1080px){.nav__links{display:none}.nav__burger{display:inline-flex}.nav__actions{margin-left:auto}.nav--open .nav__links{position:fixed;top:60px;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:var(--s-2) var(--gutter) var(--s-5);background:var(--bg);border-bottom:1px solid var(--rule-2)}.nav--open .nav__links a{padding:14px 0;border-bottom:1px solid var(--rule);border-radius:0;font-size:var(--t-md)}.nav--open .nav__links a:hover{background:none}.nav--open .nav__guides{margin-left:0}.nav--open .nav__menu-cta{display:inline-flex;margin-top:var(--s-4);height:44px}}@media(max-width:520px){.nav__cta,.nav__textlink,.brand__accent{display:none}}.theme-icon{transition:transform var(--dur-4) var(--ease-out)}[data-theme-icon=light]{transform:rotate(180deg)}.hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s-5);padding:clamp(2.5rem,1rem + 5vw,5.5rem) var(--gutter) var(--s-8)}.hero__intro{grid-column:1 / 9;animation:rise .9s var(--ease-out) both}.hero__kicker{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);margin-bottom:var(--s-5)}.hero__live{width:8px;height:14px;background:var(--signal-text);animation:cursor-blink 1.1s steps(1,end) infinite}@keyframes cursor-blink{50%{opacity:0}}.hero__langs{font-size:var(--t-micro);color:var(--ink-3);padding-left:var(--s-3);border-left:1px solid var(--rule-2)}.hero__title{font-size:clamp(2.5rem,1.1rem + 5vw,5.5rem);font-weight:500;line-height:.94;letter-spacing:-.048em;max-width:11.5ch}.hero__mark{background-size:0% 82%;animation:mark-sweep .76s steps(8,end) .48s forwards;color:inherit}@keyframes mark-sweep{to{background-size:100% 82%;color:var(--signal-ink)}}.hero__side{grid-column:9 / 13;align-self:end;display:flex;flex-direction:column;gap:var(--s-5);padding-bottom:.4rem;animation:rise .9s var(--ease-out) .12s both}.hero__lede{font-size:var(--t-lg);line-height:1.5;color:var(--ink-2)}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--s-2)}.hero__facts{display:flex;flex-wrap:wrap;gap:4px 0;font-size:var(--t-micro);color:var(--ink-3)}.hero__facts li:not(:last-child):after{content:"/";margin:0 10px;color:var(--ink-4)}.demo-figure{border:1px solid var(--rule-2);background:var(--surface)}.demo-figure__frame{padding:var(--s-2);background:var(--bg-sunk)}.demo-figure__note{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-3);align-items:baseline;padding:var(--s-3) var(--s-4);border-top:1px solid var(--rule);font-size:var(--t-sm);color:var(--ink-3)}.demo-figure__text{min-width:0}.demo-figure__link{margin-left:auto;font-weight:500;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule-3);transition:border-color var(--dur-2) var(--ease-out)}.demo-figure__link:hover{border-bottom-color:var(--signal-text)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}@media(max-width:1100px){.hero__intro,.hero__side{grid-column:1 / -1}.hero__side{margin-top:var(--s-6);max-width:640px}}.demo-figure{position:relative;isolation:isolate}.demo-figure:before{content:"";position:absolute;top:12%;right:6%;bottom:-4%;left:6%;z-index:-1;background:radial-gradient(50% 55% at 50% 55%,color-mix(in srgb,var(--signal) 30%,transparent),transparent 72%);filter:blur(48px);opacity:.5;pointer-events:none}:root[data-theme=light] .demo-figure:before{opacity:.55}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()){.demo-figure{transform-origin:50% 100%;animation:demo-lift linear both;animation-timeline:view();animation-range:entry 0% cover 42%}}}@keyframes demo-lift{0%{opacity:.25;transform:perspective(1500px) rotateX(20deg) translateY(56px) scale(.93)}to{opacity:1;transform:none}}.tdemo{position:relative;border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--surface);overflow:hidden;box-shadow:0 40px 80px -50px #0009}:root[data-theme=light] .tdemo{box-shadow:0 40px 80px -55px #3c321e59}.tdemo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;padding:1px;border-radius:inherit;background:radial-gradient(320px circle at var(--mx, 50%) var(--my, 0%),var(--signal-text),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--dur-4) var(--ease-out);pointer-events:none}@media(hover:hover){.tdemo:hover:after{opacity:.9}}.tdemo__head{display:flex;align-items:stretch;gap:var(--s-4);height:40px;padding:0 var(--s-4) 0 0;border-bottom:1px solid var(--rule);background:var(--surface-2);font-size:var(--t-xs)}.tdemo__tabs{display:flex;min-width:0;overflow-x:auto;scrollbar-width:none}.tdemo__tabs::-webkit-scrollbar{display:none}.tdemo__tab{position:relative;display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:0 var(--s-4);border-right:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-3);transition:color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.tdemo__tab:hover{color:var(--ink)}.tdemo__tab[aria-pressed=true]{background:var(--surface);color:var(--ink)}.tdemo__tab:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--signal-text);transform-origin:left center;transform:scaleX(var(--progress, 0));transition:transform var(--beat, .26s) linear}.tdemo__tab:not([aria-pressed=true]):after{transform:scaleX(0);transition:none}.tdemo__tab:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.tdemo__ext{color:inherit}.tdemo__step{display:inline-flex;align-items:center;margin-left:auto;flex-shrink:0;color:var(--ink-3)}.tdemo__step strong{margin-left:.5ch;color:var(--ink);font-weight:600}.tdemo__of{color:var(--ink-3)}.tdemo__status{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);min-width:80px}.tdemo__status:before{content:"";width:7px;height:7px;background:var(--ink-4)}.tdemo__status[data-state=running]:before{background:var(--signal-text);animation:cursor-blink 1s steps(1,end) infinite}.tdemo__status[data-state=done]:before{background:var(--success)}.tdemo__body{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1.25fr) minmax(190px,.62fr);min-height:352px}.tdemo__src{position:relative;padding:var(--s-4) 0;border-right:1px solid var(--rule);overflow-x:auto}.tdemo__beam{position:absolute;top:var(--s-4);left:0;right:0;height:1.8em;background:var(--signal-wash);box-shadow:inset 2px 0 0 var(--signal-text);transform:translateY(calc((var(--line, 1) - 1) * 1.8em));transition:transform var(--beat, .26s) var(--ease-in-out);pointer-events:none}.tdemo__src .listing__line.is-now{background:transparent}.tdemo__src .listing__line.is-now:before{display:none}.tdemo__canvas{display:flex;flex-direction:column;justify-content:center;gap:var(--s-4);padding:var(--s-5) var(--s-5) var(--s-4);background:radial-gradient(circle at 1px 1px,var(--rule-2) 1px,transparent 0) 0 0 / 18px 18px,var(--bg-sunk);min-width:0}.tdemo__caption,.afig__caption{display:flex;align-items:baseline;gap:var(--s-2);font-size:var(--t-xs);color:var(--ink-3)}.tdemo__caption .mono,.afig__caption .mono{font-weight:600;color:var(--ink);font-size:var(--t-sm)}.tdemo__row{--gap: 6px;display:flex;flex-direction:column}.tdemo__lane,.tdemo__tiles,.tdemo__rail{position:relative}.tdemo__lane{height:24px}.tdemo__ptr,.tdemo__tile{position:absolute;left:0;width:calc((100% - (var(--n) - 1) * var(--gap)) / var(--n))}.tdemo__ptr{bottom:5px;display:flex;justify-content:center;translate:calc(var(--at) * (100% + var(--gap)) + var(--shift, 0) * 17px) 0;transition:translate var(--beat, .26s) var(--ease-in-out),opacity var(--dur-3) var(--ease-out)}.tdemo__ptr[data-hidden]{opacity:0}.tdemo__ptr .cell__pointer{transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.tdemo__tiles{height:54px}.tdemo__tile{top:0;min-width:0;max-width:none;translate:calc(var(--pos) * (100% + var(--gap))) 0;transition:translate var(--beat, .26s) var(--ease-in-out)}.tdemo__tile .cell__box{height:54px;border-radius:var(--r-2)}.tdemo__tile .cell__value{font-size:var(--t-md);animation:none}.tdemo__tile .cell__mag{opacity:.1;transition:background var(--dur-3) var(--ease-out),opacity var(--dur-3) var(--ease-out)}.tdemo__tile.is-settled .cell__mag{background:var(--signal-text);opacity:.24}.tdemo__hop{display:block;align-self:stretch}.tdemo__tile[data-hop]{z-index:2}.tdemo__tile[data-hop=over]{z-index:3}.tdemo__tile[data-hop] .tdemo__hop{--lift: calc(18px + var(--dist, 1) * 3px);animation:hop-over-a var(--beat, .26s) var(--ease-in-out) both}.tdemo__tile[data-hop=over][data-parity="1"] .tdemo__hop{animation-name:hop-over-b}.tdemo__tile[data-hop=under] .tdemo__hop{animation-name:hop-under-a}.tdemo__tile[data-hop=under][data-parity="1"] .tdemo__hop{animation-name:hop-under-b}@keyframes hop-over-a{50%{transform:translateY(calc(-1 * var(--lift))) scale(1.06)}}@keyframes hop-over-b{50%{transform:translateY(calc(-1 * var(--lift))) scale(1.06)}}@keyframes hop-under-a{50%{transform:translateY(9px) scale(.94)}}@keyframes hop-under-b{50%{transform:translateY(9px) scale(.94)}}.tdemo[data-done] .tdemo__tile .cell__box{animation:tile-done .7s var(--ease-out) backwards;animation-delay:calc(var(--pos) * 60ms + .12s)}.tdemo[data-done] .tdemo__tile .cell__value{animation:tile-done-ink .7s var(--ease-out) backwards;animation-delay:calc(var(--pos) * 60ms + .12s)}@keyframes tile-done{35%{background:var(--signal);border-color:var(--signal);transform:translateY(-7px)}}@keyframes tile-done-ink{35%{color:var(--signal-ink)}}.tdemo__indices{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));column-gap:var(--gap);justify-items:center}.tdemo__rail{height:26px;margin-top:8px}.tdemo__sorted{position:absolute;top:0;left:calc(var(--from) * (100% + var(--gap)) / var(--n));width:calc((var(--to) - var(--from)) * (100% + var(--gap)) / var(--n) - var(--gap));display:flex;justify-content:center;padding-top:7px;border-top:1px solid var(--ink-3);white-space:nowrap;transition:left var(--beat, .26s) var(--ease-in-out),width var(--beat, .26s) var(--ease-in-out),opacity var(--dur-2) var(--ease-out)}.tdemo__sorted:before,.tdemo__sorted:after{content:"";position:absolute;top:-5px;width:1px;height:5px;background:var(--ink-3)}.tdemo__sorted:before{left:0}.tdemo__sorted:after{right:0}.tdemo__sorted[data-empty]{opacity:0}.tdemo[data-done] .tdemo__sorted{border-top-color:var(--signal-text)}.tdemo[data-done] .tdemo__sorted .label{color:var(--signal-text)}.tdemo__say{display:flex;align-items:center;gap:var(--s-3);min-height:28px;font-size:var(--t-sm);white-space:pre;overflow:hidden;color:var(--tone, var(--ink-2))}.tdemo__say[data-tone=compare]{--tone: var(--op-compare)}.tdemo__say[data-tone=swap]{--tone: var(--op-swap)}.tdemo__say[data-tone=write]{--tone: var(--op-write)}.tdemo__say[data-tone=now]{--tone: var(--signal-text)}.tdemo__say-line{flex-shrink:0;padding:1px 6px;border:1px solid currentColor;border-radius:var(--r-1);font-size:var(--t-micro);font-weight:600}.tdemo__say-text{overflow:hidden;text-overflow:ellipsis;animation:say-in var(--dur-3) var(--ease-out)}@keyframes say-in{0%{opacity:0;transform:translateY(5px)}}.tdemo__state{display:flex;flex-direction:column;gap:var(--s-5);padding:var(--s-4);border-left:1px solid var(--rule)}.tdemo__state section{display:flex;flex-direction:column;gap:var(--s-2)}.tdemo__vars{display:flex;flex-direction:column}.tdemo__var{display:flex;justify-content:space-between;gap:var(--s-2);padding:3px 6px;margin:0 -6px;border-left:2px solid transparent;font-size:var(--t-sm);transition:background var(--dur-3) var(--ease-out),border-color var(--dur-3) var(--ease-out)}.tdemo__var dt{color:var(--ink-3)}.tdemo__var.is-changed{border-left-color:var(--op-write);background:var(--op-write-bg)}.tdemo__var.is-changed dd{animation:say-in var(--dur-3) var(--ease-out)}.tdemo__ops{display:flex;flex-direction:column;gap:var(--s-2)}.tdemo__ops li{display:grid;grid-template-columns:1fr auto;gap:4px;font-size:var(--t-sm);color:var(--ink-2)}.tdemo__meter,.afig__meter{grid-column:1 / -1;height:2px;background:var(--rule-2);position:relative}.tdemo__meter:after,.afig__meter:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--fill, 0%);background:var(--op, var(--ink));transition:width var(--dur-2) var(--ease-out)}[data-op=compare]{--op: var(--op-compare)}[data-op=swap]{--op: var(--op-swap)}[data-op=read]{--op: var(--op-read)}[data-op=write]{--op: var(--op-write)}.tdemo__big{font-size:30px;font-weight:600;letter-spacing:-.03em;line-height:1}.tdemo__big sup,.afig__big sup{font-size:.55em;vertical-align:.75em}.tdemo__note{font-size:var(--t-xs);color:var(--ink-3)}@media(scripting:enabled){.tdemo[data-boot=off] .tdemo__src .listing__line,.tdemo[data-boot=off] .tdemo__beam,.tdemo[data-boot=off] .tdemo__tile,.tdemo[data-boot=off] .tdemo__ptr{opacity:0}}.tdemo[data-boot=on] .tdemo__src .listing__line{animation:line-in .46s var(--ease-out) backwards;animation-delay:calc(var(--i) * 30ms + 80ms)}.tdemo[data-boot=on] .tdemo__beam{animation:fade-in .4s var(--ease-out) .42s backwards}.tdemo[data-boot=on] .tdemo__tile{animation:tile-deal .62s cubic-bezier(.3,1.35,.5,1) backwards;animation-delay:calc(var(--pos) * 45ms + .24s)}@keyframes line-in{0%{opacity:0;transform:translate(-12px)}}@keyframes tile-deal{0%{opacity:0;transform:translateY(-34px) rotate(-8deg)}}.tdemo__transport{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-2) var(--s-3);border-top:1px solid var(--rule);background:var(--surface-2)}.tdemo__buttons{display:flex;gap:4px}.tdemo__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:32px;height:32px;border:1px solid var(--rule-2);border-radius:var(--r-2);color:var(--ink-2);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.tdemo__btn:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.tdemo__btn--play{background:var(--signal);border-color:var(--signal);color:var(--signal-ink)}.tdemo__btn--play:hover:not(:disabled){background:var(--signal-hover);color:var(--signal-ink)}.tdemo__strip{position:relative;flex:1;min-width:120px;height:30px}.tdemo__ticks{position:absolute;top:4px;right:0;bottom:4px;left:0;width:100%;height:calc(100% - 8px)}.tick{opacity:.28;transition:opacity var(--dur-2) var(--ease-out)}.tick.is-past{opacity:1}.tick--compare{fill:var(--op-compare)}.tick--swap{fill:var(--op-swap)}.tick--write{fill:var(--op-write)}.tick--now{fill:var(--signal-text)}.tdemo__strip input[type=range]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.tdemo__strip input[type=range]::-webkit-slider-runnable-track{height:100%;background:transparent}.tdemo__strip input[type=range]::-moz-range-track{height:100%;background:transparent}.tdemo__strip input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:3px;height:30px;background:var(--ink);border:none;box-shadow:0 0 0 2px var(--surface-2)}.tdemo__strip input[type=range]::-moz-range-thumb{width:3px;height:30px;background:var(--ink);border:none;border-radius:0}.tdemo__strip input[type=range]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.tdemo__knobs{display:flex;align-items:center;gap:var(--s-4)}.tdemo__knob{display:inline-flex;align-items:center;gap:var(--s-2)}.tdemo__knob input[type=range]{width:76px;accent-color:var(--ink)}.tdemo__knob-value{font-size:var(--t-xs);min-width:2ch;color:var(--ink-2)}.tdemo__presets{display:inline-flex;padding:2px;border:1px solid var(--rule-2);border-radius:var(--r-2);background:var(--bg-sunk)}.tdemo__presets button{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border-radius:var(--r-1);font-size:var(--t-xs);color:var(--ink-3);white-space:nowrap;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.tdemo__presets button:hover{color:var(--ink)}.tdemo__presets button[aria-pressed=true]{background:var(--surface-4);color:var(--ink)}:root[data-theme=light] .tdemo__presets button[aria-pressed=true]{background:var(--surface);box-shadow:inset 0 0 0 1px var(--rule-2)}@media(max-width:1100px){.tdemo__body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tdemo__state{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:none;border-top:1px solid var(--rule)}.tdemo__transport{flex-wrap:wrap;row-gap:var(--s-2)}.tdemo__strip{flex-basis:calc(100% - 128px)}.tdemo__knobs{width:100%;flex-wrap:wrap;gap:var(--s-2) var(--s-4)}.tdemo__presets{margin-left:auto}}@media(max-width:720px){.tdemo__body{grid-template-columns:minmax(0,1fr);min-height:0}.tdemo__canvas{order:-1;padding:var(--s-4);gap:var(--s-3)}.tdemo__src{border-right:none;border-top:1px solid var(--rule);font-size:11px}.tdemo__state{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tdemo__state section:last-child{display:none}.tdemo__row{--gap: 4px}.tdemo__tiles,.tdemo__tile .cell__box{height:44px}.tdemo__tile .cell__value{font-size:var(--t-sm)}.tdemo__ptr{translate:calc(var(--at) * (100% + var(--gap)) + var(--shift, 0) * 15px) 0}.tdemo__say{font-size:var(--t-xs)}.tdemo__tab{padding:0 var(--s-3)}.tdemo__tab svg,.tdemo__ext{display:none}.tdemo__knob input[type=range]{width:64px}.tdemo__presets{margin-left:0}.tdemo__step{display:none}.tdemo__status{margin-left:auto;min-width:0}}.listing{font-family:var(--font-mono);font-size:12.5px;line-height:1.8;font-variant-ligatures:none}.listing__line{position:relative;min-width:max-content;display:grid;grid-template-columns:3.4em minmax(0,1fr);align-items:baseline;padding-right:var(--s-4);transition:background var(--dur-1) linear}.listing__no{padding-right:1.1em;text-align:right;color:var(--ink-3);-webkit-user-select:none;user-select:none}.listing__code{white-space:pre;color:var(--ink-2)}.listing__line.is-now{background:var(--signal-wash)}.listing__line.is-now:before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:var(--signal-text)}.listing__line.is-now .listing__no{color:var(--signal-text);font-weight:700}.listing__line.is-now .listing__code{color:var(--ink)}.tk-kw{color:var(--tk-kw);font-weight:500}.tk-fn{color:var(--tk-fn)}.tk-num,.tk-const{color:var(--tk-num)}.tk-str{color:var(--tk-str)}.tk-comment{color:var(--ink-4);font-style:italic}:root,:root[data-theme=dark]{--tk-kw: #c792ea;--tk-fn: #82aaff;--tk-num: #f5a46c;--tk-str: #7fd1c0}:root[data-theme=light]{--tk-kw: #8b3fb5;--tk-fn: #2458c2;--tk-num: #b4501a;--tk-str: #0f7466}.sec{position:relative;padding:clamp(3.5rem,2rem + 4vw,6rem) var(--gutter);border-top:1px solid var(--rule)}.sec--flush{padding-left:0;padding-right:0}.sec:before,.cta:before{content:"";position:absolute;top:0;left:0;right:0;height:9px;background:repeating-linear-gradient(90deg,var(--rule-3) 0 1px,transparent 1px 120px) 0 0 / 100% 9px no-repeat,repeating-linear-gradient(90deg,var(--rule-2) 0 1px,transparent 1px 12px) 0 0 / 100% 4px no-repeat;pointer-events:none}.sec-head{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);column-gap:var(--s-5);row-gap:var(--s-4);margin-bottom:clamp(2.5rem,1rem + 4vw,4.5rem)}.sec-head__eyebrow{grid-row:1 / span 2;display:flex;flex-direction:column;gap:var(--s-2);padding-top:.6rem}.sec-head__no{font-size:var(--t-sm);font-weight:600;color:var(--ink)}.sec-head__no:before{content:"§ ";color:var(--ink-4)}.sec-head__title{font-size:var(--t-3xl);font-weight:500;line-height:1;letter-spacing:-.04em;max-width:17ch}.sec-head__lede{max-width:62ch;font-size:var(--t-lg);line-height:1.55;color:var(--ink-2)}.sec-head--compact{margin-bottom:var(--s-5);row-gap:var(--s-2)}.sec-head--compact .sec-head__title{font-size:var(--t-2xl);max-width:none}.sec-head--compact .sec-head__lede{font-size:var(--t-md)}@media(max-width:860px){.sec-head{grid-template-columns:minmax(0,1fr)}.sec-head__eyebrow{grid-row:auto;flex-direction:row;align-items:baseline;gap:var(--s-3);padding-top:0}}.anatomy{display:grid;grid-template-columns:minmax(0,7.4fr) minmax(0,4.6fr);gap:var(--s-7);align-items:start}.afig{border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--surface);overflow:hidden}.afig__bar{display:flex;justify-content:space-between;align-items:center;height:36px;padding:0 var(--s-4);border-bottom:1px solid var(--rule);background:var(--surface-2);font-size:var(--t-xs);color:var(--ink-3)}.afig__step strong{color:var(--ink)}.afig__of,.afig__dim{color:var(--ink-3)}.afig__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1.1fr) minmax(0,.8fr);grid-template-areas:"src src vars" "canvas canvas vars" "stack ops cx";gap:1px;background:var(--rule)}.afig__cell{position:relative;padding:var(--s-4);background:var(--surface);min-width:0;transition:opacity var(--dur-3) var(--ease-out),box-shadow var(--dur-3) var(--ease-out)}.afig__cell>.label{margin-bottom:var(--s-2)}.afig__src{grid-area:src;padding-left:0;overflow-x:auto}.afig__canvas{grid-area:canvas;display:flex;flex-direction:column;gap:var(--s-3);background:radial-gradient(circle at 1px 1px,var(--rule-2) 1px,transparent 0) 0 0 / 18px 18px,var(--bg-sunk)}.afig__canvas .cells--fit{max-width:360px}.afig__vars{grid-area:vars}.afig__stack{grid-area:stack}.afig__ops{grid-area:ops}.afig__cx{grid-area:cx}.afig__pin{position:absolute;top:8px;right:8px;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid var(--signal-line);border-radius:50%;font-size:10px;font-weight:700;color:var(--signal-text);background:var(--surface);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.afig__kv{display:flex;flex-direction:column;font-family:var(--font-mono);font-size:var(--t-sm)}.afig__kv div{display:flex;justify-content:space-between;gap:var(--s-2);padding:3px 6px;margin:0 -6px;border-left:2px solid transparent}.afig__kv dt{color:var(--ink-3)}.afig__kv .is-changed{border-left-color:var(--op-write);background:var(--op-write-bg)}.afig__frames{display:flex;flex-direction:column;gap:4px;font-size:var(--t-sm)}.afig__frames li{display:flex;justify-content:space-between;gap:var(--s-2);padding:4px 8px;border:1px solid var(--rule-2);border-left-width:3px}.afig__frames li.is-active{border-color:var(--signal-line);border-left-color:var(--signal-text);background:var(--signal-wash)}.afig__counts{display:flex;flex-direction:column;gap:6px}.afig__counts li{display:grid;grid-template-columns:1fr auto;gap:3px;font-size:var(--t-xs);color:var(--ink-2)}.afig__big{font-size:34px;font-weight:600;letter-spacing:-.03em;line-height:1.1}.afig__conf{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-family:var(--font-mono);font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--success)}.afig__conf:before{content:"";width:6px;height:6px;background:currentColor}.anatomy__notes{display:flex;flex-direction:column;border-top:1px solid var(--rule-2)}.anatomy__note{display:grid;grid-template-columns:28px minmax(0,1fr);gap:var(--s-3);padding:var(--s-4) 0;border-bottom:1px solid var(--rule);cursor:default;transition:background var(--dur-2) var(--ease-out)}.anatomy__pin{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-top:2px;border:1px solid var(--signal-line);border-radius:50%;font-size:11px;font-weight:700;color:var(--signal-text);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.anatomy__title{font-size:var(--t-md);font-weight:600;letter-spacing:-.01em;line-height:1.3}.anatomy__body{margin-top:4px;font-size:var(--t-sm);line-height:1.55;color:var(--ink-3)}.anatomy__note:hover .anatomy__pin{background:var(--signal);border-color:var(--signal);color:var(--signal-ink)}@media(hover:hover){.anatomy:has(.anatomy__note:hover) .afig__cell{opacity:.35}.anatomy:has([data-callout="1"]:hover) [data-region="1"],.anatomy:has([data-callout="2"]:hover) [data-region="2"],.anatomy:has([data-callout="3"]:hover) [data-region="3"],.anatomy:has([data-callout="4"]:hover) [data-region="4"],.anatomy:has([data-callout="5"]:hover) [data-region="5"],.anatomy:has([data-callout="6"]:hover) [data-region="6"]{opacity:1;box-shadow:inset 0 0 0 2px var(--signal-text)}.anatomy:has([data-callout="1"]:hover) [data-region="1"] .afig__pin,.anatomy:has([data-callout="2"]:hover) [data-region="2"] .afig__pin,.anatomy:has([data-callout="3"]:hover) [data-region="3"] .afig__pin,.anatomy:has([data-callout="4"]:hover) [data-region="4"] .afig__pin,.anatomy:has([data-callout="5"]:hover) [data-region="5"] .afig__pin,.anatomy:has([data-callout="6"]:hover) [data-region="6"] .afig__pin{background:var(--signal);color:var(--signal-ink)}}@media(max-width:1100px){.anatomy{grid-template-columns:minmax(0,1fr)}.anatomy__notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s-5)}}@media(max-width:680px){.afig__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"src src" "canvas canvas" "vars stack" "ops cx"}.anatomy__notes{grid-template-columns:minmax(0,1fr)}}.verbs{display:flex;flex-direction:column;border-bottom:1px solid var(--rule)}.verb{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,3fr) minmax(0,3fr) minmax(0,3.6fr);align-items:center;gap:var(--s-5);padding:var(--s-5) 0;border-top:1px solid var(--rule);transition:background var(--dur-3) var(--ease-out)}.verb:hover{background:linear-gradient(90deg,var(--op-bg, transparent),transparent 70%)}.verb[data-op=read]{--op: var(--op-read);--op-bg: var(--op-read-bg)}.verb[data-op=compare]{--op: var(--op-compare);--op-bg: var(--op-compare-bg)}.verb[data-op=write]{--op: var(--op-write);--op-bg: var(--op-write-bg)}.verb[data-op=swap]{--op: var(--op-swap);--op-bg: var(--op-swap-bg)}.verb[data-op=now]{--op: var(--signal-text);--op-bg: var(--signal-wash)}.verb__word{display:flex;align-items:center;gap:var(--s-3);font-size:var(--t-2xl);font-weight:500;letter-spacing:-.035em;color:var(--op)}.verb__word:before{content:"";width:10px;height:10px;flex-shrink:0;background:var(--op)}.verb--now .verb__word:before{display:none}.verb__code{display:inline-block;justify-self:start;padding:6px 10px;border:1px solid var(--rule-2);border-radius:var(--r-2);background:var(--surface);font-size:var(--t-sm);white-space:pre;color:var(--ink-2);max-width:100%;overflow:hidden}.verb--now .verb__code{background:var(--signal-wash);border-color:var(--signal-line);color:var(--ink)}.verb__line{margin-right:var(--s-3);color:var(--signal-text);font-weight:700}.verb__cells{display:flex}.verb__cells .cell{flex:0 0 auto;width:46px;min-width:0}.verb__text{font-size:var(--t-sm);line-height:1.55;color:var(--ink-3)}.verb--now{grid-template-columns:minmax(0,2.4fr) minmax(0,6fr) minmax(0,3.6fr)}@media(max-width:960px){.verb,.verb--now{grid-template-columns:minmax(0,1fr) minmax(0,1fr);row-gap:var(--s-3)}.verb__word,.verb__text{grid-column:1 / -1}}@media(max-width:560px){.verb,.verb--now{grid-template-columns:minmax(0,1fr)}}.plates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--rule-2);background:var(--rule-2)}@media(min-width:1180px){.plates{grid-template-columns:repeat(4,minmax(0,1fr))}.plate__art{aspect-ratio:3 / 2;padding:var(--s-3)}.plate__caption{padding:var(--s-3) var(--s-4) var(--s-4)}}.plate{display:flex;flex-direction:column;background:var(--surface)}.plate__art{display:flex;align-items:center;justify-content:center;aspect-ratio:2 / 1;padding:var(--s-4);background:linear-gradient(var(--rule) 1px,transparent 1px) 0 0 / 24px 24px,linear-gradient(90deg,var(--rule) 1px,transparent 1px) 0 0 / 24px 24px,var(--bg-sunk)}.plate__art svg{width:100%;max-width:460px;height:auto;overflow:visible}.plate__caption{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--s-3);row-gap:2px;padding:var(--s-4) var(--s-5) var(--s-5);border-top:1px solid var(--rule)}.plate__fig{grid-row:1 / span 2;font-size:var(--t-xs);color:var(--ink-3);padding-top:3px}.plate__label{font-size:var(--t-lg);font-weight:600;letter-spacing:-.02em}.plate__text{font-size:var(--t-sm);color:var(--ink-3)}.plates__also{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-2) var(--s-4);margin-top:var(--s-5);font-size:var(--t-sm)}.plates__also .label{margin-right:var(--s-2)}.plates__also-item{color:var(--ink-2);font-size:var(--t-xs)}.plates__also-item:not(:last-child):after{content:" ·";color:var(--ink-4);margin-left:var(--s-4)}@media(max-width:760px){.plates{grid-template-columns:minmax(0,1fr)}}.sc{color:var(--ink-3);font-family:var(--font-mono)}.sc-cell{fill:var(--surface);stroke:var(--ink-3);stroke-width:1.2}.sc-cell--compare{fill:var(--op-compare-solid);stroke:var(--op-compare);stroke-width:2}.sc-cell--now{fill:var(--signal-solid);stroke:var(--signal-text);stroke-width:2}.sc-num{fill:var(--ink);font-size:15px;font-weight:600;text-anchor:middle}.sc-num--sm{font-size:11px}.sc-idx{fill:var(--ink-4);font-size:11px;text-anchor:middle}.sc-tag{fill:var(--signal-text);font-size:12px;font-weight:700;text-anchor:middle}.sc-note{fill:var(--ink-3);font-size:11px;text-anchor:middle}.sc-divider{stroke:var(--ink-4);stroke-width:1}.sc-dot{fill:var(--ink-2)}.sc-link{stroke:var(--ink-3);stroke-width:1.5;stroke-dasharray:220;stroke-dashoffset:0}.sc-move{transition:transform .46s var(--ease-out),opacity var(--dur-2) var(--ease-out)}.sc-cell--swap{fill:var(--op-swap-solid);stroke:var(--op-swap);stroke-width:2}.sc-cell--done:not(.sc-cell--compare):not(.sc-cell--swap){fill:var(--surface-3)}.sc-sorted{stroke:var(--ink-3);stroke-width:1.2}.sc-note--start{text-anchor:start;font-size:10px}.sc-note--compare{fill:var(--op-compare)}.sc-note--swap{fill:var(--op-swap)}.sc-note--done{fill:var(--signal-text)}.sc-note--code{fill:var(--ink-2);font-size:11.5px}.sc-tag--quiet{fill:var(--ink-2);font-weight:600}.sc-ptr__line{stroke:var(--ink-3);stroke-width:1.5;stroke-dasharray:90;animation:sc-draw .42s var(--ease-out) both}.sc-ptr__head{stroke:var(--ink-3);stroke-width:1.5;animation:fade-in .16s var(--ease-out) .3s both}.sc-ptr--fresh .sc-ptr__line,.sc-ptr--fresh .sc-ptr__head{stroke:var(--signal-text);stroke-width:2.2}@keyframes sc-draw{0%{stroke-dashoffset:90}to{stroke-dashoffset:0}}@keyframes fade-in{0%{opacity:0}}.sc-disc{fill:var(--surface);stroke:var(--ink-3);stroke-width:1.4}.sc-return{stroke:var(--op-write);stroke-width:1.3;stroke-dasharray:3 3}.sc-return--head{stroke-dasharray:none}.sc-return-label{fill:var(--op-write);font-size:10px;font-weight:600;text-anchor:middle}@media(scripting:enabled){.plates:not([data-revealed]) .sc-pop{opacity:0}.plates:not([data-revealed]) .sc-link,.plates:not([data-revealed]) .sc-ptr{stroke-dashoffset:220}}.plates[data-revealed] .sc-pop{animation:sc-pop .52s var(--ease-out) both;animation-delay:calc(var(--i) * 70ms + .26s)}.plates[data-revealed] .sc-link{transition:stroke-dashoffset .9s var(--ease-out);transition-delay:calc(var(--i) * 70ms + .2s)}@keyframes sc-pop{0%{opacity:0;transform:translateY(6px)}}.plates[data-revealed] .sc-path .sc-disc{animation:sc-path 4.2s steps(1,end) infinite;animation-delay:calc(var(--step) * .7s + 1.2s)}.plates[data-revealed] .sc-link--path{animation:sc-path-edge 4.2s steps(1,end) infinite;animation-delay:calc(var(--step) * .7s + 1.2s)}@keyframes sc-path{0%{fill:var(--signal);stroke:var(--signal-text);stroke-width:2.4}17%{fill:var(--op-read-solid);stroke:var(--op-read);stroke-width:2}}@keyframes sc-path-edge{0%,to{stroke:var(--signal-text);stroke-width:2.4}}.sc-path:last-of-type .sc-disc{fill:var(--signal);stroke:var(--signal-text)}.plates[data-revealed] .sc-wave .sc-disc{animation:sc-wave 4s steps(1,end) infinite;animation-delay:calc(var(--ring) * .6s + 1.2s)}@keyframes sc-wave{0%{fill:var(--signal);stroke:var(--signal-text)}15%{fill:var(--op-read-solid);stroke:var(--op-read)}70%{fill:var(--surface);stroke:var(--ink-3)}}.exgrid__tabs{display:flex;margin-bottom:var(--s-4);border-bottom:1px solid var(--rule-2);overflow-x:auto;scrollbar-width:none}.exgrid__tabs::-webkit-scrollbar{display:none}.exgrid__tab{display:inline-flex;align-items:baseline;gap:7px;margin-bottom:-1px;padding:10px 14px;border-bottom:2px solid transparent;font-size:var(--t-sm);font-weight:500;color:var(--ink-3);white-space:nowrap;transition:color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.exgrid__tab:hover{color:var(--ink);background:var(--surface-2)}.exgrid__tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--signal-text)}.exgrid__count{padding:1px 5px;border-radius:var(--r-1);background:var(--surface-2);font-size:10px;line-height:1.5;color:var(--ink-3)}.exgrid__tab[aria-selected=true] .exgrid__count{background:var(--signal);color:var(--signal-ink)}.exgrid__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));border-top:1px solid var(--rule-2);border-left:1px solid var(--rule-2)}.extile{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--s-2);padding:var(--s-4) var(--s-4) var(--s-4) var(--s-5);border-right:1px solid var(--rule-2);border-bottom:1px solid var(--rule-2);background:var(--surface);transition:background var(--dur-2) var(--ease-out)}.extile:before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:var(--signal-text);transform:scaleY(0);transform-origin:top;transition:transform var(--dur-2) var(--ease-out)}.extile:hover:before,.extile:focus-within:before{transform:scaleY(1)}.extile:hover{background:var(--surface-2)}.extile__main{display:flex;flex-direction:column;gap:2px;min-width:0}.extile__title{font-size:var(--t-base);font-weight:600;letter-spacing:-.01em;line-height:1.3}.extile__main:hover .extile__title{text-decoration:underline;text-decoration-color:var(--signal-line);text-underline-offset:3px}.extile__blurb{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px;font-size:var(--t-xs);line-height:1.5;color:var(--ink-3)}.extile__langs{display:flex;gap:3px}.extile__lang{display:inline-flex;align-items:center;justify-content:center;height:22px;padding:0 6px;border:1px solid var(--rule-2);border-radius:var(--r-1);font-family:var(--font-mono);font-size:10.5px;font-weight:500;color:var(--ink-2);transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.extile__lang:hover,.extile__lang--open{background:var(--signal);border-color:var(--signal);color:var(--signal-ink)}.extile--lab{background:linear-gradient(90deg,var(--signal-wash),transparent 70%),var(--surface)}.extile--lab:before{transform:scaleY(1)}.exgrid__more{margin-top:var(--s-4)}.exgrid__more a{display:inline-flex;align-items:baseline;gap:var(--s-3);padding-bottom:2px;border-bottom:1px solid var(--rule-3);font-size:var(--t-sm);font-weight:500;text-decoration:none;transition:border-color var(--dur-2) var(--ease-out)}.exgrid__more a:hover{border-bottom-color:var(--ink)}@media(max-width:760px){.exgrid__tabs{margin-left:calc(var(--gutter) * -1);margin-right:calc(var(--gutter) * -1);padding:0 var(--gutter)}}.cta{position:relative;padding:clamp(5rem,3rem + 7vw,9rem) var(--gutter);border-top:1px solid var(--rule)}.cta__inner{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;column-gap:var(--s-7);row-gap:var(--s-5)}.cta__claim{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-4)}.cta__aside{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-4);padding-bottom:.4rem}@media(max-width:900px){.cta__inner{grid-template-columns:minmax(0,1fr);align-items:start}.cta__aside{padding-bottom:0}}.cta__line{display:flex;gap:var(--s-4);padding:4px 14px 4px 0;font-size:var(--t-sm);background:var(--signal-wash);border-left:2px solid var(--signal-text)}.cta__no{width:2.6em;text-align:right;color:var(--signal-text);font-weight:700}.cta__comment{color:var(--ink-3);font-style:italic}.cta__title{font-size:var(--t-3xl);font-weight:500;line-height:1;letter-spacing:-.045em;max-width:16ch}.cta__body{font-size:var(--t-lg);color:var(--ink-2)}.cta__actions{display:flex;flex-wrap:wrap;gap:var(--s-2)}.cta__note{font-size:var(--t-micro);color:var(--ink-3)}.foot{max-width:var(--page-max);margin:0 auto;padding:0 var(--gutter) var(--s-5);border-left:1px solid transparent}@media(min-width:1100px){.foot{border-left:1px solid var(--rule);border-right:1px solid var(--rule)}}.foot__ruler{height:2px;margin:0 calc(var(--gutter) * -1);background:var(--ink)}.foot__top{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:var(--s-7);padding:var(--s-7) 0 var(--s-6);border-bottom:1px solid var(--rule)}.foot__brand{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-4)}.foot__pitch{max-width:46ch;font-size:var(--t-base);color:var(--ink-3);line-height:1.6}.foot__mail{font-size:var(--t-sm);color:var(--ink-2);text-decoration:none;border-bottom:1px solid var(--rule-3)}.foot__mail:hover{color:var(--ink);border-bottom-color:var(--ink)}.foot__report{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--rule-2);border-radius:var(--r-2);font-size:var(--t-sm);color:var(--ink-3);text-decoration:none;transition:border-color var(--dur-2) var(--ease-out)}.foot__report strong{color:var(--ink);font-weight:600}.foot__report:hover{border-color:var(--ink-3)}.foot__report-tag{padding:2px 6px;border-radius:var(--r-1);background:var(--op-swap-bg);color:var(--op-swap);font-size:var(--t-micro);font-weight:600}.foot__social{display:flex;gap:var(--s-1)}.foot__social .icon-btn{border-color:var(--rule-2)}.foot__columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-5)}.foot__column{display:flex;flex-direction:column;gap:var(--s-3)}.foot__column ul{display:flex;flex-direction:column;gap:var(--s-2)}.foot__column a{font-size:var(--t-base);color:var(--ink-2);text-decoration:none}.foot__column a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-3);text-underline-offset:4px}.foot__bottom{margin-top:var(--s-6);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-3);padding-top:var(--s-4);border-top:1px solid var(--rule);font-size:var(--t-xs);color:var(--ink-3)}.foot__legal{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-4)}.foot__legal>button:not(.btn){font-size:var(--t-sm);color:var(--ink-3)}.foot__legal>button:not(.btn):hover{color:var(--ink)}@media(max-width:860px){.foot__top{grid-template-columns:minmax(0,1fr)}}.legal__main{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--s-7);max-width:1080px;margin:0 auto;padding:var(--s-7) var(--gutter) var(--s-9)}.legal__aside{position:sticky;top:84px;align-self:start;display:flex;flex-direction:column;gap:var(--s-3)}.legal__tabs{display:flex;flex-direction:column;border-top:1px solid var(--rule-2)}.legal__tab{display:flex;align-items:baseline;gap:var(--s-3);padding:10px 12px;border-bottom:1px solid var(--rule);border-left:2px solid transparent;font-size:var(--t-base);font-weight:500;color:var(--ink-3)}.legal__tab:hover{color:var(--ink)}.legal__tab[aria-selected=true]{color:var(--ink);border-left-color:var(--signal-text);background:var(--surface-2)}.legal__tab-no{font-size:var(--t-micro);color:var(--ink-3)}.legal__doc{max-width:68ch}.legal__doc:focus{outline:none}.legal__title{font-size:var(--t-3xl);font-weight:500;letter-spacing:-.04em}.legal__updated{margin-top:var(--s-3);font-size:var(--t-xs);color:var(--ink-3)}.legal__intro{margin-top:var(--s-5);font-size:var(--t-lg);line-height:1.6;color:var(--ink-2)}.legal__section{margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--rule)}.legal__section h2{display:flex;align-items:baseline;gap:var(--s-3);font-size:var(--t-lg);font-weight:600;letter-spacing:-.015em;margin-bottom:var(--s-3)}.legal__section-no{font-size:var(--t-xs);color:var(--ink-4);font-weight:500}.legal__section p{font-size:var(--t-md);line-height:1.7;color:var(--ink-2)}.legal__section p+p{margin-top:var(--s-3)}.legal__disclaimer{margin-top:var(--s-7);padding-top:var(--s-4);border-top:1px solid var(--rule);font-size:var(--t-sm);color:var(--ink-3)}@media(max-width:820px){.legal__main{grid-template-columns:minmax(0,1fr);gap:var(--s-5)}.legal__aside{position:static}.legal__tabs{flex-direction:row;border-top:none;border-bottom:1px solid var(--rule-2)}.legal__tab{border-left:none;border-bottom:2px solid transparent}.legal__tab[aria-selected=true]{background:none;border-bottom-color:var(--signal-text)}}.topic__main{max-width:1180px;margin:0 auto;padding:var(--s-5) var(--gutter) var(--s-9)}.crumbs ol{display:flex;flex-wrap:wrap;gap:var(--s-2);font-size:var(--t-xs);color:var(--ink-3)}.crumbs li:not(:last-child):after{content:"/";margin-left:var(--s-2);color:var(--ink-4)}.crumbs a{color:var(--ink-2);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.crumbs [aria-current=page]{color:var(--ink)}.tp-hero{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-4);padding:var(--s-7) 0 var(--s-6)}.tp-hero__title{font-size:var(--t-3xl);font-weight:500;line-height:1;letter-spacing:-.045em;max-width:18ch}.tp-hero__lede{max-width:64ch;font-size:var(--t-lg);line-height:1.55;color:var(--ink-2)}.tp-hero__actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-2)}.tp-code{border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--surface);overflow:hidden}.tp-code__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--rule);background:var(--surface-2)}.tp-code__tabs{display:inline-flex;padding:2px;gap:2px;border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--bg-sunk)}.tp-code__tab{padding:4px 12px;border-radius:var(--r-2);font-size:var(--t-sm);font-weight:500;color:var(--ink-3)}.tp-code__tab:hover{color:var(--ink)}.tp-code__tab[aria-selected=true]{background:var(--surface-4);color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule-2)}:root[data-theme=light] .tp-code__tab[aria-selected=true]{background:var(--surface-2)}.tp-code__lang{font-size:var(--t-xs);color:var(--ink-2);padding:4px 8px}.tp-code__panel[hidden]{display:none}.code{margin:0;padding:var(--s-4) 0;overflow-x:auto;max-height:560px;font-size:13px;line-height:1.75;color:var(--ink-2);counter-reset:line}.code code{display:block;min-width:max-content}.code__line{display:block;padding-right:var(--s-5)}.code__line:before{counter-increment:line;content:counter(line);display:inline-block;width:3.4em;padding-right:1.3em;text-align:right;color:var(--ink-4);-webkit-user-select:none;user-select:none}.code__line:hover{background:var(--surface-2)}.tp-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:var(--s-8);align-items:start;margin-top:var(--s-7)}.tp-article{max-width:70ch}.tp-section+.tp-section{margin-top:var(--s-7)}.tp-section h2{font-size:var(--t-xl);font-weight:500;letter-spacing:-.03em;margin-bottom:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--rule-2)}.tp-section p{font-size:var(--t-md);line-height:1.75;color:var(--ink-2)}.tp-section p+p{margin-top:var(--s-4)}.tp-watch{display:flex;flex-direction:column}.tp-watch li{display:grid;grid-template-columns:2.5em minmax(0,1fr);gap:var(--s-3);padding:var(--s-3) 0;border-bottom:1px solid var(--rule);font-size:var(--t-md);line-height:1.6;color:var(--ink-2)}.tp-watch__no{font-size:var(--t-xs);color:var(--signal-text);font-weight:700;padding-top:3px}.tp-cx{display:flex;flex-wrap:wrap;gap:var(--s-6);margin-bottom:var(--s-4)}.tp-cx dd{font-size:var(--t-2xl);font-weight:600;letter-spacing:-.03em}.tp-aside{position:sticky;top:84px}.tp-aside__card{display:flex;flex-direction:column;gap:var(--s-4);padding:var(--s-5);border:1px solid var(--rule-2);border-radius:var(--r-3);background:var(--surface)}.tp-aside__facts{display:flex;flex-direction:column}.tp-aside__facts div{display:flex;justify-content:space-between;gap:var(--s-3);padding:var(--s-2) 0;border-bottom:1px solid var(--rule);font-size:var(--t-sm)}.tp-aside__facts dt{color:var(--ink-3)}.tp-aside__facts dd{text-align:right}.tp-related{margin-top:var(--s-8)}.tp-related__title,.topic-group__title{display:flex;align-items:baseline;gap:var(--s-3);font-size:var(--t-xl);font-weight:500;letter-spacing:-.03em;margin-bottom:var(--s-4)}.topic-group{margin-top:var(--s-7)}.topic-group__no{font-size:var(--t-xs);font-weight:600;color:var(--ink-3)}.topic-list{border-top:1px solid var(--rule-2)}.topic-row{display:grid;grid-template-columns:minmax(180px,3fr) minmax(0,6fr) auto 24px;align-items:baseline;gap:var(--s-4);padding:var(--s-4) var(--s-2);border-bottom:1px solid var(--rule);text-decoration:none;transition:background var(--dur-2) var(--ease-out)}.topic-row:hover{background:var(--surface-2)}.topic-row__name{font-size:var(--t-lg);font-weight:500;letter-spacing:-.02em}.topic-row__text{font-size:var(--t-sm);color:var(--ink-3)}.topic-row__meta{display:flex;gap:var(--s-3);font-size:var(--t-micro);color:var(--ink-3);white-space:nowrap}.topic-row__cx{color:var(--ink)}.topic-row__go{color:var(--ink-4);transition:transform var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.topic-row:hover .topic-row__go{color:var(--signal-text);transform:translate(3px)}.tp-cta{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-4);margin-top:var(--s-9);padding:var(--s-7) 0 0;border-top:2px solid var(--ink)}.tp-cta h2{font-size:var(--t-3xl);font-weight:500;letter-spacing:-.045em;line-height:1}.tp-cta p{max-width:52ch;font-size:var(--t-lg);color:var(--ink-2)}@media(max-width:960px){.tp-body{grid-template-columns:minmax(0,1fr);gap:var(--s-6)}.tp-aside{position:static;order:-1}.topic-row{grid-template-columns:minmax(0,1fr) 24px}.topic-row__text,.topic-row__meta{grid-column:1}.topic-row__go{grid-column:2;grid-row:1}}
