@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/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-panel:#15181e;--bg-card:#1c2027;--bg-input:#232934;--bg-hover:#2a313e;--track:#38414f;--line:#2b313c;--line-soft:#232831;--text:#e6eaf1;--text-dim:#8d97a8;--text-faint:#5d6678;--accent:#f0a83e;--accent-soft:#f0a83e29;--good:#4cc46c;--info:#4d9fff;--danger:#e25d5d;--radius:8px;--radius-sm:5px;--font-ui:"IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%;font-family:var(--font-ui);color:var(--text);margin:0;font-size:13px;overflow:hidden}.app{background:#000;height:100%;display:flex}.panel{background:var(--bg-panel);border-right:1px solid #0a0c10;flex-direction:column;width:400px;min-width:400px;height:100%;display:flex;overflow-y:auto}.panel::-webkit-scrollbar{width:10px}.panel::-webkit-scrollbar-thumb{border:2px solid var(--bg-panel);background:#2d3440;border-radius:5px}.panel::-webkit-scrollbar-thumb:hover{background:#3a4250}.panel-head{justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.panel-head h1{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:15px;font-weight:600}.panel-head h1:first-letter{color:var(--accent)}.panel-head h1 .version{font-family:var(--font-mono);letter-spacing:.04em;text-transform:none;color:var(--text-faint);vertical-align:middle;margin-left:8px;font-size:10px;font-weight:500}.seg{background:var(--bg-input);border:1px solid var(--line);border-radius:7px;gap:2px;padding:2px;display:flex}.seg button{font:inherit;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:4px 14px;font-size:12px;font-weight:500;transition:background .12s,color .12s}.seg button:hover{color:var(--text)}.seg button.active{background:var(--accent);color:#1a1407;font-weight:600}.tabs{border-bottom:1px solid var(--line-soft);padding:0 16px;display:flex}.tabs button{font:inherit;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;margin-right:18px;padding:8px 2px 9px;font-size:12px;font-weight:500;transition:color .12s}.tabs button:hover{color:var(--text-dim)}.tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.sections{flex-direction:column;display:flex}.sec{border-bottom:1px solid var(--line-soft)}.sec-head{width:100%;font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:10px 16px;display:flex}.sec-head:hover{background:#ffffff05}.sec-chevron{color:var(--text-faint);flex:none;transition:transform .15s}.sec.open .sec-chevron{color:var(--accent);transform:rotate(90deg)}.sec-title{letter-spacing:.07em;text-transform:uppercase;font-size:12px;font-weight:600}.sec-meta{color:var(--text-faint);font-size:11px;font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;max-width:170px;margin-left:auto;overflow:hidden}.sec-body{flex-direction:column;gap:7px;padding:2px 16px 14px;display:flex}.param{grid-template-columns:108px 1fr 46px;align-items:center;gap:10px;min-height:22px;display:grid}.param-label{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;cursor:default;-webkit-user-select:none;user-select:none;font-size:12px;overflow:hidden}.param-value{font-family:var(--font-mono);color:var(--text);text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.param-indent{padding-left:14px}.param-indent .param-label{color:var(--text-faint)}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:16px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(var(--accent), var(--accent)) left / var(--fill,0%) 100% no-repeat, var(--track);border-radius:3px;height:6px;box-shadow:inset 0 0 0 1px #ffffff0d}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--bg-card);background:#f2f5fa;border-radius:50%;width:14px;height:14px;margin-top:-4px;transition:transform .1s,box-shadow .1s;box-shadow:0 1px 4px #0009}input[type=range]:hover::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--accent-soft), 0 1px 4px #0009;transform:scale(1.12)}input[type=range]:active::-webkit-slider-thumb{box-shadow:0 0 0 5px var(--accent-soft)}input[type=range]::-moz-range-track{background:var(--track);border-radius:3px;height:6px;box-shadow:inset 0 0 0 1px #ffffff0d}input[type=range]::-moz-range-progress{background:var(--accent);border-radius:3px;height:6px}input[type=range]::-moz-range-thumb{border:2px solid var(--bg-card);background:#f2f5fa;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 4px #0009}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--accent-soft)}input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px var(--accent-soft)}select{font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;padding:4px 8px;font-size:12.5px}select:hover{border-color:#3a4250}select:focus-visible{outline:1px solid var(--accent);outline-offset:1px}input[type=color]{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-input);cursor:pointer;width:26px;height:22px;padding:1px}input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.check-row{color:var(--text-dim);justify-content:space-between;align-items:center;min-height:22px;font-size:12px;display:flex}.hint{color:var(--text-faint);font-size:11px}button.mini{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 5px;font-size:13px;line-height:1}button.mini:hover{color:var(--danger);background:#e25d5d1f}.theme-card{flex-direction:column;gap:8px;display:flex}.theme-top{padding:14px 16px 6px}.preset-row{grid-template-columns:50px 1fr auto;align-items:center;gap:8px;display:grid}.preset-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:600}.preset-row select{width:100%;min-width:0}.preset-actions{gap:3px;display:flex}.preset-actions button{border:1px solid var(--line);background:var(--bg-input);font-size:10.5px;font-family:var(--font-ui);cursor:pointer;color:var(--text-dim);border-radius:4px;padding:3px 6px;transition:color .12s,border-color .12s}.preset-actions button:hover:not(:disabled){color:var(--text);border-color:#3f4754}.preset-actions button:disabled{opacity:.35;cursor:default}.theme-overrides{flex-wrap:wrap;align-items:center;gap:7px 13px;padding-top:2px;display:flex}.theme-color{color:var(--text-dim);align-items:center;gap:5px;font-size:11.5px;display:flex}.theme-overrides label:has(select){color:var(--text-dim);align-items:center;gap:6px;font-size:11.5px;display:flex}.theme-reset{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;font-size:11.5px}.theme-reset:hover{text-decoration:underline}.series-card{flex-direction:column;gap:10px;display:flex}.series-unit{justify-content:space-between;align-items:center;gap:8px;display:flex}.series-unit span{color:var(--text-dim);font-size:12px}.series-unit input{width:90px;font:500 12px var(--font-mono);color:var(--text);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);padding:5px 8px}.series-block{flex-direction:column;gap:6px;display:flex}.ramp-presets{gap:5px;display:flex}.ramp-preset{border:1px solid var(--line);cursor:pointer;border-radius:4px;flex:1;height:14px;padding:0}.ramp-preset:hover{border-color:var(--accent)}.series-row{align-items:center;gap:8px;display:flex}.colorfield{display:inline-flex;position:relative}.color-swatch{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background-image:linear-gradient(var(--c,#fff), var(--c,#fff)), repeating-conic-gradient(#7a7a7a 0% 25%, #b8b8b8 0% 50%);background-size:100% 100%,8px 8px;width:26px;height:22px;padding:0}.color-swatch:hover{border-color:#4a5260}.color-pop{z-index:50;background:var(--bg-card);border:1px solid var(--line);border-radius:9px;padding:10px;position:absolute;top:28px;left:0;box-shadow:0 8px 24px #00000080}.color-pop .react-colorful{width:180px;height:150px}.color-hex{width:100%;font:inherit;font-family:var(--font-mono);text-transform:lowercase;color:var(--text);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);text-align:center;margin-top:8px;padding:4px 7px;font-size:12px}.multiselect{background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);flex:1;max-height:132px;padding:4px 6px;overflow-y:auto}.ms-row{color:var(--text-dim);align-items:center;gap:6px;padding:1px 0;font-size:11.5px;display:flex}.ms-row input{width:13px;height:13px}.series-name{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;flex:none;width:108px;font-size:12px;overflow:hidden}.stops{flex-wrap:wrap;flex:1;align-items:center;gap:3px;display:flex}.stop{align-items:center;display:flex}.add-stop{border-radius:4px;width:24px;height:22px;border:1px dashed var(--line)!important}.add-stop:hover{color:var(--accent)!important;border-color:var(--accent)!important;background:0 0!important}.lock-btn{cursor:pointer;opacity:.4;background:0 0;border:none;flex:none;padding:2px;font-size:12px}.lock-btn:hover{opacity:.8}.lock-btn.locked{opacity:1}.layer-panel{flex-direction:column;gap:8px;padding:12px 16px;display:flex}.layer-card{background:var(--bg-card);border:1px solid var(--line-soft);border-radius:var(--radius);flex-direction:column;gap:7px;padding:9px 11px;display:flex}.layer-card-head{justify-content:space-between;align-items:center;display:flex}.layer-title{letter-spacing:.02em;font-size:12px;font-weight:600}.layer-head-actions{align-items:center;gap:2px;display:flex}.layer-card label:has(select){color:var(--text-dim);grid-template-columns:108px 1fr;align-items:center;gap:10px;font-size:12px;display:grid}.layer-card label:has(select) select{width:100%}.layer-add{align-items:center;gap:10px;display:flex}.layer-add select{flex:none}.layer-seg-row{grid-template-columns:108px 1fr;align-items:center;gap:10px;display:grid}.layer-seg-label{color:var(--text-dim);font-size:12px}.mini-seg{background:var(--bg-input);border:1px solid var(--line);border-radius:6px;gap:2px;padding:2px;display:flex}.mini-seg button{font:inherit;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:1;padding:3px 8px;font-size:11.5px}.mini-seg button.active{background:var(--accent);color:#1a1407;font-weight:600}.arc-origin{color:var(--text-dim);grid-template-columns:108px 1fr;align-items:center;gap:10px;font-size:12px;display:grid!important}.arc-origin input{font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;padding:4px 7px;font-size:12px}.arc-origin input:focus{outline:1px solid var(--accent);outline-offset:-1px}.layer-stats{color:var(--text-faint);font-size:11px;font-family:var(--font-mono)}.datagrid{background:var(--bg-card);border:1px solid var(--line-soft);border-radius:var(--radius);margin:12px 16px 16px;overflow:hidden}.datagrid table{border-collapse:collapse;width:100%}.datagrid th,.datagrid td{border-bottom:1px solid var(--line-soft);border-right:1px solid var(--line-soft);padding:0}.datagrid th{background:var(--bg-input);font-size:11.5px;font-weight:600}.datagrid input{width:100%;font:inherit;color:var(--text);background:0 0;border:none;outline:none;padding:5px 8px;font-size:12.5px}.datagrid tbody td:not(:nth-child(2)) input{font-family:var(--font-mono);font-size:11.5px}.datagrid input:focus{background:var(--accent-soft)}.col-head{align-items:center;display:flex}.col-head input{font-weight:600;font-family:var(--font-ui)!important}.status-col{text-align:center;width:24px}.add-col{text-align:center;background:var(--bg-input);width:26px}.dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;display:inline-block}.dot.country{background:var(--good);box-shadow:0 0 5px #4cc46c99}.dot.point{background:var(--info);box-shadow:0 0 5px #4d9fff99}.dot.none{border:1px solid var(--text-faint);background:0 0}.grid-actions{background:var(--bg-input);align-items:center;gap:10px;padding:7px 9px;display:flex}.grid-actions button{border:1px solid var(--line);background:var(--bg-card);border-radius:var(--radius-sm);cursor:pointer;font:inherit;color:var(--text-dim);padding:4px 11px;font-size:12px}.grid-actions button:hover{color:var(--text);border-color:#3f4754}.grid-actions .hint{flex:1}.stage{background-color:#3a3a3a;background-image:linear-gradient(45deg,#2c2c2c 25%,#0000 25% 75%,#2c2c2c 75%),linear-gradient(45deg,#2c2c2c 25%,#0000 25% 75%,#2c2c2c 75%);background-position:0 0,12px 12px;background-size:24px 24px;flex:1;min-width:0;position:relative}.export-panel{flex-direction:column;gap:10px;display:flex}.export-dims{align-items:flex-end;gap:8px;display:flex}.export-dims label{color:var(--text-dim);flex-direction:column;flex:1;gap:4px;font-size:11px;display:flex}.export-dims input{width:100%;font:500 13px var(--font-mono);color:var(--text);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 8px}.export-x{color:var(--text-faint);padding-bottom:7px}.export-presets{flex-wrap:wrap;gap:4px;display:flex}.export-presets button{font:500 11px var(--font-ui);color:var(--text-dim);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;padding:5px 9px}.export-presets button:hover{background:var(--bg-hover);color:var(--text)}.export-presets button.active{color:var(--bg-panel);background:var(--accent);border-color:var(--accent)}.export-meta{font:500 11px var(--font-mono);color:var(--text-faint)}.export-go{font:600 13px var(--font-ui);letter-spacing:.04em;color:var(--bg-panel);background:var(--accent);border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:2px;padding:9px 12px}.export-go:hover{filter:brightness(1.08)}.export-go:disabled{opacity:.55;cursor:default}.reset-view-btn{width:100%;font:600 12px var(--font-ui);color:var(--text);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;margin-bottom:8px;padding:8px 12px}.reset-view-btn:hover{background:var(--bg-hover)}.project-panel{flex-direction:column;gap:7px;display:flex}.project-row{gap:6px;display:flex}.project-name,.project-select{min-width:0;font:500 12px var(--font-ui);color:var(--text);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);flex:1;padding:6px 8px}.project-actions{flex-wrap:wrap;gap:4px;display:flex}.project-actions button{font:600 11px var(--font-ui);color:var(--text-dim);background:var(--bg-input);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;flex:1;padding:6px 8px}.project-actions button:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.project-actions button:disabled{opacity:.45;cursor:default}.viewport{width:100%;height:100%;display:block;position:absolute;inset:0}.overlay{letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);pointer-events:none;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.labels-overlay{pointer-events:none;position:absolute;inset:0;overflow:hidden}.label-sticks{width:100%;height:100%;position:absolute;inset:0}.label-sticks line{stroke:var(--wv-label-color,#2a3442);stroke-width:1.2px;opacity:.65}.maplabel{font-size:12px;font-weight:600;line-height:1.15;font-family:var(--wv-label-font,inherit);color:var(--wv-label-color,#2a3442);white-space:nowrap;text-shadow:var(--wv-label-halo,0 0 3px #fffffff2, 0 0 6px #ffffffd9);will-change:transform;flex-direction:column;display:flex;position:absolute;top:0;left:0}.maplabel-sub{opacity:.75;font-size:11px;font-weight:400}.map-tooltip{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;white-space:nowrap;z-index:5;background:#12151beb;border:1px solid #ffffff1a;border-radius:7px;flex-direction:column;margin:12px 0 0 14px;padding:6px 10px;display:none;position:absolute;top:0;left:0;box-shadow:0 4px 14px #0006}.map-tooltip .tt-name{color:var(--text);font-size:12.5px;font-weight:600}.map-tooltip .tt-sub:not(:empty){font-size:11px;font-family:var(--font-mono);color:var(--accent);margin-top:1px}.legend-stack{pointer-events:none;flex-direction:column-reverse;align-items:flex-end;gap:8px;max-height:calc(100% - 36px);display:flex;position:absolute;bottom:18px;right:18px}.legend{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:210px;color:var(--text);background:#12151bd1;border:1px solid #ffffff14;border-radius:9px;padding:10px 13px}.legend-title{margin-bottom:7px;font-size:12px;font-weight:600}.legend-bar{border-radius:4px;height:8px}.legend-labels{color:var(--text-dim);font-size:10.5px;font-family:var(--font-mono);justify-content:space-between;margin-top:4px;display:flex}.legend-steps{flex-direction:column;gap:3px;display:flex}.legend-step{align-items:center;gap:7px;display:flex}.legend-swatch{border-radius:3px;flex:none;width:14px;height:14px;box-shadow:inset 0 0 0 1px #ffffff1f}.legend-range{font-size:10.5px;font-family:var(--font-mono);color:var(--text-dim)}
