@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-condensed-vietnamese-500-normal-DjeaNLFD.woff2)format("woff2"),url(./barlow-condensed-vietnamese-500-normal-CsrJDWc5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-condensed-latin-ext-500-normal-yA5ONLQ9.woff2)format("woff2"),url(./barlow-condensed-latin-ext-500-normal-B1RE8WP7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-condensed-latin-500-normal-BgYH2mbd.woff2)format("woff2"),url(./barlow-condensed-latin-500-normal-HIEiP5Ov.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-condensed-vietnamese-600-normal-A5AYRdjN.woff2)format("woff2"),url(./barlow-condensed-vietnamese-600-normal-CNlPk46_.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-condensed-latin-ext-600-normal-18ESti3H.woff2)format("woff2"),url(./barlow-condensed-latin-ext-600-normal-Clv9cIcR.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(./barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(./ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(./ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,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(./ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(./ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(./ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(./ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(./ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(./ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(./ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(./ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(./ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,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(./ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(./ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(./ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(./ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(./ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(./ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(./ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(./ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(./ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,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(./ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(./ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(./ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(./ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(./ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(./ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(./ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(./ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(./ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,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(./ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(./ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(./ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(./ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(./ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(./ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,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(./ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(./ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(./ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(./ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#edeeea;--panel:#f7f8f5;--rail:#e3e5df;--fg:#1d211f;--muted:#5f6660;--line:#c9cdc5;--accent:#2a63a8;--accent-ink:#fff;--sel:#2a63a8;--inf-end:#7bc043;--inf-mid:#17a2a0;--inf-edge:#e08a1e;--inf-face:#8a5cd6;--inf-int:#c2417f;--inf-ctr:#3b8fd9;--inf-par:#4d5bd1;--inf-from:#6b726c;--inf-guide:#7a6a4f;--inf-grid:#8f9a8a;--axis-x:#c0392b;--axis-y:#27ae60;--axis-z:#2a63a8;--vp:#f4f5f1;--vp-grid:#d4d8cf;--vp-axis:#9aa39a;--face:#e9e4d6;--face-top:#f3efe3;--face-side:#d9d2c0;--edge:#3a3f3b;--ok:#2e8b57;--warn:#c77d12;--grain:#8a5a2b;--grain-across:#c0602a;--display:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--body:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;--mono:"IBM Plex Mono","Cascadia Mono",Consolas,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1a1d1b;--panel:#222623;--rail:#1f2320;--fg:#e8eae5;--muted:#9aa39b;--line:#3a403b;--accent:#6ea3e4;--accent-ink:#0f1a28;--sel:#6ea3e4;--vp:#20242a;--vp-grid:#2f353c;--vp-axis:#5a636c;--face:#8a8470;--face-top:#a39c86;--face-side:#6f6a59;--edge:#e6e2d4;--inf-from:#a3aaa4;--inf-guide:#c9b48a;--inf-grid:#6d7a70;--inf-par:#7f8bf0;--inf-int:#e0659e;--inf-ctr:#6fb0ee;--grain:#d9a066;--grain-across:#f08a4b;--ok:#5ec98a;--warn:#e3a94a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#1a1d1b;--panel:#222623;--rail:#1f2320;--fg:#e8eae5;--muted:#9aa39b;--line:#3a403b;--accent:#6ea3e4;--accent-ink:#0f1a28;--sel:#6ea3e4;--vp:#20242a;--vp-grid:#2f353c;--vp-axis:#5a636c;--face:#8a8470;--face-top:#a39c86;--face-side:#6f6a59;--edge:#e6e2d4;--inf-from:#a3aaa4;--inf-guide:#c9b48a;--inf-grid:#6d7a70;--inf-par:#7f8bf0;--inf-int:#e0659e;--inf-ctr:#6fb0ee;--grain:#d9a066;--grain-across:#f08a4b;--ok:#5ec98a;--warn:#e3a94a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body{height:100%}body{background:var(--bg);color:var(--fg);font-family:var(--body);margin:0;font-size:13px;line-height:1.4}*{box-sizing:border-box}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.app{grid-template:"top top top""rail vp side"1fr"vcb vcb side"/56px 1fr auto;height:100%;min-height:560px;display:grid}.top{border-bottom:1px solid var(--line);background:var(--panel);flex-wrap:wrap;grid-area:top;align-items:center;gap:14px;padding:6px 12px;display:flex}.brand{font-family:var(--display);letter-spacing:.02em;align-items:center;gap:8px;font-size:20px;font-weight:600;display:flex}.brand svg{width:22px;height:22px}.menu{flex-wrap:wrap;gap:2px;display:flex}.menu button{color:var(--muted);border-radius:4px;padding:4px 8px}.menu button:hover{background:var(--rail);color:var(--fg)}.top .spacer{flex:1}.chip{border:1px solid var(--line);background:var(--bg);font-family:var(--mono);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;display:inline-flex}.chip b{color:var(--accent);font-weight:500}.views{gap:2px;display:flex}.views button{border:1px solid var(--line);font-family:var(--mono);color:var(--muted);border-radius:4px;padding:3px 7px;font-size:11px}.views button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.rail{background:var(--rail);border-right:1px solid var(--line);flex-direction:column;grid-area:rail;align-items:center;gap:2px;padding:6px 4px;display:flex;overflow:auto}.rail .grp{border-bottom:1px solid var(--line);flex-direction:column;align-items:center;gap:2px;width:100%;padding:4px 0;display:flex}.rail .grp:last-child{border-bottom:0}.tool{width:44px;height:40px;color:var(--muted);border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex;position:relative}.tool svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.tool small{letter-spacing:.02em;text-transform:uppercase;font-size:8px;line-height:1}.tool:hover{background:var(--panel);color:var(--fg)}.tool[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.tool kbd{font:9px var(--mono);opacity:.6;position:absolute;top:2px;right:4px}.vp{background:var(--vp);grid-area:vp;min-width:0;min-height:300px;position:relative;overflow:hidden}.vp canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.vp .hud{flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:8px;left:10px}.vp .hud span{font:11px var(--mono);background:color-mix(in srgb,var(--panel) 85%,transparent);border:1px solid var(--line);color:var(--muted);border-radius:4px;padding:2px 7px}.vp .tip{pointer-events:none;font:11px var(--mono);background:var(--panel);border:1px solid var(--line);color:var(--fg);white-space:nowrap;border-radius:4px;padding:3px 7px;position:absolute}.vp .tip i{vertical-align:-1px;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.vp .axes{font:10px var(--mono);color:var(--muted);position:absolute;bottom:8px;right:10px}.side{background:var(--panel);border-left:1px solid var(--line);min-width:0;min-height:0;width:var(--side-w,360px);flex-direction:column;grid-area:side;display:flex;position:relative}.side-grip{cursor:col-resize;z-index:5;touch-action:none;width:8px;position:absolute;top:0;bottom:0;left:-4px}.side-grip:hover,.side-grip:focus-visible,.side-grip.on{background:color-mix(in srgb,var(--accent) 35%,transparent)}.side-grip:focus-visible{outline:none}.tabs{border-bottom:1px solid var(--line);display:flex}.tabs button{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;flex:auto;padding:9px 3px;font-size:12.5px;font-weight:600}.tabs button[aria-selected=true]{color:var(--fg);border-bottom-color:var(--accent)}.pane{flex:1;min-height:0;padding:12px;overflow:auto}.pane h3{font-family:var(--display);letter-spacing:.02em;margin:0 0 8px;font-size:15px;font-weight:600}.pane h3 small{font-family:var(--body);color:var(--muted);text-transform:none;letter-spacing:0;margin-left:6px;font-size:11px;font-weight:400}.tree{font-family:var(--mono);margin:0;padding:0;font-size:12px;list-style:none}.tree li{border-radius:4px;align-items:center;gap:6px;padding:3px 4px;display:flex}.tree li.sel{background:color-mix(in srgb,var(--accent) 18%,transparent)}.tree li .k{color:var(--muted);font-size:10px}.tree li.lvl1{padding-left:18px}.tree li.lvl2{padding-left:32px}.tag{border-radius:2px;width:9px;height:9px;display:inline-block}table{border-collapse:collapse;width:100%;font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:11.5px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:5px 6px}th{font-family:var(--body);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}td.n,th.n{text-align:right}.tablewrap{margin:0 -4px;overflow-x:auto}.sum{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.sum div{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:8px 10px}.sum b{font-family:var(--display);font-size:20px;font-weight:600;line-height:1;display:block}.sum span{color:var(--muted);font-size:11px}.btnrow{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.btn{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:6px 10px;font-weight:500}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn:hover{filter:brightness(1.05)}.presets{grid-template-columns:1fr 1fr;gap:6px;margin:8px 0;display:grid}.presets button{border:1px solid var(--line);background:var(--bg);text-align:left;border-radius:6px;padding:8px;font-size:12px}.presets button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.presets button small{color:var(--muted);font-size:10.5px;display:block}textarea{resize:vertical;border:1px solid var(--line);background:var(--bg);width:100%;min-height:54px;color:var(--fg);font:12px var(--body);border-radius:6px;padding:7px}.result{border:1px solid var(--line);aspect-ratio:16/10;max-width:100%;color:var(--muted);text-align:center;background:var(--bg);border-radius:6px;justify-content:center;align-items:center;margin-top:10px;padding:10px;font-size:12px;display:flex}.result.done{color:#fff9ec;text-shadow:0 1px 2px #0008;background:linear-gradient(160deg,#c9b48a 0%,#8f7a52 45%,#3b3a3a 100%)}.packs{gap:6px;margin-top:8px;display:flex}.packs button{border:1px solid var(--line);background:var(--bg);font-family:var(--mono);border-radius:6px;flex:1;padding:7px 4px;font-size:11.5px;line-height:1.3}.packs button b{font-size:13px;font-weight:500;display:block}.note{color:var(--muted);margin-top:8px;font-size:11px}.vcb{border-top:1px solid var(--line);background:var(--panel);flex-wrap:wrap;grid-area:vcb;align-items:center;gap:12px;padding:6px 12px;display:flex}.vcb .hint{color:var(--muted);flex:1;min-width:160px}.vcb .hint b{color:var(--fg);font-weight:500}.vcb label{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.vcb input{border:1px solid var(--line);background:var(--bg);width:120px;color:var(--fg);font:13px var(--mono);text-align:right;border-radius:4px;padding:5px 8px}.vcb input:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.vcb .units{font:11px var(--mono);color:var(--muted)}.legend{font:10px var(--mono);color:var(--muted);flex-wrap:wrap;gap:10px;display:flex;position:absolute;bottom:8px;left:10px}.legend i{vertical-align:-1px;border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}@media (max-width:860px){.app{grid-template:"top""rail""vp"440px"vcb""side"/1fr;height:auto;min-height:0}.rail{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;gap:4px;padding:4px 8px}.rail .grp{border-bottom:0;border-right:1px solid var(--line);flex-direction:row;width:auto;padding:0 6px 0 0}.side{border-left:0;border-top:1px solid var(--line);width:auto;max-height:520px}.side-grip,.cut-controls .pin.wide{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}#root{height:100%}.vcb button.units{text-transform:inherit;border-radius:4px;padding:2px 4px}.vcb button.units:hover,.vcb button.units[aria-expanded=true]{background:var(--rail);color:var(--fg)}.vcb .vcb-box{position:relative}.vcb .hint .hint-units{border-color:var(--line);color:var(--fg)}.vcb .hint .hint-units:hover{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.unit-picker{z-index:25;background:var(--panel);border:1px solid var(--line);min-width:250px;font:13px var(--body);text-transform:none;letter-spacing:0;border-radius:6px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 6px 18px #0002}.unit-picker>b{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:4px 8px 2px;font-size:12px;font-weight:600}.unit-picker button{text-align:left;color:var(--fg);white-space:pre;border-radius:4px;justify-content:space-between;gap:16px;padding:5px 8px;display:flex}.unit-picker button:hover,.unit-picker button:focus-visible{background:var(--rail);outline:none}.unit-picker button[aria-checked=true]{color:var(--accent)}.unit-picker kbd{font:11px var(--mono);color:var(--muted)}.units-hint{z-index:25;border:1px solid var(--accent);background:var(--panel);width:min(340px,100vw - 32px);color:var(--fg);font:12.5px/1.4 var(--body);text-transform:none;letter-spacing:0;box-shadow:0 2px 10px color-mix(in srgb,var(--fg) 14%,transparent);border-radius:8px;flex-direction:column;gap:8px;padding:10px 12px;display:flex;position:absolute;bottom:calc(100% + 56px);right:0}.units-hint button{border:1px solid var(--accent);color:var(--accent);background:var(--bg);font:12px var(--body);border-radius:4px;align-self:flex-end;padding:3px 10px}.units-hint button:hover{background:var(--accent);color:var(--accent-ink)}.vcb .hint.err b,.vp .hud span.err{color:var(--warn)}.vp .tip[hidden]{display:none}.vp canvas{touch-action:none}.vcb label.idle input{color:var(--muted)}.vp .orbit-pivot{pointer-events:none;background:linear-gradient(var(--fg),var(--fg)) center/15px 1.5px no-repeat,linear-gradient(var(--fg),var(--fg)) center/1.5px 15px no-repeat;width:15px;height:15px;filter:drop-shadow(0 0 1px var(--vp)) drop-shadow(0 0 1px var(--vp));position:absolute;transform:translate(-50%,-50%)}.vp .orbit-pivot:after{content:"";background:var(--sel);width:5px;height:5px;box-shadow:0 0 0 1.5px var(--vp);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vp .snap{border:1.5px solid var(--vp);pointer-events:none;border-radius:50%;width:9px;height:9px;position:absolute;transform:translate(-50%,-50%)}.vp .snap.centre-hint{opacity:.9;width:7px;height:7px}.vp .tip.centre-tip{opacity:.85}.btn:disabled{cursor:not-allowed}.vp .vlabel{pointer-events:none;font:11px var(--mono);background:color-mix(in srgb,var(--panel) 90%,transparent);border:1px solid var(--line);color:var(--fg);white-space:nowrap;border-radius:3px;padding:1px 5px;position:absolute;transform:translate(-50%,-50%)}.vp .vlabel.dim{border-color:var(--accent);color:var(--accent)}.vp .vlabel.live{border-color:var(--sel);font-weight:500;transform:translate(14px,12px)}.vp .selbox{pointer-events:none;border:1px solid var(--sel);background:color-mix(in srgb,var(--sel) 8%,transparent);position:absolute}.vp .selbox.crossing{background:color-mix(in srgb,var(--sel) 4%,transparent);border-style:dashed}.menu{position:relative}.menu .drop{z-index:20;background:var(--panel);border:1px solid var(--line);border-radius:6px;flex-direction:column;min-width:220px;margin-top:4px;padding:4px;display:flex;position:absolute;top:100%;box-shadow:0 6px 18px #0002}.menu .drop button{text-align:left;color:var(--fg);border-radius:4px;justify-content:space-between;gap:16px;padding:5px 8px;display:flex}.menu .drop button:hover{background:var(--rail)}.menu .drop kbd{font:11px var(--mono);color:var(--muted)}.menu .drop hr{border:0;border-top:1px solid var(--line);margin:4px 2px}.menu .drop .subwrap{flex-direction:column;display:flex;position:relative}.menu .drop .subwrap>button{width:100%}.menu .drop.sub{min-width:250px;margin:0 0 0 2px;top:-5px;left:100%}.menu .drop button:disabled{color:var(--muted);cursor:default;background:0 0}.menu button[aria-expanded=true]{background:var(--rail);color:var(--fg)}.vp .hud,.vp .legend,.vp .axes{pointer-events:none}.vcb .hint .hint-action{border:1px solid var(--accent);color:var(--accent);background:var(--bg);font:12px var(--body);border-radius:4px;margin-left:8px;padding:1px 8px}.vcb .hint .hint-action:hover{background:var(--accent);color:var(--accent-ink)}.vp .vlabel.grip{border:1.5px solid var(--sel);background:var(--panel);border-radius:2px;width:9px;height:9px;padding:0;transform:translate(-50%,-50%)}.vp .vlabel.grip.hot{background:var(--sel)}.vp .vlabel.grip.fixed{border-color:var(--warn);border-radius:50%}.app.dropping .vp{outline:2px dashed var(--sel);outline-offset:-6px}.drop-hint{z-index:40;pointer-events:none;background:var(--panel);border:1px solid var(--line);color:var(--fg);text-align:center;border-radius:8px;max-width:420px;padding:14px 18px;font-size:13px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #0003}.import-report{z-index:30;background:var(--panel);border:1px solid var(--line);width:min(440px,100vw - 32px);max-height:40vh;color:var(--fg);border-radius:8px;font-size:12px;position:fixed;bottom:64px;left:68px;overflow:auto;box-shadow:0 8px 24px #0002}.import-report header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.import-report header button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:16px;line-height:1}.import-report ul{margin:0;padding:6px 10px 8px 26px}.import-report li{margin:2px 0;line-height:1.35}.import-report p{color:var(--muted);margin:0;padding:6px 10px 8px}.import-report.err header b{color:var(--warn)}button.chip{cursor:pointer;color:var(--fg)}button.chip:hover{border-color:var(--accent)}.chip[data-state=unreachable] b,.chip[data-state=unlinked] b,.chip[data-state=connecting] b{color:var(--muted)}.result{position:relative;overflow:hidden}.result.done.img{background:var(--bg);text-shadow:none;padding:0}.result img{object-fit:contain;width:100%;height:100%;display:block}.result.busy .preview{opacity:.35;filter:sepia(.4);position:absolute;inset:0}.result .stage{font-family:var(--mono);color:var(--fg);font-size:11.5px;position:relative}.result .cap{font:10.5px var(--mono);background:color-mix(in srgb,var(--panel) 85%,transparent);color:var(--muted);border-radius:4px;padding:2px 6px;position:absolute;bottom:6px;left:6px}.result.err{color:var(--warn)}.result a{color:var(--accent)}.history{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px;display:grid}.history button{border:1px solid var(--line);aspect-ratio:16/10;background:var(--bg);border-radius:4px;padding:0;overflow:hidden}.history button:hover{border-color:var(--accent)}.history img{object-fit:cover;width:100%;height:100%;display:block}.history .gone{aspect-ratio:16/10;border:1px dashed var(--line);font:10px var(--mono);color:var(--muted);text-align:center;border-radius:4px;justify-content:center;align-items:center;display:flex}.history .note{grid-column:1/-1;margin:0}.packs button:disabled{opacity:.6;cursor:progress}.linkish{color:var(--accent);text-underline-offset:2px;font-size:inherit;padding:0;text-decoration:underline}.claim{flex-direction:column;gap:6px;margin-top:6px;display:flex}.claim label{color:var(--muted);flex-direction:column;gap:3px;font-size:11px;display:flex}.claim input{border:1px solid var(--line);background:var(--bg);color:var(--fg);font:12px var(--body);border-radius:6px;padding:6px 8px}.claim .btnrow{margin-top:2px}.note.svc{font-family:var(--mono);font-size:10.5px}.note.svc[data-connection=connected]:before{content:"";background:var(--inf-end);vertical-align:0;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.note.svc[data-connection=unreachable]:before,.note.svc[data-connection=unlinked]:before{content:"";background:var(--warn);vertical-align:0;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.tree.outline li,.tree.tags li{cursor:default;-webkit-user-select:none;user-select:none;min-height:24px}.tree.outline li:hover,.tree.tags li:hover{background:color-mix(in srgb,var(--rail) 70%,transparent)}.tree.outline li.sel{background:color-mix(in srgb,var(--accent) 18%,transparent)}.tree li.dim .label{opacity:.55}.tree.outline.windowed li{box-sizing:border-box;height:24px;min-height:0;overflow:hidden}.tree li .label{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:58%;overflow:hidden}.tree li .k{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;overflow:hidden}.tree li .k.editing{color:var(--accent);flex:none;font-weight:500}.tree li.open>.label{font-weight:600}.tree li .chev{width:14px;height:14px;color:var(--muted);background:0 0;border:0;flex:0 0 14px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tree li .row-tools{flex:none;gap:2px;margin-left:auto;display:inline-flex}.tree li .row-tools button{width:20px;height:20px;color:var(--muted);background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tree li .row-tools button:hover:not(:disabled){background:var(--rail);color:var(--fg)}.tree li .row-tools button[aria-pressed=true],.tree li .row-tools button.on{color:var(--warn)}.tree li .row-tools button:disabled{opacity:.35}.tree li input.rename{min-width:0;font:12px var(--mono);border:1px solid var(--accent);background:var(--bg);color:var(--fg);border-radius:3px;flex:auto;padding:1px 4px}.tree.tags .swatch{cursor:pointer;display:inline-flex;position:relative}.tree.tags .swatch input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.tree.tags .tag{width:11px;height:11px}.pg{vertical-align:-2px;flex:none}.btn .pg{margin-right:2px}.pane .placeholder{border:1px dashed var(--line);color:var(--fg);background:var(--bg);border-radius:6px;padding:10px;font-size:13px;line-height:1.45}.ctxmenu{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:6px;flex-direction:column;min-width:200px;padding:4px;font-size:13px;display:flex;position:fixed;box-shadow:0 6px 18px #0002}.ctxmenu button{text-align:left;color:var(--fg);background:0 0;border:0;border-radius:4px;justify-content:space-between;gap:16px;padding:5px 8px;display:flex}.ctxmenu button:hover:not(:disabled){background:var(--rail)}.ctxmenu button:disabled{color:var(--muted);cursor:default}.ctxmenu kbd{font:11px var(--mono);color:var(--muted)}.ctxmenu hr{border:0;border-top:1px solid var(--line);margin:4px 2px}.app{grid-template-rows:auto auto 1fr auto;grid-template-areas:"top top top""rail scenes side""rail vp side""vcb vcb side"}.scenes{background:var(--panel);border-bottom:1px solid var(--line);grid-area:scenes;align-items:flex-end;gap:2px;min-width:0;padding:4px 8px 0;display:flex}.scenes .scene-list{gap:2px;min-width:0;display:flex;overflow-x:auto}.scenes button[role=tab],.scenes .scene-add{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--line);background:var(--bg);color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;border-radius:5px 5px 0 0;margin-bottom:-1px;padding:3px 10px;font-size:13px;font-weight:600}.scenes .scene-add{background:0 0;border-color:#0000}.scenes .scene-add:hover{color:var(--fg)}.scenes button[role=tab][aria-selected=true]{color:var(--fg);border-bottom-color:var(--accent)}.scenes .scene-add{align-items:center;gap:4px;padding:3px 7px;display:inline-flex}.scenes input.rename{font:12px var(--mono);border:1px solid var(--accent);background:var(--bg);width:110px;color:var(--fg);border-radius:4px;padding:2px 5px}.name-dialog{z-index:45;background:var(--panel);border:1px solid var(--line);border-radius:8px;width:min(340px,100vw - 32px);padding:10px 12px;font-size:13px;position:fixed;top:30%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 24px #0003}.name-dialog header{margin-bottom:8px}.name-dialog label{color:var(--muted);flex-direction:column;gap:4px;font-size:11px;display:flex}.name-dialog input{font:13px var(--body);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:5px;padding:5px 7px}.name-dialog input:focus{outline:2px solid var(--accent);outline-offset:-1px}@media (max-width:860px){.app{grid-template-rows:auto auto auto 440px auto auto;grid-template-areas:"top""rail""scenes""vp""vcb""side"}}.cut-controls{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 8px;font-size:11.5px;display:flex}.cut-controls label{align-items:center;gap:6px;display:inline-flex}.cut-controls select{font:12px var(--body);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:4px;padding:2px 4px}.cut-controls .check input{accent-color:var(--accent);margin:0}.cutlist table tbody tr{cursor:pointer}.cutlist table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 7%,transparent)}.cutlist table tbody tr.sel td{background:color-mix(in srgb,var(--accent) 18%,transparent)}.cutlist table tbody tr.dim td{color:var(--muted)}.cutlist table{font-variant-numeric:tabular-nums;font-size:11px}.cutlist .tablewrap{margin:0}.cutlist table.fit td.n,.cutlist table.fit th.n{padding-left:6px}.cutlist table.fit{table-layout:fixed;width:100%}.cutlist table.fit td{white-space:normal;text-overflow:clip;vertical-align:baseline;overflow:visible}.cutlist table.fit th{white-space:nowrap;text-overflow:clip;overflow:visible}.cutlist table.fit td.n .v .u{white-space:nowrap}.cut-controls .pin{font:11.5px var(--body);border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:4px;padding:2px 8px}.cut-controls .pin.on{border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cut-controls .pin:disabled{opacity:.5;cursor:default}.cutlist table.fit td.part .name,.cutlist table.fit td.mat{overflow-wrap:normal;word-break:normal}.cutlist table.fit .long{overflow-wrap:anywhere}.cutlist table.fit td.part small{white-space:normal}.cutlist table.fit td.part small .sep{white-space:nowrap}.cutlist table.fit td.part .name,.cutlist table.fit td.mat{font-family:var(--body);font-size:11.5px}.cutlist table tbody tr.menu td{background:color-mix(in srgb,var(--accent) 12%,transparent);box-shadow:inset 0 1px 0 var(--accent),inset 0 -1px 0 var(--accent)}.ctxtitle{font:600 12px var(--body);color:var(--muted);border-bottom:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;max-width:260px;margin:0 0 3px;padding:4px 8px 5px;overflow:hidden}.cutlist th,.cutlist td{padding:5px 3px}.cutlist th{letter-spacing:.02em;font-size:10px}.cutlist th:first-child,.cutlist td:first-child{padding-left:4px}.cutlist td.part .name{display:block}.cutlist td.part small{font-family:var(--body);color:var(--muted);margin-top:1px;font-size:10px;line-height:1.25;display:block}.cutlist td.set{color:var(--accent)}.cutlist td.part input.inc{float:left;width:12px;height:12px;accent-color:var(--accent);cursor:pointer;margin:1px 4px 0 0}.cutlist table tbody tr.out td{color:var(--muted)}.cutlist table tbody tr.out td .name,.cutlist table tbody tr.out td.n .v{text-decoration:line-through}.cutlist table tbody tr[data-not-solid] td.part small{color:var(--warn)}.cutlist table tbody tr.has-why td{border-bottom:0;padding-bottom:1px}.cutlist table.fit tbody tr.why td{white-space:normal;text-overflow:clip;padding-top:0}.cutlist table tbody tr.why small.why{font-family:var(--body);color:var(--fg);opacity:.85;overflow-wrap:normal;padding-left:16px;font-size:10.5px;line-height:1.3;display:block}.cutlist table.fit.stack,.cutlist table.fit.stack thead,.cutlist table.fit.stack tbody{width:100%;display:block}.cutlist table.fit.stack colgroup{display:none}.cutlist table.fit.stack tr{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;display:flex}.cutlist table.fit.stack th,.cutlist table.fit.stack td{box-sizing:border-box;border-bottom:0;flex:none;min-width:0;display:block}.cutlist table.fit.stack tr>:first-child{flex:0 0 100%}.cutlist table.fit.stack tr>:nth-child(2){width:var(--cut-q)}.cutlist table.fit.stack tr>:nth-child(3){width:var(--cut-t)}.cutlist table.fit.stack tr>:nth-child(4){width:var(--cut-w)}.cutlist table.fit.stack tr>:nth-child(5){width:var(--cut-l)}.cutlist table.fit.stack tr>:nth-child(6){flex:1 0 0;min-width:min-content;padding-left:8px}.cutlist table.fit.stack thead th.part{padding-bottom:0}.cutlist table.fit.stack tbody td.part{padding-bottom:1px}.cutlist table.fit.stack tbody td:not(.part){padding-top:1px}.cutlist table.fit.stack tbody tr.has-why{border-bottom:0}.cut-controls .pin.wide{margin-left:auto}.cutlist .note.geom{flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:6px 0 4px;display:flex}.cutlist .note.geom button.link{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.cutlist .note.geom button.link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cutlist i.grain{vertical-align:0;background:var(--grain);width:9px;height:7px;margin-left:2px;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 7'%3E%3Cpath d='M0 3h7M5 0.5l3 2.5-3 2.5' stroke='black' stroke-width='1.3' fill='none'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 7'%3E%3Cpath d='M0 3h7M5 0.5l3 2.5-3 2.5' stroke='black' stroke-width='1.3' fill='none'/%3E%3C/svg%3E") 50%/contain no-repeat}.cutlist .sum span{overflow-wrap:anywhere;display:block}.ctxmenu button[role=menuitemradio]{justify-content:space-between}.name-dialog select{font:13px var(--body);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:5px;padding:5px 7px}.name-dialog label+label{margin-top:8px}.print-report{display:none}@media print{body.print-cutlist #root{display:none!important}body.print-cutlist{color:#000;background:#fff!important}body.print-cutlist .print-report{color:#000;margin:0;font:10.5pt IBM Plex Sans,Segoe UI,Arial,sans-serif;display:block}.print-report h1{margin:0 0 2pt;font:600 18pt Barlow Condensed,Arial Narrow,Arial,sans-serif}.print-report h2{margin:12pt 0 4pt;font:600 12pt Barlow Condensed,Arial Narrow,Arial,sans-serif}.print-report header p{color:#444;margin:0 0 10pt;font-size:9.5pt}.print-report table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font:9.5pt IBM Plex Mono,Consolas,monospace}.print-report th{text-transform:uppercase;letter-spacing:.04em;color:#444;text-align:left;border-bottom:1.2pt solid #000;padding:3pt 4pt;font:600 8pt IBM Plex Sans,Arial,sans-serif}.print-report td{white-space:normal;color:#000;background:0 0;border-bottom:.4pt solid #bbb;padding:3pt 4pt}.print-report .n{text-align:right}.print-report tr{break-inside:avoid}.print-report ul{margin:0;padding-left:14pt}.print-report footer{color:#555;margin-top:14pt;font-size:8.5pt}@page{size:letter;margin:.6in}}.btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.nesting{border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.nest-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.nest-head h4{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;margin:0;font-size:14px;font-weight:600}.nest-head .btn{padding:3px 8px;font-size:12px}.nest-controls input{width:62px;font:12px var(--mono);border:1px solid var(--line);background:var(--bg);color:var(--fg);text-align:right;border-radius:4px;padding:2px 4px}.nest-controls label.err input{border-color:var(--warn);outline:1px solid var(--warn)}.nest-body.busy{opacity:.6;transition:opacity .15s .1s}.nest-sum{grid-template-columns:1fr 1fr}.nest-sum .wide{grid-column:1/-1}.nest-unplaced{border:1px solid var(--warn);background:color-mix(in srgb,var(--warn) 9%,transparent);border-radius:6px;margin-top:10px;padding:7px 9px;font-size:11.5px}.nest-unplaced ul{margin:4px 0 0;padding-left:16px}.nesting .tag{font-family:var(--mono);color:var(--accent);font-weight:600}.nest-piece{margin:12px 0 0;padding:0}.nest-piece figcaption{margin-bottom:4px;font-size:11.5px;line-height:1.3}.nest-piece figcaption .stock{font-family:var(--mono);font-size:11px}.nest-piece figcaption small{color:var(--muted);font-size:10.5px;display:block}.nest-diagram{border-radius:2px;width:100%;height:auto;max-height:260px;display:block}.nest-diagram .stock{fill:color-mix(in srgb,var(--grain) 16%,var(--bg));stroke:var(--fg);stroke-width:1.2px;vector-effect:non-scaling-stroke}.nest-diagram .trim{fill:none;stroke:var(--muted);stroke-dasharray:4 3;stroke-width:1px;vector-effect:non-scaling-stroke}.nest-diagram .part{cursor:pointer}.nest-diagram .part rect{fill:var(--panel);stroke:var(--accent);stroke-width:1px;vector-effect:non-scaling-stroke}.nest-diagram .part text{fill:var(--fg);font-family:var(--mono);text-anchor:middle;pointer-events:none;font-weight:600}.nest-diagram .part:hover rect,.nest-diagram .part.on rect{fill:color-mix(in srgb,var(--sel) 28%,var(--panel));stroke-width:2px}.nest-diagram .cut{stroke:var(--warn);stroke-width:1px;stroke-dasharray:3 2;vector-effect:non-scaling-stroke;pointer-events:none;opacity:.8}.nest-diagram .cut.trimcut{stroke:var(--muted)}.nest-piece details{margin-top:4px;font-size:11.5px}.nest-piece summary{cursor:pointer;color:var(--muted);align-items:center;gap:8px;display:flex}.nest-piece summary .linkish{margin-left:auto}.nest-cuts{margin:4px 0;padding-left:22px}.nest-cuts li{margin:1px 0}.nest-parts{font-family:var(--mono);margin:4px 0;padding:0;font-size:11px;list-style:none}.linkish{color:var(--accent);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0 2px;font-size:11.5px;text-decoration:underline}.stock-dialog{width:min(560px,100vw - 32px);max-height:calc(100vh - 48px);top:50%;overflow:auto}.stock-dialog header small{color:var(--muted)}.stock-dialog h5{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin:10px 0 4px;font-size:13px;font-weight:600}.stock-dialog table{font-family:var(--body);font-size:12px}.stock-dialog td{white-space:normal;padding:4px}.stock-dialog td small{color:var(--muted);font-size:10.5px;font-family:var(--mono);display:block}.stock-dialog td.act{text-align:right;white-space:nowrap}.stock-dialog tr.sel td{background:color-mix(in srgb,var(--accent) 14%,transparent)}.stock-dialog .stock-list{border:1px solid var(--line);border-radius:6px;max-height:220px;overflow:auto}.stock-dialog .stock-form{flex-wrap:wrap;gap:8px;display:flex}.stock-dialog .stock-form label+label{margin-top:0}.stock-dialog .stock-form input{width:84px}.stock-dialog .stock-form input[aria-label=Name]{width:200px}.stock-dialog select{font:12px var(--body);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:4px;max-width:100%;padding:3px 5px}.demo-banner{z-index:30;border:1px solid var(--line);background:var(--panel);max-width:calc(100vw - 32px);color:var(--fg);box-shadow:0 2px 10px color-mix(in srgb,var(--fg) 14%,transparent);border-radius:999px;align-items:center;gap:10px;padding:6px 6px 6px 12px;font-size:12px;display:flex;position:fixed;bottom:52px;left:50%;transform:translate(-50%)}.demo-banner b{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:13px;font-weight:600}.demo-banner span{color:var(--muted)}.demo-banner a{color:var(--accent);white-space:nowrap;font-weight:500}.demo-banner button{width:24px;height:24px;color:var(--muted);border-radius:50%;font-size:16px;line-height:1}.demo-banner button:hover{background:var(--rail);color:var(--fg)}@media (max-width:640px){.demo-banner{border-radius:10px;flex-wrap:wrap;bottom:12px}.demo-banner span{flex-basis:100%;order:3}}#pane-materials h4,#pane-styles h4{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin:14px 0 6px;font-size:13px;font-weight:600}.swatch{border:1px solid var(--line);background-size:cover;border-radius:4px;flex:none;display:inline-block}.mat-active{border:1px solid var(--line);background:var(--bg);border-radius:6px;align-items:center;gap:10px;padding:8px;display:flex}.mat-active b{font-size:13px;display:block}.mat-active small{color:var(--muted);font-size:11px;line-height:1.3;display:block}.mat-grid{grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:6px;display:grid}.mat-grid .mat{border:1px solid #0000;border-radius:6px;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:4px 2px;display:flex}.mat-grid .mat span:last-child{text-align:center;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:10.5px;line-height:1.15;display:-webkit-box;overflow:hidden}.mat-grid .mat:hover{background:var(--rail)}.mat-grid .mat[aria-selected=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.mat-search{gap:6px;display:flex}.mat-search input{border:1px solid var(--line);background:var(--bg);min-width:0;color:var(--fg);font:inherit;border-radius:4px;flex:1;padding:4px 7px}.mini{border:1px solid var(--line);background:var(--bg);white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:12px}.mini:hover:not(:disabled){border-color:var(--accent)}.mini:disabled{opacity:.5;cursor:default}.mini.danger{color:#b8432f}.chips{flex-wrap:wrap;gap:4px;margin:6px 0 8px;display:flex}.chips button{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:11px}.chips button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.mat-edit{border:1px solid var(--line);border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 8px;margin-top:10px;padding:8px;display:grid}.mat-edit label{color:var(--muted);flex-direction:column;gap:2px;min-width:0;font-size:11px;display:flex}.mat-edit input,.mat-edit select{border:1px solid var(--line);background:var(--bg);color:var(--fg);font:12px var(--body);border-radius:4px;width:100%;min-width:0;padding:3px 6px}.mat-edit input[type=color]{height:26px;padding:0}.mat-edit .row{grid-column:1/-1;justify-content:space-between;gap:6px;display:flex}.mat-edit .note{grid-column:1/-1}.note.err{color:#b8432f}.styles .presets{grid-template-columns:1fr 1fr 1fr;gap:5px;display:grid}.styles .presets button{border:1px solid var(--line);border-radius:6px;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font-size:11px;display:flex}.styles .presets button[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.preset-chip{border:1px solid var(--edge);background:linear-gradient(135deg,#d9c2a0 0 50%,#b48a5a 50%);border-radius:3px;width:38px;height:22px}.preset-chip.face-hidden_line{background:#faf8f1}.preset-chip.face-shaded{background:linear-gradient(135deg,#cdb38a 0 50%,#a88a5e 50%)}.preset-chip.face-x_ray{background:repeating-linear-gradient(45deg,transparent 0 4px,color-mix(in srgb,var(--edge) 30%,transparent) 4px 5px)}.preset-chip.face-monochrome{background:linear-gradient(135deg,var(--face-top) 0 50%,var(--face-side) 50%)}.styles .radios{flex-wrap:wrap;gap:4px 12px;display:flex}.chk{align-items:center;gap:5px;font-size:12px;display:inline-flex}.colour-row{justify-content:space-between;align-items:center;margin:3px 0;display:flex}.colour-row input[type=color]{border:1px solid var(--line);border-radius:3px;width:44px;height:22px;padding:0}.shadows{flex-direction:column;gap:6px;display:flex}.shadows .date-row{align-items:flex-end;gap:6px;display:flex}.shadows .date-row label{color:var(--muted);flex-direction:column;font-size:11px;display:flex}.shadows select{border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:4px;padding:2px 5px}.slider{color:var(--muted);flex-direction:column;gap:1px;font-size:11px;display:flex}.slider b{color:var(--fg);font-weight:500;font-family:var(--mono)}.slider input{width:100%}.vp .vlabel.uvlabel{font:11px var(--mono);background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:1px 4px;transform:translate(8px,-50%)}.tabs button.glyph-tab{flex:0 0 34px;justify-content:center;align-items:center;padding:6px 0;display:flex}.tabs button.glyph-tab svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;width:18px;height:18px}.plugins h4{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin:14px 0 6px;font-size:13px;font-weight:600}.plugin-section{border:1px solid var(--line);background:var(--bg);border-radius:6px;margin-bottom:8px}.plugin-section>summary{cursor:pointer;padding:7px 9px;font-size:13px;list-style-position:inside}.plugin-section>summary small{color:var(--muted);margin-left:4px}.plugin-section[open]>summary{border-bottom:1px solid var(--line)}.plugin-panel{flex-direction:column;gap:7px;padding:8px 9px 10px;font-size:12px;display:flex}.pf-field{color:var(--muted);grid-template-columns:96px 1fr;align-items:center;gap:6px;font-size:12px;display:grid}.pf-field input,.pf-field select{font:12.5px var(--body);border:1px solid var(--line);background:var(--panel);color:var(--fg);border-radius:5px;min-width:0;padding:4px 6px}.pf-field input:focus,.pf-field select:focus{outline:2px solid var(--accent);outline-offset:-1px}.pf-field input[aria-invalid=true]{border-color:var(--warn)}.pf-error{color:var(--warn);grid-column:2;font-size:11px;font-style:normal}.pf-check{color:var(--fg);align-items:center;gap:6px;font-size:12.5px;display:flex}.pf-note{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.pf-note.warning{color:var(--warn)}.pf-note.error{color:var(--axis-x)}.pf-table-wrap{max-width:100%;overflow-x:auto}.pf-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:11.5px}.pf-table th{font-family:var(--display);color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);padding:3px 4px;font-size:11px;font-weight:600}.pf-table td{border-bottom:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;max-width:120px;padding:3px 4px;overflow:hidden}.pf-image{border-radius:4px;max-width:100%}.plugin-panel .btnrow{margin-top:2px}.plugin-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.plugin-row{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:8px 9px;font-size:12px}.plugin-row .btnrow{margin-top:6px}.plugin-row .btn{padding:4px 8px;font-size:12px}.plugin-head{align-items:baseline;gap:6px;display:flex}.plugin-head small{color:var(--muted)}.plugin-state{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:9px;margin-left:auto;padding:1px 6px;font-size:11px}.plugin-state.s-running{color:var(--ok);border-color:var(--ok)}.plugin-state.s-starting{color:var(--accent);border-color:var(--accent)}.plugin-state.s-unresponsive,.plugin-state.s-crashed,.plugin-state.s-failed,.plugin-state.s-invalid,.plugin-state.s-stopped{color:var(--warn);border-color:var(--warn)}.plugin-meta{color:var(--muted);margin-top:2px;font-size:11px}.plugin-desc{color:var(--fg);margin:5px 0 0;line-height:1.4}.plugin-chips{flex-wrap:wrap;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.plugin-chips li{font:11px var(--mono);background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:4px;padding:1px 5px}.plugin-error,.plugin-errors{color:var(--warn);overflow-wrap:anywhere;margin:6px 0 0;font-size:11.5px;line-height:1.35}.plugin-errors{padding-left:16px}.plugin-console{max-height:180px;font:11px/1.4 var(--mono);background:var(--panel);border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:5px;margin:6px 0 0;padding:6px;overflow:auto}.plugin-dialog{width:min(380px,100vw - 32px)}.plugin-dialog header small{color:var(--muted);margin-left:4px}.plugin-asks{color:var(--muted);margin:8px 0 4px;font-size:12px}.plugin-perms{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.plugin-perms li{grid-template-columns:auto 1fr;column-gap:6px;font-size:12.5px;display:grid}.plugin-perms code{font:11px var(--mono);color:var(--muted);justify-self:end}.plugin-perms span{color:var(--muted);grid-column:1/-1;font-size:11.5px}.plugin-dialog .note{margin-top:8px}.rail .grp[data-group=plugins] .tool svg{stroke:currentColor}:root{--section:#c4622d;--section-fill:#a79e90;--paper:#fff;--paper-ink:#1d211f;--paper-shadow:#14181638;--sheet-desk:#d9dbd5}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--section:#e58a55;--section-fill:#6f685d;--paper:#fbfbf8;--paper-ink:#1d211f;--paper-shadow:#0000008c;--sheet-desk:#2a2e2b}}:root[data-theme=dark]{--section:#e58a55;--section-fill:#6f685d;--paper:#fbfbf8;--paper-ink:#1d211f;--paper-shadow:#0000008c;--sheet-desk:#2a2e2b}.field-row{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin:4px 0;font-size:11px;display:flex}.field-row select,.field-row input{font:inherit;color:var(--fg);background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:1px 4px}.tree.outline li[data-kind=section] .label:before{content:"";border:1.5px solid var(--muted);vertical-align:-1px;border-radius:1px;width:9px;height:9px;margin-right:5px;display:inline-block;transform:skewY(-18deg)}.tree.outline li[data-kind=section].active .label:before{border-color:var(--section);background:color-mix(in srgb,var(--section) 22%,transparent)}.tree.outline li[data-kind=section].active .k:not(.editing){color:var(--section)}.app.sheets-mode>.rail:not(.sheet-rail),.app.sheets-mode>.side:not(.sheet-side),.app.sheets-mode>.scenes:not(.sheet-tabs){display:none}.app.sheets-mode>.vp:not(.sheet-area){visibility:hidden}.mode-switch{border:1px solid var(--line);border-radius:6px;flex:none;align-self:center;margin:0 8px 3px 0;display:inline-flex;overflow:hidden}.mode-switch button{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--bg);border:0;padding:2px 10px;font-size:12px;font-weight:600}.mode-switch button+button{border-left:1px solid var(--line)}.mode-switch button[aria-checked=true]{background:var(--accent);color:var(--accent-ink)}.mode-switch small{font:10px var(--mono);opacity:.8;margin-left:5px}.sheet-area{background:var(--sheet-desk);outline:none}.sheet-canvas{touch-action:none;-webkit-user-select:none;user-select:none;outline:none;position:absolute;inset:0;overflow:hidden}.sheet-canvas:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.sheet-svg{display:block}.sheet-shadow{fill:var(--paper-shadow);filter:blur(3px)}.sheet-grid-dot{fill:#283c5047}.sheet-grid,.sheet-overlay{pointer-events:none}.sheet-overlay .sh-sel{fill:none;stroke:var(--sel);stroke-width:1.5px;stroke-dasharray:5 3}.sheet-overlay .sh-hover{fill:none;stroke:var(--sel);stroke-width:1px;opacity:.5}.sheet-overlay .sh-box{fill:color-mix(in srgb,var(--sel) 8%,transparent);stroke:var(--sel);stroke-width:1px}.sheet-overlay .sh-place{fill:none;stroke:var(--section);stroke-width:1.5px;stroke-dasharray:6 3}.sheet-overlay .sh-place.thin{stroke-width:1px;stroke-dasharray:2 3}.sheet-overlay .sh-handle{fill:#fff;stroke:var(--sel);stroke-width:1.5px}.sheet-overlay .sh-picked{fill:var(--section);stroke:#fff;stroke-width:1.5px}.sheet-overlay .sh-snap rect,.sheet-overlay .sh-snap path,.sheet-overlay .sh-snap circle{fill:none;stroke-width:2px}.sheet-overlay .sh-snap.endpoint rect{stroke:#1f9d55}.sheet-overlay .sh-snap.midpoint path{stroke:#2a7fd4}.sheet-overlay .sh-snap.intersection path{stroke:#111}.sheet-overlay .sh-snap.on-edge circle{stroke:#c0392b}.sheet-overlay .sh-snap text{font:11px var(--mono);fill:var(--paper-ink);paint-order:stroke;stroke:#fff;stroke-width:3px}.sheet-text{z-index:3;border:1.5px solid var(--section);color:#1d211f;resize:both;background:#fff;border-radius:4px;min-width:180px;min-height:44px;padding:4px 6px;font:13px Helvetica,Arial,sans-serif;position:absolute;box-shadow:0 4px 12px #0003}.sheet-hud{pointer-events:none;align-items:center;gap:6px;display:flex;position:absolute;top:8px;left:10px}.sheet-hud span,.sheet-hud button{font:11px var(--mono);background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--line);color:var(--muted);pointer-events:auto;border-radius:4px;padding:2px 7px}.sheet-hud button{cursor:pointer}.sheet-hud button[aria-pressed=true]{color:var(--fg);border-color:var(--accent)}.sheet-empty{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:14px;display:flex;position:absolute;inset:0}.sheets-pane{flex-direction:column;gap:6px;display:flex}.sp-section{border:1px solid var(--line);background:var(--bg);border-radius:6px}.sp-section>summary{cursor:pointer;font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;color:var(--fg);padding:6px 9px;font-size:13px;font-weight:600}.sp-body{flex-direction:column;gap:6px;padding:2px 9px 9px;display:flex}.sp-field{color:var(--muted);flex-direction:column;gap:2px;font-size:11px;display:flex}.sp-field input,.sp-field select,.sp-field textarea{font:12.5px var(--body);color:var(--fg);background:var(--panel);border:1px solid var(--line);box-sizing:border-box;border-radius:4px;width:100%;min-width:0;padding:3px 6px}.sp-grid2>*{min-width:0}.sp-field input.mono{font-family:var(--mono);font-size:12px}.sp-field input:focus,.sp-field select:focus,.sp-field textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.sp-bad .sp-field input{border-color:var(--warn)}.sp-grid2{grid-template-columns:1fr 1fr;gap:6px;display:grid}.sp-check{color:var(--fg);align-items:center;gap:6px;font-size:12px;display:flex}.sp-check input{accent-color:var(--accent);margin:0}.sp-cols{border:0;grid-template-columns:1fr 1fr;gap:3px 8px;margin:0;padding:0;display:grid}.sp-cols legend{color:var(--muted);margin-bottom:3px;padding:0;font-size:11px}.sp-seg{flex-wrap:wrap;gap:3px;display:flex}.sp-seg button{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:4px;flex:auto;padding:3px 7px;font-size:11.5px}.sp-seg button[aria-checked=true]{border-color:var(--accent);color:var(--fg);box-shadow:inset 0 0 0 1px var(--accent)}.sp-read{color:var(--fg);margin:0;font-size:12px}.sp-read b{font-family:var(--mono)}.sheets-pane .btnrow{margin-top:2px}.sheets-pane .btn{padding:4px 8px;font-size:12px}.sheets-pane .note{margin-top:0}.sheets-pane .note.err{color:var(--warn)}@media (max-width:860px){.app.sheets-mode{grid-template-rows:auto auto auto 520px auto auto}}.print-sheets{display:none}@media print{body.print-sheet #root{display:none!important}body.print-sheet{background:#fff!important;margin:0!important}body.print-sheet .print-sheets{display:block}.print-sheet-page{overflow:hidden}.print-sheet-page+.print-sheet-page{break-before:page}.print-sheet-page svg{display:block}}
