@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2) format("woff2"),url(/BIMtrieval/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2) format("woff2"),url(/BIMtrieval/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2) format("woff2"),url(/BIMtrieval/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/space-grotesk-vietnamese-600-normal-DUi7WF5p.woff2) format("woff2"),url(/BIMtrieval/assets/space-grotesk-vietnamese-600-normal-D6zpsUhD.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/space-grotesk-latin-ext-600-normal-DxxdqCpr.woff2) format("woff2"),url(/BIMtrieval/assets/space-grotesk-latin-ext-600-normal-VcznFIpX.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2) format("woff2"),url(/BIMtrieval/assets/space-grotesk-latin-600-normal-BflQw4A9.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/BIMtrieval/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/BIMtrieval/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/BIMtrieval/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/BIMtrieval/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");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{--sheet-0: #edf1f5;--sheet-1: #e1e7ed;--surface: #ffffff;--surface-2: #f7f9fb;--surface-3: #eef2f6;--ink: #16202b;--ink-2: #55636f;--ink-3: #8a96a2;--line: #dce3ea;--line-2: #c7d0d9;--blue: #1f6feb;--blue-press: #1552c4;--blue-wash: #eaf1fe;--amber: #e0912a;--amber-wash: #fbf1e0;--teal: #0fb5c9;--ok: #2e9e6b;--warn: #d98a1f;--err: #c7503b;--err-wash: #fbecea;--font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;--r-panel: 16px;--r-card: 10px;--r-chip: 6px;--r-btn: 8px;--shadow-panel: 0 10px 34px -14px rgba(22, 32, 43, .28), 0 2px 6px -2px rgba(22, 32, 43, .08);--shadow-pop: 0 8px 24px -10px rgba(22, 32, 43, .3);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);color:var(--ink);background:var(--sheet-1);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}button{font-family:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:8px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--ink-3);background-clip:content-box}.app{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.viewer-canvas{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 120% at 50% 0%,var(--sheet-0) 0%,var(--sheet-1) 70%)}.viewer-canvas canvas{display:block;outline:none}.readout{position:absolute;left:20px;bottom:18px;z-index:5;display:flex;flex-direction:column;gap:3px;padding:10px 14px;background:color-mix(in srgb,var(--surface) 78%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-panel);max-width:44vw}.readout-line{display:flex;align-items:center;gap:8px}.readout-name{font-family:var(--font-display);font-weight:600;font-size:14px;letter-spacing:.01em}.readout-meta{display:flex;gap:12px;font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.readout-err{color:var(--err)}.readout-actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-top:4px}.readout-fit{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;font-size:11px;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-chip)}.readout-fit:hover{border-color:var(--line-2)}.vis-modes{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:var(--r-chip);overflow:hidden;background:var(--surface)}.vis-mode{padding:3px 8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;color:var(--ink-3);background:transparent;border:0;border-left:1px solid var(--line)}.vis-mode:first-child{border-left:0}.vis-mode:hover{color:var(--ink-2);background:var(--surface-3)}.vis-mode-on{color:var(--blue);background:var(--blue-wash)}.vis-mode:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.sdot{width:8px;height:8px;border-radius:50%;background:var(--ink-3);flex:none}.sdot.ok{background:var(--ok)}.sdot.warn{background:var(--warn)}.sdot.err{background:var(--err)}.sdot.idle{background:var(--line-2)}.panel{position:absolute;top:20px;right:20px;bottom:20px;z-index:10;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-panel);overflow:hidden}.panel-resizer{position:absolute;left:-3px;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:3}.panel-resizer:hover{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--blue) 22%,transparent))}.tick{position:absolute;width:9px;height:9px;z-index:2;pointer-events:none;opacity:.5}.tick-tl{top:8px;left:8px;border-top:1.5px solid var(--line-2);border-left:1.5px solid var(--line-2)}.tick-tr{top:8px;right:8px;border-top:1.5px solid var(--line-2);border-right:1.5px solid var(--line-2)}.tick-bl{bottom:8px;left:8px;border-bottom:1.5px solid var(--line-2);border-left:1.5px solid var(--line-2)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px 10px;border-bottom:1px solid var(--line)}.head-actions{display:flex;gap:4px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;color:var(--ink-2);background:transparent;border:1px solid transparent;border-radius:var(--r-btn)}.icon-btn:hover{color:var(--ink);background:var(--surface-2);border-color:var(--line)}.model-select{display:flex;align-items:center;gap:8px;min-width:0}.model-select-label{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3)}.model-select select{font-family:var(--font-display);font-weight:500;font-size:13px;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-btn);padding:6px 26px 6px 10px;max-width:210px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2355636f' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 8px center}.panel-restore{position:absolute;top:20px;right:20px;z-index:10;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-btn);box-shadow:var(--shadow-panel)}.panel-restore:hover{color:var(--ink)}.messages{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:14px}.empty-hint{margin:auto 4px;text-align:center;color:var(--ink-3)}.empty-title{font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--ink-2);margin:0 0 6px}.empty-sub{font-size:13px;margin:0;line-height:1.5}.msg{display:flex}.msg-user{justify-content:flex-end}.bubble-user{max-width:84%;padding:9px 12px;background:var(--blue-wash);border:1px solid color-mix(in srgb,var(--blue) 18%,var(--line));border-radius:12px 12px 4px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.msg-assistant{justify-content:flex-start}.answer{max-width:92%;padding:2px 2px 2px 12px;border-left:2px solid var(--line);font-size:14px;line-height:1.55}.is-error .answer{border-left-color:var(--err)}.is-clarify .answer{border-left-color:var(--amber)}.is-notice .answer{border-left-color:var(--line-2)}.notice-text{margin:0;font-size:13px;color:var(--ink-3);font-style:italic}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 8px}.md ul,.md ol{margin:0 0 8px;padding-left:20px}.md li{margin:2px 0}.md code{font-family:var(--font-mono);font-size:12px;background:var(--surface-3);padding:1px 5px;border-radius:4px}.md pre{background:var(--surface-3);padding:10px;border-radius:8px;overflow-x:auto}.md pre code{background:none;padding:0}.md table{border-collapse:collapse;font-size:12.5px;margin:4px 0 8px;display:block;overflow-x:auto}.md th,.md td{border:1px solid var(--line);padding:4px 8px;text-align:left}.md th{background:var(--surface-2);font-weight:600}.md a{color:var(--blue)}.pending{display:flex;align-items:center;gap:6px;padding:6px 12px;color:var(--ink-3);font-size:13px}.pending .dot{width:6px;height:6px;border-radius:50%;background:var(--ink-3);animation:blink 1.2s infinite ease-in-out}.pending .dot:nth-child(2){animation-delay:.2s}.pending .dot:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}.evidence{margin-top:10px;border-top:1px dashed var(--line);padding-top:8px}.ev-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:2px 0;background:none;border:none;font-family:var(--font-mono);font-size:11px;color:var(--ink-3);text-align:left}.ev-caret{transition:transform .15s;display:inline-block}.ev-caret[data-open=true]{transform:rotate(90deg)}.ev-route{color:var(--blue-press);text-transform:uppercase;letter-spacing:.08em}.ev-basis{color:var(--ink-2)}.ev-counts{margin-left:auto;color:var(--ink-3)}.ev-body{margin-top:8px;display:flex;flex-direction:column;gap:6px}.ev-row{display:flex;gap:8px;font-size:12px}.ev-key{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);min-width:62px;padding-top:3px}.ev-cites{display:flex;flex-wrap:wrap;gap:4px}.cite{font-family:var(--font-mono);font-size:11px;padding:2px 7px;border-radius:var(--r-chip);border:1px solid var(--line);background:var(--surface-2);color:var(--ink)}.cite:hover{border-color:var(--line-2)}.cite-primary{border-color:color-mix(in srgb,var(--blue) 40%,var(--line));background:var(--blue-wash);color:var(--blue-press)}.cite-context{border-color:color-mix(in srgb,var(--amber) 40%,var(--line));background:var(--amber-wash);color:#9a5f10}.ev-mono{font-family:var(--font-mono);font-size:11px;color:var(--ink-2)}.ev-note{font-size:11.5px;color:var(--ink-3)}.ev-warn{font-size:11.5px;color:var(--warn)}.candidates{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.candidate{display:inline-flex;align-items:center;gap:10px;padding:6px 10px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-btn);font-size:13px}.candidate:hover:not(:disabled){border-color:var(--blue)}.candidate:disabled{opacity:.5}.candidate-name{font-family:var(--font-display);font-weight:500}.candidate-cta{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--blue)}.composer{border-top:1px solid var(--line);padding:10px 12px 12px;background:var(--surface)}.chips{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 4px 3px 8px;background:color-mix(in srgb,var(--teal) 12%,var(--surface-2));border:1px solid color-mix(in srgb,var(--teal) 34%,var(--line));border-radius:var(--r-chip);font-size:11.5px;max-width:100%}.chip-label{font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.chip-x{display:inline-flex;align-items:center;color:var(--ink-3);background:none;border:none;padding:1px}.chip-x:hover{color:var(--err)}.chip-notice{font-size:11px;color:var(--warn);align-self:center}.retry-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:12.5px;color:var(--ink-2)}.btn-retry{padding:3px 12px;font-size:12px;font-weight:600;color:var(--blue);background:var(--blue-wash);border:1px solid color-mix(in srgb,var(--blue) 30%,var(--line));border-radius:var(--r-chip)}.composer-input{display:flex;align-items:flex-end;gap:8px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:6px 6px 6px 12px}.composer-input:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}.composer-input textarea{flex:1;border:none;background:none;resize:none;font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--ink);max-height:160px;outline:none;padding:4px 0}.btn-send{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;color:#fff;background:var(--blue);border:none;border-radius:var(--r-btn)}.btn-send:hover:not(:disabled){background:var(--blue-press)}.btn-send:disabled{background:var(--line-2);cursor:not-allowed}.btn-send.is-stop{background:var(--ink-2)}.composer-hint{margin:8px 2px 0;font-size:10.5px;color:var(--ink-3);font-family:var(--font-mono)}.viewer-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;align-items:center;justify-content:center;pointer-events:none}.overlay-card{pointer-events:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-panel);padding:22px 26px;text-align:center;max-width:360px}.overlay-title{font-family:var(--font-display);font-weight:600;font-size:15px;margin:0 0 4px}.overlay-sub{font-size:13px;color:var(--ink-2);margin:0 0 6px}.overlay-note{font-size:12px;color:var(--ink-3);margin:0 0 14px}.phase-track{display:flex;justify-content:center;gap:18px;margin-top:14px}.phase{display:flex;flex-direction:column;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;color:var(--ink-3)}.phase-dot{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--line-2)}.phase-done .phase-dot{background:var(--ok);border-color:var(--ok)}.phase-active .phase-dot{background:var(--blue);border-color:var(--blue);animation:pulse 1s infinite}.phase-active .phase-label{color:var(--blue-press)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}.dialog-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#16202b47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.dialog{background:var(--surface);border-radius:var(--r-panel);box-shadow:var(--shadow-pop);padding:22px 24px;width:min(420px,92vw)}.dialog-title{font-family:var(--font-display);font-weight:600;font-size:17px;margin:0 0 8px}.dialog-body{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin:0 0 18px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.btn-primary,.btn-ghost,.btn-danger{padding:8px 16px;font-size:13px;font-weight:600;border-radius:var(--r-btn);border:1px solid transparent}.btn-primary{color:#fff;background:var(--blue)}.btn-primary:hover{background:var(--blue-press)}.btn-danger{color:#fff;background:var(--err)}.btn-ghost{color:var(--ink-2);background:var(--surface-2);border-color:var(--line)}.btn-ghost:hover{border-color:var(--line-2)}.viewer-controls{position:absolute;top:20px;left:20px;bottom:96px;z-index:6;display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-2);pointer-events:none}.viewer-controls>*{pointer-events:auto}.reset-app-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--ink-2);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:var(--r-btn);box-shadow:var(--shadow-panel);cursor:pointer;transition:border-color .14s ease,color .14s ease}.reset-app-btn:hover{color:var(--err);border-color:color-mix(in srgb,var(--err) 45%,var(--line))}.reset-app-btn:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.floor-controls{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-2);min-height:0}.floor-buttons{display:flex;flex-direction:column;gap:4px;padding:5px;min-width:78px;min-height:0;overflow-y:auto;overscroll-behavior:contain;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:var(--r-btn);box-shadow:var(--shadow-panel)}.floor-btn{display:block;width:100%;padding:6px 10px;font-family:var(--font-body);font-size:12px;font-weight:500;text-align:left;white-space:nowrap;color:var(--ink-2);background:transparent;border:1px solid transparent;border-radius:calc(var(--r-btn) - 2px);cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.floor-btn:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.floor-btn:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.floor-btn:disabled{color:var(--ink-3);cursor:not-allowed;opacity:.6}.floor-btn-active{color:var(--blue);background:color-mix(in srgb,var(--blue) 10%,transparent);border-color:color-mix(in srgb,var(--blue) 40%,var(--line));font-weight:600}.floor-notice{max-width:220px;margin:0;padding:6px 8px;font-family:var(--font-body);font-size:11px;line-height:1.35;color:var(--ink-2);background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--line);border-radius:var(--r-btn)}.component-panel{position:absolute;top:20px;bottom:20px;right:calc(20px + var(--chat-w, 0px) + var(--sp-3));width:320px;z-index:9;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-panel);overflow:hidden;animation:cp-in .16s cubic-bezier(.2,0,0,1)}@keyframes cp-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.component-panel{animation:none}}.cp-head{display:flex;align-items:flex-start;gap:var(--sp-2);padding:12px 12px 10px 14px;border-bottom:1px solid var(--line)}.cp-head-text{min-width:0;flex:1}.cp-title{margin:0;font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.01em;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cp-sub{margin:2px 0 0;font-family:var(--font-mono);font-size:10px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cp-close{flex:none;width:22px;height:22px;display:grid;place-items:center;font-size:16px;line-height:1;color:var(--ink-3);background:transparent;border:1px solid transparent;border-radius:var(--r-chip);cursor:pointer}.cp-close:hover{color:var(--ink);border-color:var(--line)}.cp-close:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.cp-preview{position:relative;padding:var(--sp-3) var(--sp-3) 0}.cp-preview-canvas{border:1px solid var(--line);border-radius:var(--r-card);background:linear-gradient(var(--surface-2),var(--surface-2)),repeating-linear-gradient(0deg,transparent 0 11px,color-mix(in srgb,var(--line) 55%,transparent) 11px 12px);overflow:hidden;cursor:grab}.cp-preview-canvas:active{cursor:grabbing}.cp-preview-status{margin:6px 0 0;font-family:var(--font-mono);font-size:10px;color:var(--ink-3);text-align:center;min-height:12px}.cp-actions{display:flex;gap:6px;padding:var(--sp-3) var(--sp-3) 0}.cp-action{flex:1;padding:6px 4px;font-family:var(--font-body);font-size:11px;font-weight:500;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-btn);cursor:pointer;transition:border-color .14s ease,background .14s ease}.cp-action:hover:not(:disabled){border-color:var(--line-2);background:var(--surface-3)}.cp-action-on{color:var(--blue);background:var(--blue-wash);border-color:color-mix(in srgb,var(--blue) 40%,var(--line))}.cp-action:disabled{opacity:.45;cursor:not-allowed}.cp-action:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.cp-notice,.cp-reason{margin:8px var(--sp-3) 0;font-size:10.5px;line-height:1.4}.cp-notice{font-family:var(--font-mono);color:var(--ink-2)}.cp-reason{font-family:var(--font-body);color:var(--ink-3)}.cp-body{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-3)}.cp-status{margin:0;font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.cp-status-err{color:var(--err)}.cp-group{margin-bottom:var(--sp-3)}.cp-group-title{margin:0 0 5px;font-family:var(--font-display);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);padding-bottom:3px}.cp-row{display:flex;gap:var(--sp-2);align-items:baseline;padding:2px 0}.cp-key{flex:none;width:96px;font-family:var(--font-body);font-size:10.5px;color:var(--ink-3)}.cp-val{flex:1;min-width:0;font-family:var(--font-mono);font-size:10.5px;color:var(--ink);overflow-wrap:anywhere}.cp-unit{color:var(--ink-3)}.cp-tags{display:flex;flex-wrap:wrap;gap:4px}.cp-tag{padding:2px 7px;font-family:var(--font-mono);font-size:10px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-chip)}.result-summary{margin-top:var(--sp-2)}.rs-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--sp-2);margin:0}.rs-total{font-family:var(--font-display);font-size:18px;font-weight:600;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}.rs-classes{font-family:var(--font-body);font-size:11.5px;color:var(--ink-2)}.rs-trunc{font-family:var(--font-mono);font-size:10px;color:var(--warn)}.rs-sample{margin-top:var(--sp-2);padding:9px 11px;background:var(--surface-2);border:1px solid var(--line);border-left:2px solid var(--blue);border-radius:var(--r-card)}.rs-sample-head{display:flex;align-items:baseline;gap:var(--sp-2);margin:0 0 4px}.rs-sample-name{font-family:var(--font-display);font-size:12px;font-weight:600;color:var(--ink)}.rs-sample-class{font-family:var(--font-mono);font-size:10px;color:var(--ink-3)}.rs-sample-row{display:flex;gap:var(--sp-2);margin:1px 0}.rs-k{flex:none;width:84px;font-family:var(--font-body);font-size:10.5px;color:var(--ink-3)}.rs-v{font-family:var(--font-mono);font-size:10.5px;color:var(--ink);overflow-wrap:anywhere}.right-stack{position:absolute;top:20px;right:20px;bottom:20px;width:var(--chat-w);z-index:10;display:flex;flex-direction:column;gap:var(--sp-3)}.right-stack>.explain-panel{flex:0 0 calc(60% - (var(--sp-3) / 2));min-height:0}.right-stack>.panel-stacked{flex:0 0 calc(40% - (var(--sp-3) / 2));min-height:0}.right-stack-collapsed>.explain-panel{flex:1 1 auto}.right-stack>.panel-restore{position:static;flex:none;align-self:flex-end}.panel-stacked{position:static;width:100%}.explain-panel{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-panel);overflow:hidden;animation:ex-in .16s cubic-bezier(.2,0,0,1)}@keyframes ex-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.explain-panel{animation:none}}.ex-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-2);padding:12px 14px 10px;border-bottom:1px solid var(--line)}.ex-head-text{min-width:0}.ex-title{margin:0;font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--ink)}.ex-sub{margin:2px 0 0;font-size:11.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-head-actions{display:flex;align-items:center;gap:var(--sp-1);flex:none}.ex-all-btn{padding:4px 10px;font-family:var(--font-body);font-size:11.5px;color:var(--blue);background:var(--blue-wash);border:1px solid color-mix(in srgb,var(--blue) 26%,transparent);border-radius:var(--r-btn)}.ex-all-btn:hover{background:color-mix(in srgb,var(--blue) 14%,var(--surface))}.ex-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,38%)}.ex-visual{min-width:0;overflow-y:auto;padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-4)}.ex-info{min-width:0;overflow-y:auto;padding:var(--sp-4);border-left:1px solid var(--line);background:var(--surface-2);display:flex;flex-direction:column;gap:var(--sp-3)}.ex-info-label{margin:0 0 2px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.ex-info-strong{margin:0;font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.ex-info-line{margin:0;font-size:11.5px;line-height:1.45;color:var(--ink-2);overflow-wrap:anywhere}.ex-info-muted{color:var(--ink-3)}.ex-info-note{margin:0;padding:var(--sp-2);font-size:11px;line-height:1.45;color:var(--ink-2);background:var(--amber-wash);border-left:2px solid var(--amber);border-radius:var(--r-chip);overflow-wrap:anywhere}.ex-info-showing .ex-info-line{margin-top:2px}.ex-metric{display:flex;flex-direction:column;gap:2px}.ex-metric-value{font-family:var(--font-display);font-size:40px;font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--ink)}.ex-metric-unit{font-size:18px;color:var(--ink-2)}.ex-metric-caption{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.ex-bars{display:flex;flex-direction:column;gap:var(--sp-1)}.ex-bar{display:grid;grid-template-columns:minmax(64px,30%) minmax(0,1fr) auto;align-items:center;gap:var(--sp-2);width:100%;padding:4px 6px;text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--r-chip)}button.ex-bar:hover:not(:disabled){background:var(--surface-3);border-color:var(--line)}button.ex-bar:disabled{cursor:default;opacity:.65}.ex-bar-on{background:var(--blue-wash);border-color:color-mix(in srgb,var(--blue) 30%,transparent)}.ex-bar-label{font-size:11.5px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-bar-track{height:10px;background:var(--surface-3);border-radius:2px;overflow:hidden}.ex-bar-fill{display:block;height:100%;background:var(--blue);border-radius:2px}.ex-bar-on .ex-bar-fill{background:var(--blue-press)}.ex-bar-count{font-family:var(--font-mono);font-size:11px;color:var(--ink)}.ex-table-wrap{overflow:auto;flex:1 1 auto;min-height:0}.ex-table{width:100%;border-collapse:collapse;font-size:11px}.ex-table-cap{margin-bottom:var(--sp-1);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);text-align:left}.ex-table th{padding:0;text-align:left;border-bottom:1px solid var(--line-2);position:sticky;top:0;background:var(--surface);z-index:1}.ex-sort{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;padding:4px 6px;font-family:var(--font-mono);font-size:9.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);text-align:left;background:transparent;border:0}.ex-sort:hover{color:var(--ink-2)}.ex-table th[aria-sort=ascending] .ex-sort,.ex-table th[aria-sort=descending] .ex-sort{color:var(--ink)}.ex-sort-mark{font-size:8px;line-height:1}.ex-table td{padding:4px 6px;color:var(--ink-2);border-bottom:1px solid var(--line);overflow-wrap:anywhere}.ex-graph{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}.ex-graph-scroll{overflow:auto;max-height:320px;padding:2px}.ex-graph-canvas{position:relative;flex:none}.ex-graph-edges{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.ex-graph-edge{fill:none;stroke:var(--line-2);stroke-width:1.25}.ex-graph-arrowhead{fill:var(--line-2)}.ex-graph-node{position:absolute;display:flex;flex-direction:column;justify-content:center;gap:1px;padding:4px 8px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-chip);overflow:hidden}.ex-graph-node-seed{background:var(--surface-3);border-color:var(--line-2);border-left:3px solid var(--ink-3)}button.ex-graph-node:hover{background:var(--surface-3);border-color:var(--line-2)}.ex-graph-node-on{background:var(--blue-wash);border-color:color-mix(in srgb,var(--blue) 40%,transparent)}.ex-graph-node-label{font-size:11.5px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-graph-node-count{font-family:var(--font-mono);font-size:9.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-graph-legend{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.ex-graph-legend-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:var(--sp-2);font-size:11px;color:var(--ink-2)}.ex-graph-legend-path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-graph-legend-meaning{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.ex-graph-legend-count{font-family:var(--font-mono);font-size:11px;color:var(--ink)}.ex-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.ex-graph-node,button.ex-bar{transition:none}}.demo-curtain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:7;background:radial-gradient(120% 120% at 50% 0%,var(--sheet-0) 0%,var(--sheet-1) 70%);pointer-events:none;opacity:1;transition:opacity .26s ease}.demo-curtain.is-lifted{opacity:0}.demo-curtain-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);transition:opacity .2s ease}.demo-curtain.is-lifted .demo-curtain-inner{opacity:0}.demo-spinner{width:34px;height:34px;border:3px solid color-mix(in srgb,var(--blue) 18%,transparent);border-top-color:var(--blue);border-radius:50%;animation:demo-spin .82s linear infinite}.demo-curtain-text{margin:0;font-family:var(--font-body);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}@keyframes demo-spin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.demo-curtain{transition:none}.demo-spinner{animation-duration:2.4s}}.demo-picker-label{margin:var(--sp-2) 0 var(--sp-2);font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.demo-picker{display:flex;flex-direction:column;gap:var(--sp-2);margin:0;padding:0;list-style:none}.demo-question{display:flex;width:100%;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);font-family:var(--font-body);text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}.demo-question:hover:not(:disabled){border-color:var(--blue);background:var(--blue-wash)}.demo-question:active:not(:disabled){transform:translateY(1px)}.demo-question:disabled{cursor:default;opacity:.55}.demo-question-text{font-size:13px;font-weight:500;line-height:1.35;color:var(--ink)}.demo-question.is-answered{background:var(--surface-2)}.demo-question-blurb{font-size:11px;line-height:1.4;color:var(--ink-2)}.demo-routed{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1);animation:demo-reveal .22s ease both}.demo-routed-label{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}@keyframes demo-reveal{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.demo-routed{animation:none}}.demo-question-cost{font-family:var(--font-mono);font-size:10px;color:var(--ink-3)}.demo-route{padding:2px var(--sp-2);border-radius:var(--r-chip);font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.03em;text-transform:uppercase}.demo-route-exact_sql{background:var(--blue-wash);color:var(--blue)}.demo-route-graph_traversal{background:var(--amber-wash);color:var(--amber)}.demo-route-hybrid_evidence,.demo-route-semantic_retrieval{background:#e2f7fa;color:#0a8493}.demo-route-insufficient_evidence,.demo-route-general_knowledge{background:var(--surface-3);color:var(--ink-2)}.demo-op{font-family:var(--font-mono);font-size:10px;color:var(--ink-2)}.demo-banner{position:fixed;left:20px;bottom:150px;z-index:40;width:320px;max-width:calc(100vw - 40px);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line-2);border-radius:var(--r-card);background:color-mix(in srgb,var(--surface) 78%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-panel);font-family:var(--font-body);transition:none}.demo-banner.is-docked{max-width:none}.demo-banner-title{margin:0 0 var(--sp-1);font-family:var(--font-display);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--amber)}.demo-banner-body{margin:0 0 var(--sp-2);font-size:12px;line-height:1.45;color:var(--ink-2)}.demo-banner-link{font-size:12px;font-weight:500;color:var(--blue);text-decoration:none}.demo-banner-link:hover{text-decoration:underline}.demo-attribution{margin:var(--sp-3) 0 0;padding-top:var(--sp-2);border-top:1px solid var(--line);font-size:10px;line-height:1.5;color:var(--ink-3)}.demo-attribution a{color:var(--ink-2)}.demo-on-narrow{display:none}@media(max-width:768px){:root{--demo-viewer-h: 67%}.viewer-canvas{inset:0 0 auto 0;height:var(--demo-viewer-h)}.viewer-controls{top:12px;left:12px;bottom:auto;max-height:calc(var(--demo-viewer-h) - 24px)}.readout-line,.readout-meta{display:none}.readout{left:12px;bottom:calc(100% - var(--demo-viewer-h) + 12px);padding:6px 10px;max-width:calc(100% - 24px)}.panel{top:var(--demo-viewer-h);right:0;bottom:0;left:0;width:auto!important;border-right:none;border-bottom:none;border-left:none;border-radius:var(--r-panel) var(--r-panel) 0 0}.panel-resizer{display:none}.panel-restore{top:auto;right:12px;bottom:12px}.component-panel{top:var(--demo-viewer-h);right:0;bottom:0;left:0;width:auto;border-radius:var(--r-panel) var(--r-panel) 0 0;z-index:11}.right-stack{top:var(--demo-viewer-h);right:0;bottom:0;left:0;width:auto;gap:var(--sp-2)}.demo-banner{padding:var(--sp-2) var(--sp-3);left:12px;width:calc(100% - 24px);bottom:calc(100% - var(--demo-viewer-h) + 64px)}.demo-on-wide{display:none}.demo-on-narrow{display:block}.demo-banner-body{font-size:11px;line-height:1.4}.demo-attribution{margin-top:var(--sp-2);padding-top:var(--sp-1);font-size:9px;line-height:1.45}.demo-question{padding:var(--sp-3) var(--sp-3)}}
