.ti{flex:none;display:block}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) 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:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./martian-mono-cyrillic-400-normal-BCR-5knY.woff2) format("woff2"),url(./martian-mono-cyrillic-400-normal-Br6HGNtH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./martian-mono-latin-ext-400-normal-CqsZQCXg.woff2) format("woff2"),url(./martian-mono-latin-ext-400-normal-CBFElp5P.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:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./martian-mono-latin-400-normal-DZsjfPjH.woff2) format("woff2"),url(./martian-mono-latin-400-normal-DM4nBGIh.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:Martian Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) 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:Martian Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./martian-mono-cyrillic-500-normal-DejhKr-t.woff2) format("woff2"),url(./martian-mono-cyrillic-500-normal-CQ32KwDP.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./martian-mono-latin-ext-500-normal-CPN1Info.woff2) format("woff2"),url(./martian-mono-latin-ext-500-normal-CYMi9jUC.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:Martian Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./martian-mono-latin-500-normal-BWC8e-kx.woff2) format("woff2"),url(./martian-mono-latin-500-normal-BsOs1ffX.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:Martian Mono;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,d09GMgABAAAAAAaMABAAAAAADHgAAAYvAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEAAgQwRCAqKKIhGCzYAATYCJANiBCAFhTAHgVsMBxtJClFUcd4j+JGQuXmjGU00UWnzbGs7QhbfR5CN5ewWGISqZ0cKVS3795UvTBWQrJB1NRJYuOrmfHg8/T83SZW0HZXJXfukcgBLPID+EvpfgLPw/xxLvX+ZQFnMZ1H/InIZ1AV0gBOrfB5VIAMdsA3QZk5HBJEuURpCjKc9S4fi9Pww+5wCtAJIFIJGcEIRBDSLF4+sGSoaIMYABYAwQ72U/DT0zDjKBzmA712bl6hLEEBWqRbAul89DqAMB5AtkKTsCNkASAC+evyvxTbwk6foL/7vB9Su4C9wAZD7NA+YRCMIMQr0osAsqmIZ5SAEqBw6RhEgBGMQBKKRugQIkCGFBZCgBvSiEdCLMQ70C0YT4qltw3VCMQeZ58zrzM/8qf+Rax5gnjGvMT+tV/5cM4oaUSk/jCCOoZVcsFBAiyBSwWRCyGd/sYUOwDBgAfRDLALxDDgHbANqUEWSYiVQ8xUh8tdAH4jUMrSYiZfmJqYJg4Uh+QwjZxgmihMFCX0ygbRTIOMmysazXWxHE5HBWH2NTH+dW/jqq43sa6+xC17BtFe5ha83c6+88srVKqRktsmu4eESQri8w8ObhEx/wS64dymaff31Fl1BNRP20CvF8xoz1mz0jua0HcyXqY3tsprpR8ynhbPZi6tj2rpwaTfXyjWw7o4zpSZu/X6gcjCue+Jhe5eM69iWw+bE0aRnTZqbL54k049cKDyKZ5v2feWVhoZz1zDt8Q5JzTYSBJ/1TWT7OGKlu5lrsMD1NHP86cuYlh80kVu9m1u4lkxfE2nQ80pekvrRGx8VbfdMQUKLlo+Vv5ADK3aFrNoV8+W2cdvg7l6z8eXTp1tfbmyeXFwyn2k1bpBXaCr6lhXPmDNHO0OvGlYsN2wQdBbPmqCHh+dWmM4plijOtKzAo1njV0T8khIbPyw1/Wgav0Gl65M2Nr57k7Cs1D2pf/20uWOGr9gyOD1cm9GnX2NeYU3vWou5Sw5faOusKsMys61kxeya9rpxGv14qm75I61GpSnraW0s6RyW//lHKwQVhsCoQbgzsrG8fUj7MLWmp7lL3WPIulW7KUxT3RlQGNqmVepWOsyGZdOrmhvHlg9bYg/O5Q4i17ZnwbkWfuKxo70u7IkoN1aVtJp7xJ2LD80LD1u4+PAUyMz8ypXz8uc8vxf7ytb1o7/vXV+Z1bvRaJHbVu6eHBJiOgRHaP04ldqoy0+vrNdqE015w/7IiB+zOz6radU2mX/RyDEVI/uojer8jKp6rS6pJ5ePTs9ZokiPnLVL5p878myCK+Dyb123RGh91dDLMbGHh84T1XdUdlTuSr81/j0WkO3gwdUHsfZY18HdMw/Wbnd7ZN9BKHtG/GU7yBeUK3XDyhS51iyWk70rlX57LRzUPAhoECXB+VAUCcAsXS+mH4BfIKQ4EiuKFuUT3Sb2eoXKjCxkMbGRJNkvuh2KiQ+AMchrJtKPFGFASafW0aoYPQKV5pzybSdxLMOWn0dNQN/yYz10FUpynOkxT65yP90JAgLOfj/L6A4a9KuYpr8AePn8+9UAH5/MCiChpDPXJoQoQMBvN5RPEP3fWgNEhQOARw+NtjAAPNAXyqAE8vw56k/AKDmz+6IAwO/LAJf4zzrcBwHDeqP1xwziz7/X+mtAI7USwCPxRXJCGYPkFHH0ktOqfCZnDHJALhBrmVyonxaZXB8pegRoFSknYElnifsciEghBVv8RvAy8mjmZDGKQ8VWTnbvKHsVowSMNEChQiOZjeAUMMpIBUZy8ijgoR27umoGFSoZjTCKk5FPJT8fv3pWXk564wSAtIXV7pRPw8/DoonVCLbtZk9ekQIKMx45yC+L4wuVH01rHqhKtUV9MCOjOvx0DzZSyy9gvBFTbuUpKWya15CAdZL8dI0RvtXFyszIqo1+Ka9/drV5Wa+WtXOC6dFM2mzm503TVmMKeqIxHXEk4Pdu1WyUytxyKEH4FsNg1n1CIUMWHYMSHUEThgiIkIiImEgISzjQISUyIidBJJiECNWmEdYxVtFon1PRS6nybLWao1OQ+zANSgtG0VCKKH1JKqFCrWhVKjS9uC5jv5bS2zxeYjSPHhXZJKdSaHx/Zd9z5P8dYxYDAAA=) format("woff2"),url(data:font/woff;base64,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) 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:Martian Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./martian-mono-cyrillic-700-normal-D_igsEI4.woff2) format("woff2"),url(./martian-mono-cyrillic-700-normal-Dui0LR26.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./martian-mono-latin-ext-700-normal-DCLlok61.woff2) format("woff2"),url(./martian-mono-latin-ext-700-normal-DxXBCdt7.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:Martian Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./martian-mono-latin-700-normal-BEEYYU4J.woff2) format("woff2"),url(./martian-mono-latin-700-normal-CkDhVUqs.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{--bg:#E3F14E;--panel:#FFFFFF;--surface:#F4F4F2;--ink:#191314;--ink2:#55584B;--ink3:#989C8C;--line:#ECEDE4;--hairline:rgba(25,19,20,.07);--accent:#ECF95A;--accent-strong:#DFEE3D;--accent-soft:#F7FBD9;--accent-ink:#191314;--accent-line:#99A812;--danger:#DC2626;--warn:#B7791F;--ok:#3F8F5F;--chip:#FFFFFF;--chip-h:var(--surface);--glass:rgba(255,255,255,.92);--primary-bg:var(--ink);--primary-fg:#FFFFFF;--primary-h:#2A2325;--canvas-ink:#55584B;--sel-line:#191314;--sb-thumb:#D8DACB;--sb-thumb-h:#B9BCA9;--r-card:16px;--r-pill:999px;--gut:10px;--ctl:30px;--shadow:0 0 0 1px var(--hairline), 0 1px 2px rgba(25,19,20,.03), 0 8px 24px rgba(25,19,20,.04);--shadow-pop:0 0 0 1px var(--hairline), 0 4px 10px rgba(25,19,20,.06), 0 16px 40px rgba(25,19,20,.1);--ease:cubic-bezier(.2,.8,.2,1)}:root[data-theme=paper]{--bg:#ECEDE4;--accent-soft:#F4F8DC}:root[data-theme=noir]{--bg:#111208;--panel:#1B1D14;--surface:#262820;--ink:#F2F3E9;--ink2:#BCBFAC;--ink3:#82856F;--line:#2E3026;--hairline:rgba(255,255,255,.09);--accent-soft:#2E3213;--accent-line:#C7DB2F;--chip:#262820;--chip-h:#31342A;--glass:rgba(27,29,20,.94);--primary-bg:#ECF95A;--primary-fg:#191314;--primary-h:#DFEE3D;--sb-thumb:#31342A;--sb-thumb-h:#3E4136;--warn:#E0B44D;--ok:#7FC79A}:root[data-theme=olive]{--bg:#14170A;--panel:#232816;--surface:#2F3520;--ink:#F3F5E8;--ink2:#C2C7AC;--ink3:#878D6E;--line:#39402A;--hairline:rgba(255,255,255,.09);--accent-soft:#39420F;--accent-line:#C7DB2F;--chip:#2F3520;--chip-h:#3A4129;--glass:rgba(35,40,22,.94);--warn:#E0B44D;--ok:#7FC79A;--primary-bg:#ECF95A;--primary-fg:#191314;--primary-h:#DFEE3D;--sb-thumb:#39402A;--sb-thumb-h:#474F34}:root[data-theme=noir] .pal-item,:root[data-theme=olive] .pal-item{background:var(--chip);border-color:var(--line)}:root[data-theme=noir] .pal-item .nm,:root[data-theme=olive] .pal-item .nm{color:var(--ink)}:root[data-theme=noir] .pal-item .dm,:root[data-theme=olive] .pal-item .dm{color:var(--ink3)}:root[data-theme=noir] .thumb,:root[data-theme=olive] .thumb{filter:invert(1) hue-rotate(180deg)}:root[data-theme=noir] .thumb image,:root[data-theme=olive] .thumb image{filter:invert(1) hue-rotate(180deg)}:root[data-theme=noir] button:not(.active):not(.primary):not(.mini):hover,:root[data-theme=olive] button:not(.active):not(.primary):not(.mini):hover{border-color:var(--accent-line);box-shadow:0 0 0 1px var(--accent-line),0 0 10px color-mix(in srgb,var(--accent) 28%,transparent)}:root[data-theme=noir] .pal-item:hover,:root[data-theme=olive] .pal-item:hover{border-color:var(--accent-line);box-shadow:0 0 10px color-mix(in srgb,var(--accent) 25%,transparent)}:root[data-style=blueprint]{--canvas-bg:#20456F;--grid-minor:rgba(216,232,250,.09);--grid-major:rgba(216,232,250,.18);--wall-ink:#E8F1FB;--wall-core:#20456F;--wall-soft:rgba(232,241,251,.18);--canvas-ink:#A9C4E4;--sel-line:#F2F7FE;--floor-fill:url(#patFloorHatch);--floor-fill-op:1;--floor-line:#A9C4E4;--plot-fill:url(#patPlotHatch);--plot-line:#A9C4E4;--xray-line:#D8E7F8}:root[data-style=blueprint] .sym{--sym-fill:rgba(255,255,255,.03);--sym-stroke:#D8E7F8;--sym-soft:rgba(216,231,248,.22);--sym-soft2:rgba(216,231,248,.38);--sym-detail:#E8F1FB;--sym-paper:#20456F;--sym-text:#EAF3FE}:root[data-style=blueprint] .sym image{filter:grayscale(1) invert(1)!important}:root[data-style=blueprint] .thumb{background:#20456f;border-radius:6px;filter:none!important}:root[data-style=draft]{--canvas-bg:#F8F3E6;--grid-minor:#EFE8D4;--grid-major:#E3D9BF;--wall-ink:#503F2D;--wall-core:#503F2D;--wall-soft:rgba(80,63,45,.16);--canvas-ink:#8A7A5E}:root[data-style=draft] .sym{--sym-fill:#F6F0DF;--sym-stroke:#5A4732;--sym-soft:#E9DDC2;--sym-soft2:#DCCDA9;--sym-detail:#503F2D;--sym-paper:#FAF6EB;--sym-text:#3E3020}:root[data-style=draft] .sym image{filter:grayscale(1) sepia(.4)!important}:root[data-style=draft] .thumb{background:#f8f3e6;border-radius:6px;filter:none!important}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}@supports (height: 100dvh){html,body,#app{height:100dvh}}body{font:12px/1.5 Martian Mono,ui-monospace,Cascadia Mono,monospace;color:var(--ink);background:var(--bg);overflow:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#app{display:flex;flex-direction:column;padding:var(--gut);gap:var(--gut)}::selection{background:var(--accent);color:var(--accent-ink)}*{scrollbar-width:thin;scrollbar-color:var(--sb-thumb) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:var(--sb-thumb);border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--sb-thumb-h);background-clip:padding-box}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}.topbar{display:flex;align-items:center;gap:4px;padding:8px 12px;background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;position:relative;z-index:30;flex-wrap:wrap}.brand{font-weight:700;letter-spacing:-.02em;margin-right:12px;font-size:13.5px}.brand span{color:var(--ink3);font-weight:400;font-size:10.5px}.tb-sep{width:1px;height:20px;background:var(--line);margin:0 6px}button,.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--chip);color:var(--ink);border-radius:var(--r-pill);height:var(--ctl);padding:0 13px;font:inherit;font-size:11.5px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:background .14s var(--ease),border-color .14s var(--ease),color .14s var(--ease),transform .1s var(--ease),box-shadow .14s var(--ease);touch-action:manipulation;white-space:nowrap}button:hover,.btn:hover{background:var(--chip-h);border-color:var(--line)}button:active{transform:scale(.97)}button.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}button.active:hover{background:var(--accent-strong)}button.primary{background:var(--primary-bg);color:var(--primary-fg);border-color:var(--primary-bg)}button.primary:hover{background:var(--primary-h);border-color:var(--primary-h);box-shadow:0 2px 8px #19131438}button:disabled{opacity:.35;cursor:default;transform:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}.tb-right{margin-left:auto;display:flex;align-items:center;gap:4px}.toast-note{color:var(--ink2);font-size:10px;margin:0 6px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;animation:toastin .15s var(--ease)}@keyframes toastin{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.save-pill{display:flex;align-items:center;gap:5px;margin:0 6px;font-size:10px;font-variant-numeric:tabular-nums;color:var(--ink3);transition:opacity .4s var(--ease)}.save-pill.settled{opacity:.55}.save-dot{width:6px;height:6px;border-radius:50%;background:var(--ink3);flex:none}.save-pill.saved .save-dot{background:var(--ok)}.save-pill.saving .save-dot{background:var(--warn);animation:pvspin 1s linear infinite,dotpulse 1s ease-in-out infinite}.save-pill.failed{color:var(--danger)}.save-pill.failed .save-dot{background:var(--danger)}@keyframes dotpulse{0%,to{opacity:1}50%{opacity:.4}}.zoom-label{min-width:56px;text-align:center;color:var(--ink2);font-size:10.5px;font-variant-numeric:tabular-nums}.seg{display:flex;align-items:center;gap:2px;height:var(--ctl);padding:3px;background:var(--surface);border-radius:var(--r-pill)}.seg button{border:none;background:transparent;height:24px;padding:0 11px;font-size:10.5px;color:var(--ink2)}.seg button:hover{background:var(--chip-h)}.seg button.on{background:var(--chip);color:var(--ink);font-weight:600;box-shadow:0 0 0 1px var(--hairline),0 1px 3px #19131414}.seg.hint{animation:seghint 1.15s var(--ease) 3}@keyframes seghint{0%,to{box-shadow:0 0 #ecf95a00}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent, #ECF95A) 60%,transparent)}}.panel-toggle{display:none;font-size:14px;padding:0 11px}.main{display:flex;flex:1;min-height:0;position:relative;gap:var(--gut)}.palette{width:248px;background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);overflow-y:auto;padding:0 12px 14px;overscroll-behavior:contain}.pal-head{position:sticky;top:0;z-index:6;background:var(--panel);padding:14px 0 2px;margin-bottom:6px}.pal-subhead{display:flex;align-items:center;justify-content:space-between;padding:0 2px}.pal-subhead h3{font-size:9.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);margin:6px 0}button.mini{height:20px;padding:0 9px;font-size:8.5px;border:none;background:transparent;color:var(--ink3);text-transform:uppercase;letter-spacing:.08em}button.mini:hover{background:var(--surface);color:var(--ink2)}.cat{margin-bottom:2px}.cat-head{cursor:pointer;font-weight:700;font-size:11.5px;padding:7px 8px;border-radius:9px;display:flex;align-items:center;-webkit-user-select:none;user-select:none;transition:background .14s var(--ease)}.cat-head:before{content:"▸";color:var(--ink3);margin-right:7px;font-size:9px;transition:transform .18s var(--ease)}.cat-head.open:before{transform:rotate(90deg)}.cat-head:hover{background:var(--surface)}.cat-n{margin-left:auto;font-weight:400;font-size:9px;color:var(--ink3);font-variant-numeric:tabular-nums}.cat-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s var(--ease)}.cat-body.open{grid-template-rows:1fr}.cat-inner{overflow:hidden;min-height:0}.pal-searchwrap{position:relative}.pal-search{width:100%;height:var(--ctl);padding:0 30px 0 13px;border:1px solid transparent;border-radius:var(--r-pill);font:inherit;font-size:11.5px;background:var(--surface);color:var(--ink);transition:border-color .14s var(--ease),background .14s var(--ease)}.pal-search:focus{outline:none;border-color:var(--accent-line);background:var(--chip)}.pal-search::placeholder{color:var(--ink3)}.pal-search::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:none}.pal-clear{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:18px;height:18px;padding:0;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--chip);color:var(--ink3)}.pal-clear:hover{background:var(--chip-h);color:var(--ink)}.pal-none{color:var(--ink3);font-size:11px;padding:8px 2px}.pal-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:4px 0}.pal-item{border:1px solid var(--line);border-radius:12px;background:#fff;color:#191314;padding:8px 4px 7px;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:grab;text-align:center;transition:border-color .16s var(--ease),box-shadow .16s var(--ease),transform .16s var(--ease),background .16s var(--ease)}.pal-item:hover{border-color:#d8dacb;box-shadow:0 2px 8px #19131412;transform:translateY(-1px)}.pal-item:active{cursor:grabbing;transform:translateY(0) scale(.98)}.pal-item .nm{font-size:9.5px;line-height:1.3;color:#191314}.pal-item .dm{font-size:8.5px;color:#8d927f;font-variant-numeric:tabular-nums}.thumb{width:64px;height:40px;pointer-events:none}.canvas-wrap{flex:1;position:relative;min-width:0;background:var(--canvas-bg,#fff);border-radius:var(--r-card);box-shadow:var(--shadow);overflow:hidden}.canvas-wrap>svg{display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.canvas-wrap svg line.wl-hit{stroke:var(--wall-ink,#2d2d2d);transition:stroke .12s}.canvas-wrap svg line.wl-hit:hover{stroke:var(--hover-ink,#4C8BF5)}.floor-label:hover{fill:var(--hover-ink,#4C8BF5)}.canvas-wrap>svg.tool-wall{cursor:crosshair}.canvas-wrap>svg.tool-marquee{cursor:crosshair}.selfade{animation:selfade .16s var(--ease)}@keyframes selfade{0%{opacity:0}to{opacity:1}}.floor-label{fill:#767b6d;font-weight:600;-webkit-user-select:none;user-select:none}.floor-label:hover{fill:#191314}.floor-label.on{fill:var(--accent-line,#99A812);font-weight:700}.cdim line{stroke:var(--accent-line,#99A812)}.cdim-pill{fill:var(--canvas-bg,#fff);stroke:var(--accent-line,#99A812);stroke-width:1px;vector-effect:non-scaling-stroke}.cdim-val{fill:var(--accent-line,#99A812);-webkit-user-select:none;user-select:none}.cdim g:hover .cdim-pill{fill:var(--accent,#ECF95A)}.cdim g:hover .cdim-val{fill:#191314}.cdim-input{position:absolute;transform:translate(-50%,-50%);width:74px;z-index:6;height:24px;padding:0 8px;border:1.5px solid var(--accent-line,#99A812);border-radius:12px;font:inherit;font-size:11px;text-align:center;background:var(--canvas-bg,#fff);color:#191314;outline:none;box-shadow:0 2px 10px #1913142e}.floor-3d{cursor:pointer}.floor-3d rect{fill:var(--accent,#ECF95A);stroke:#191314;stroke-width:1;transition:fill .12s var(--ease),transform .12s var(--ease)}.floor-3d text{fill:#191314;font-family:inherit;-webkit-user-select:none;user-select:none}.floor-3d:hover rect{fill:var(--accent-strong,#DFEE3D)}.hintbar{position:absolute;left:50%;bottom:14px;transform:translate(-50%);background:#191314eb;color:#fff;padding:8px 18px;border-radius:var(--r-pill);font-size:10.5px;letter-spacing:.01em;pointer-events:none;white-space:nowrap;box-shadow:0 4px 16px #1913142e;max-width:92%;overflow:hidden;text-overflow:ellipsis;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:rise .22s var(--ease)}@keyframes rise{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.scalebar{position:absolute;right:16px;bottom:14px;color:var(--canvas-ink);font-size:9.5px;text-align:center;pointer-events:none;font-variant-numeric:tabular-nums}.scalebar .bar{height:4px;border:1px solid var(--canvas-ink);border-top:none;margin-top:2px}.props{width:252px;background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column}.props-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px 14px;overscroll-behavior:contain}.card-label{font-size:9.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);margin-bottom:10px}.props h3{font-size:12.5px;font-weight:700;letter-spacing:-.01em;margin-bottom:3px}.props .sub{color:var(--ink3);font-size:9.5px;margin-bottom:14px}.fld{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;gap:8px;min-height:var(--ctl)}.fld label{color:var(--ink2);font-size:10.5px;min-width:0;overflow-wrap:break-word}.fld input,.fld select{flex:0 0 auto;width:108px;height:28px;padding:0 11px;border:1px solid transparent;border-radius:var(--r-pill);font:inherit;font-size:11.5px;text-align:right;background:var(--surface);color:var(--ink);font-variant-numeric:tabular-nums;transition:border-color .14s var(--ease),background .14s var(--ease)}.fld input[type=checkbox]{width:15px;height:15px;flex:0 0 auto;accent-color:var(--ink)}.fld input:focus,.fld select:focus{outline:none;border-color:var(--accent-line);background:var(--chip)}.row-btns{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.row-btns button{flex:1;justify-content:center;font-size:10.5px;padding:0 8px}.row-btns.align-row{gap:4px;margin:4px 0}.row-btns.align-row button{flex:1 1 0;min-width:0;font-size:14px;padding:0}.row-btns.align-row button.on{background:var(--accent);border-color:var(--accent-line);color:var(--accent-ink);font-weight:700}.danger{color:var(--danger)}.swatches{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px;padding:2px}.sw{width:22px;height:22px;border-radius:50%;border:1px solid rgba(25,19,20,.12);cursor:pointer;transition:transform .14s var(--ease),box-shadow .14s var(--ease)}.sw:hover{transform:scale(1.15);box-shadow:0 2px 6px #19131424}.sw.on{outline:2px solid var(--ink);outline-offset:2px}.sw-none{background:linear-gradient(to top right,#fff 44%,#d33 46%,#d33 54%,#fff 56%)}.area{font-size:10.5px;color:var(--ink2);text-align:right;font-variant-numeric:tabular-nums}.color-pick{width:108px;height:28px;padding:2px;border:1px solid var(--line);border-radius:10px;background:var(--chip);cursor:pointer;transition:border-color .14s var(--ease)}.color-pick:hover{border-color:#d8dacb}.callout-text{width:100%;padding:9px 11px;border:1px solid transparent;border-radius:12px;font:inherit;font-size:11.5px;resize:vertical;margin-bottom:4px;background:var(--surface);color:var(--ink);line-height:1.55;transition:border-color .14s var(--ease),background .14s var(--ease)}.callout-text:focus{outline:none;border-color:var(--accent-line);background:var(--chip)}.props .empty{color:var(--ink3);font-size:10.5px;padding-top:6px;line-height:1.6}.kbd{border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:0 5px;font-size:9.5px;background:var(--surface);color:var(--ink2)}.help{margin-top:16px;border-top:1px solid var(--line);padding-top:12px;color:var(--ink3);font-size:9.5px;line-height:1.7}.help p{margin-bottom:6px}.help b{color:var(--ink2);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.vastu-dock{position:relative;flex:none;border-top:1px solid var(--line);padding:10px 14px 12px;background:var(--panel)}.vastu-dock .card-label{margin-bottom:7px}.vd-btn{width:100%;height:auto;min-height:34px;padding:6px 11px;justify-content:space-between;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-size:11px;text-align:left;gap:8px}.vd-btn:hover{background:var(--chip);border-color:var(--accent-line)}.vd-txt{display:flex;flex-direction:column;line-height:1.3;min-width:0}.vd-place{font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vd-sys{font-size:9.5px;color:var(--ink3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vd-pop{position:absolute;left:10px;right:10px;bottom:calc(100% - 2px);z-index:30;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;box-shadow:var(--shadow-pop);padding:8px;display:flex;flex-direction:column;gap:6px;animation:menupop .14s var(--ease)}.vd-search{width:100%;height:30px;padding:0 11px;border:1px solid var(--line);border-radius:var(--r-pill);font:inherit;font-size:11px;background:var(--surface);color:var(--ink)}.vd-search:focus{outline:none;border-color:var(--accent-line);background:var(--chip)}.vd-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.vd-list button{border:none;border-radius:9px;width:100%;height:auto;min-height:34px;padding:6px 10px;justify-content:flex-start;flex-direction:column;align-items:flex-start;gap:1px;font-size:11px;line-height:1.3;text-align:left}.vd-list button:hover{background:var(--chip-h)}.vd-list button.on{background:var(--accent-soft)}.vd-none{color:var(--ink3);font-size:10px;padding:8px 10px}.vd-zones{display:flex;align-items:center;gap:7px;margin-top:8px;font-size:10.5px;color:var(--ink2);cursor:pointer}.vd-zones input{accent-color:var(--accent)}.vd-checks{margin-top:6px;display:flex;flex-direction:column;gap:2px}.vd-check{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--ink2);padding:2px 4px;border-radius:5px}.vd-check .vd-cname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vd-check .vd-czone{font-weight:700;opacity:.75}.vd-check.good .vd-cverdict{color:#3fa34d;font-weight:700}.vd-check.ok .vd-cverdict{color:#c9a227;font-weight:700}.vd-check.off .vd-cverdict,.vd-check.avoid .vd-cverdict{color:#d66;font-weight:700}.vd-check.avoid{background:#dd66661f}.tapeline line{stroke:var(--accent-line,#99A812)}.tapeline .tape-pill{fill:var(--panel,#1c1a17);stroke:var(--accent-line,#99A812);stroke-width:.01}.tapeline text{fill:var(--accent-line,#99A812);font-weight:700}.colghost rect{fill:var(--canvas-ink,#3a3a3a);opacity:.16}.colghost line{stroke:var(--canvas-ink,#3a3a3a);stroke-width:.012;opacity:.3}.vz line{stroke:var(--canvas-ink,#4a4a4a);stroke-width:.014;stroke-dasharray:.12 .1;opacity:.35}.vz text{fill:var(--canvas-ink,#4a4a4a);opacity:.4;font-weight:700;letter-spacing:.04em}.vcheck{border:1px solid var(--line);border-radius:12px;padding:8px 10px;margin:4px 0 2px;display:flex;flex-direction:column;gap:4px;background:var(--surface)}.vline{font-size:10px;line-height:1.45}.vline b{font-variant-numeric:tabular-nums}.vline.good{color:#15803d}.vline.warn{color:#b45309}.vline.bad{color:#b91c1c}.vline.neutral{color:var(--ink3)}.xbtn{font-weight:600}.xray-dim{fill:#0d111cb8}.xray-cur{fill:none;stroke:#fff;stroke-opacity:.95}.xg-line{fill:none;stroke:#7dd3fc}.xray-ghost.hot .xg-line{stroke:#5ec8fd;filter:drop-shadow(0 0 3px rgba(94,200,253,.9))}.xray-lb{fill:#e0f2fe;font-family:Martian Mono,ui-monospace,monospace}.xraypanel{position:absolute;right:14px;top:14px;z-index:15;width:196px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;box-shadow:var(--shadow-pop);padding:10px 10px 8px;display:flex;flex-direction:column;gap:7px;animation:menupop .14s var(--ease)}.xp-head{display:flex;align-items:center;justify-content:space-between}.xp-head b{font-size:11px}.xp-close{border:none;width:22px;height:22px;padding:0;justify-content:center;font-size:11px;border-radius:7px}.xp-close:hover{background:var(--chip-h)}.xp-tol{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--ink2);font-variant-numeric:tabular-nums}.xp-tol span{flex:none;width:34px}.xp-list{max-height:264px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.xp-list button{border:none;border-radius:9px;width:100%;height:30px;padding:0 9px;justify-content:flex-start;gap:7px;font-size:11px}.xp-list button:hover,.xp-list button.hot{background:var(--chip-h)}.xp-dims{font-weight:600;font-variant-numeric:tabular-nums}.xp-sq{color:var(--ink3);font-size:9.5px;margin-left:auto;font-variant-numeric:tabular-nums}.xp-star{color:#d97706;font-size:10px}.xp-none{color:var(--ink3);font-size:10px;padding:6px 8px;line-height:1.5}.ctxmenu{position:absolute;z-index:20;min-width:184px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;box-shadow:var(--shadow-pop);padding:5px;display:flex;flex-direction:column;transform-origin:top left;animation:menupop .14s var(--ease)}@keyframes menupop{0%{opacity:0;transform:scale(.96) translateY(-3px)}to{opacity:1;transform:scale(1) translateY(0)}}.ctxmenu button{border:none;border-radius:9px;justify-content:flex-start;padding:0 12px;height:32px;width:100%;font-size:11px}.ctxmenu button:hover{background:var(--chip-h);color:var(--ink)}.ctxmenu button:active{transform:none;background:var(--accent-soft)}.ctxmenu button.danger:hover{background:#fef2f2;color:var(--danger)}.ctx-sep{height:1px;background:var(--line);margin:5px 8px}.statsbar{position:absolute;left:14px;top:14px;display:flex;gap:18px;align-items:center;background:var(--glass);border-radius:14px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:9px 16px;box-shadow:var(--shadow);pointer-events:none;animation:fadein .25s var(--ease)}@keyframes fadein{0%{opacity:0}to{opacity:1}}.statsbar .stat{display:flex;flex-direction:column;line-height:1.25}.statsbar .stat b{font-size:11.5px;font-variant-numeric:tabular-nums}.statsbar .stat span{font-size:8px;color:var(--ink3);text-transform:uppercase;letter-spacing:.12em}.settings{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:18px;background:transparent;cursor:pointer;margin:2px 0 0}.slider::-webkit-slider-runnable-track{height:6px;border-radius:var(--r-pill);background:linear-gradient(to right,var(--accent) var(--val),var(--surface) var(--val))}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--ink);margin-top:-6px;box-shadow:0 1px 4px #1913142e;transition:transform .14s var(--ease),box-shadow .14s var(--ease)}.slider::-webkit-slider-thumb:hover{transform:scale(1.12)}.slider::-webkit-slider-thumb:active{transform:scale(1.05);box-shadow:0 1px 2px #19131438}.slider::-moz-range-track{height:6px;border-radius:var(--r-pill);background:var(--surface)}.slider::-moz-range-progress{height:6px;border-radius:var(--r-pill);background:var(--accent)}.slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--ink);box-shadow:0 1px 4px #1913142e;transition:transform .14s var(--ease)}.slider::-moz-range-thumb:hover{transform:scale(1.12)}.slider-caption{display:flex;justify-content:space-between;font-size:8.5px;color:var(--ink3);margin-top:4px}.cleared-hint{position:absolute;left:50%;top:44%;transform:translate(-50%);font-size:11.5px;color:var(--ink3,#8D927F);opacity:.85;background:var(--chip,#fff);padding:6px 14px;border-radius:var(--r-pill);border:1px dashed var(--ink3,#8D927F);pointer-events:none;white-space:nowrap}.cleared-hint b{font-weight:700}.welcome{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;padding:20px}.welcome-card{pointer-events:auto;background:var(--panel);border-radius:20px;box-shadow:var(--shadow-pop);padding:26px 26px 22px;width:min(360px,92%);position:relative;animation:welcomein .3s var(--ease)}.w-skip{position:absolute;top:10px;right:10px;width:26px;height:26px;padding:0;border:none;background:transparent;color:var(--ink3);justify-content:center}.w-skip:hover{background:var(--chip-h);color:var(--ink)}@keyframes welcomein{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.w-title{font-size:15px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}.w-sub{font-size:10px;color:var(--ink3);margin-bottom:18px}.w-step{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}.w-step span.w-n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#191314;font-size:10.5px;font-weight:700;display:block;line-height:22px;text-align:center;margin-top:1px}.w-step b{display:block;font-size:11.5px;margin-bottom:1px}.w-step span{display:block;font-size:9.5px;color:var(--ink2);line-height:1.55}.w-actions{display:flex;gap:8px;margin-top:20px}.w-actions button{flex:1;justify-content:center}.tabsbar{display:flex;align-items:center;gap:6px;height:44px;padding:6px 10px;background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;flex:none}.tabs-scroll{display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}.tabs-scroll::-webkit-scrollbar{display:none}.tab{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 8px 0 14px;border-radius:var(--r-pill);font-size:11px;color:var(--ink2);cursor:pointer;white-space:nowrap;border:1px solid transparent;transition:background .14s var(--ease),color .14s var(--ease),border-color .14s var(--ease)}.tab:hover{background:var(--surface);color:var(--ink)}.tab.on{background:var(--accent);color:var(--accent-ink);font-weight:600}.tab.on:hover{background:var(--accent-strong)}.tab:not(:has(.tab-x)){padding-right:14px}.tab-name{max-width:140px;overflow:hidden;text-overflow:ellipsis}.tab-x{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;font-size:11px;line-height:1;color:inherit;opacity:0;transition:opacity .14s var(--ease),background .14s var(--ease)}.tab:hover .tab-x{opacity:.55}.tab-x:hover{opacity:1!important;background:#1913141f}@media (hover: none),(pointer: coarse){.tab-x{opacity:.55;width:20px;height:20px;font-size:13px}}.tab-edit{width:110px;height:22px;border:none;border-radius:6px;padding:0 6px;font:inherit;font-size:11px;background:var(--chip);color:var(--ink);outline:2px solid var(--accent-line)}.tab-add{flex:none;width:30px;height:30px;padding:0;justify-content:center;border-radius:50%}.tabs-meta{flex:none;font-size:9px;color:var(--ink3);text-transform:uppercase;letter-spacing:.1em;margin:0 6px 0 4px}.themepop{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:250px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;box-shadow:var(--shadow-pop);padding:6px;transform-origin:top right;animation:menupop .14s var(--ease)}.themepop .tp-title{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);padding:8px 10px 6px}.themepop .tp-title2{margin-top:6px;border-top:1px solid var(--line);padding-top:10px}.themepop{max-height:min(72vh,560px);overflow-y:auto}.theme-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;height:auto;border:none;border-radius:10px;background:transparent;text-align:left}.theme-row:hover{background:var(--chip-h)}.theme-row.on{background:var(--accent-soft)}.tp-dots{display:flex;flex:none}.tp-dots i{width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(127,127,110,.35);margin-left:-5px}.tp-dots i:first-child{margin-left:0}.tp-name{display:flex;flex-direction:column;line-height:1.3;min-width:0}.tp-name b{font-size:11px}.tp-name span{font-size:8.5px;color:var(--ink3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-check{margin-left:auto;color:var(--accent-line);flex:none}.pop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35}.toolfloat{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:16;display:flex;gap:3px;padding:5px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--r-pill);box-shadow:var(--shadow-pop)}.toolfloat button{box-shadow:none}@media (max-width: 920px){.toolfloat{top:6px;padding:4px}.toolfloat .tf-lb{display:none}.toolfloat button{padding:0 11px}}.edge-toggle{position:absolute;top:50%;z-index:18;width:32px;height:32px;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:0;background:var(--accent);color:#191314;border:1.5px solid #191314;box-shadow:var(--shadow);transition:left .22s var(--ease),right .22s var(--ease),transform .14s var(--ease),background .14s var(--ease)}.et-left{left:253px;transform:translate(-50%,-50%)}.et-left.closed{left:36px}.et-right{right:257px;transform:translate(50%,-50%)}.et-right.closed{right:36px}.main.has-pv .et-right{right:calc(max(var(--pv-w, 40%),340px) + 267px)}.main.has-pv .et-right.closed{right:calc(max(var(--pv-w, 40%),340px) + 46px)}.et-left:hover{transform:translate(-50%,-50%) scale(1.18);background:var(--accent-strong)}.et-right:hover{transform:translate(50%,-50%) scale(1.18);background:var(--accent-strong)}.et-left:active{transform:translate(-50%,-50%) scale(1.02)}.et-right:active{transform:translate(50%,-50%) scale(1.02)}@media (min-width: 921px){.palette,.props{transition:margin .22s var(--ease),opacity .18s var(--ease)}.palette.collapsed{margin-left:-258px;opacity:0;pointer-events:none}.props.collapsed{margin-right:-262px;opacity:0;pointer-events:none}}.more-btn{display:none}.tb-more{display:contents}@media (max-width: 920px){.edge-toggle{display:none}.more-btn{display:inline-flex;margin-left:auto}.props-cta{background:var(--accent);color:var(--accent-ink);border-color:var(--accent-line);font-weight:600}.props-cta.active{background:var(--primary-bg);color:var(--primary-fg);border-color:transparent}.tb-more{display:none}.tb-more.open{display:flex;flex-wrap:wrap;gap:6px;align-items:center;position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:45;background:var(--panel);border-radius:14px;box-shadow:var(--shadow-pop);padding:10px;transform-origin:top center;animation:menupop .14s var(--ease)}.tb-more.open .tb-right{display:contents}.tb-more.open .zoom-label{display:inline}:root{--gut:6px}.panel-toggle{display:inline-flex}.brand span{display:none}.palette,.props{position:absolute;top:0;bottom:0;z-index:25;box-shadow:var(--shadow-pop);transition:transform .22s var(--ease);width:min(280px,84vw)}.palette{left:0;transform:translate(-108%)}.palette.open{transform:none}.props{right:0;transform:translate(108%)}.props.open{transform:none}.topbar{gap:3px;padding:6px 8px}button,.btn{padding:0 10px}.toast-note,.zoom-label,.tb-sep{display:none}.statsbar{left:10px;top:52px;gap:12px;padding:6px 12px}.tabsbar{height:40px;padding:4px 8px}.tabs-meta{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.preview3d{width:var(--pv-w, 40%);min-width:340px;display:flex;flex-direction:column;background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);overflow:hidden;position:relative}.pv-resize{position:absolute;left:0;top:0;bottom:0;width:8px;cursor:col-resize;z-index:30;touch-action:none}.pv-resize:after{content:"";position:absolute;left:2px;top:50%;height:44px;width:3px;transform:translateY(-50%);border-radius:2px;background:var(--line);transition:background .15s}.pv-resize:hover:after{background:var(--accent-line)}.preview3d.expanded{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;min-width:0;z-index:40}.pv-head{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.pv-title{font-size:12.5px;font-weight:700;margin-right:auto;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv-styles{flex:none}.pv-btn{width:26px;height:26px;padding:0;flex:none;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-pill);background:var(--surface);color:var(--ink2)}.pv-btn:hover{background:var(--chip-h);color:var(--ink)}.pv-canvas{flex:1;min-height:0;position:relative}.pv-canvas.walking{cursor:crosshair}.pv-canvas canvas{display:block;width:100%!important;height:100%!important;touch-action:none}.pv-hint{position:absolute;left:50%;bottom:10px;transform:translate(-50%);background:#191314d9;color:#fff;padding:5px 14px;border-radius:var(--r-pill);font-size:9.5px;pointer-events:none;white-space:nowrap}.pv-floor-cue{position:absolute;left:50%;top:38%;transform:translate(-50%);background:#191314c7;color:#fff;padding:7px 18px;border-radius:var(--r-pill);font-size:13px;font-weight:600;letter-spacing:.02em;pointer-events:none;white-space:nowrap;animation:pvFloorCue 1.8s ease forwards}@keyframes pvFloorCue{0%{opacity:0;transform:translate(-50%,8px)}12%{opacity:1;transform:translate(-50%)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-6px)}}.rq-fab{position:absolute;top:10px;right:10px;z-index:6;display:flex;align-items:center;gap:7px;background:#191314db;color:#fff;border:none;padding:6px 13px;border-radius:var(--r-pill);font-size:10px;font-weight:600;cursor:pointer;box-shadow:0 2px 10px #19131440}.rq-fab:hover{background:#191314f5}.rq-fab:active{transform:scale(.97)}.rq-badge{display:inline-block;min-width:14px;padding:1px 4px;margin-left:5px;border-radius:8px;font-size:8.5px;font-weight:700;text-align:center;background:var(--ink3,#8D927F);color:#fff;vertical-align:1px}.rq-badge.busy{background:var(--accent,#C6F135);color:#191314;animation:dotpulse 1.2s ease-in-out infinite}.rq-panel{position:absolute;top:42px;right:0;bottom:0;left:0;z-index:7;overflow-y:auto;background:var(--chip,#fff);color:var(--ink,#191314);padding:12px 14px 16px}.rq-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.rq-hint{font-size:10.5px;color:var(--ink3)}.rq-quality{font-size:10px;color:var(--ink2);display:flex;align-items:center;gap:6px;white-space:nowrap}.rq-quality select{font-size:10px;padding:3px 6px;border-radius:7px;border:1px solid var(--line);background:var(--chip,#fff);color:var(--ink,#191314)}.rq-empty{font-size:11.5px;color:var(--ink3);padding:26px 10px;text-align:center;line-height:1.7}.rq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.rq-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--chip,#fff)}.rq-card.failed{border-color:var(--danger,#c33)}.rq-thumb{position:relative;aspect-ratio:16/9;background:#20262b;cursor:pointer}.rq-thumb img{width:100%;height:100%;object-fit:cover;display:block}.rq-thumb-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff9;font-size:10px}.rq-bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:#ffffff2e}.rq-bar i{display:block;height:100%;background:var(--accent,#C6F135);transition:width .4s}.rq-meta{padding:7px 9px 4px;display:flex;flex-direction:column;gap:2px}.rq-meta b{font-size:10px;color:var(--ink,#191314);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rq-meta span{font-size:9px;color:var(--ink3)}.rq-actions{display:flex;gap:6px;padding:5px 9px 9px}.rq-actions button{font-size:9.5px;padding:3px 9px;border-radius:8px}.rq-actions .rq-x{margin-left:auto;color:var(--ink3)}.rq-spp{width:64px;font:inherit;font-size:10px;padding:3px 6px;border-radius:7px;border:1px solid var(--line);background:var(--chip,#fff);color:var(--ink,#191314)}.rq-dock{position:absolute;right:14px;bottom:14px;z-index:21;width:min(380px,46%);background:var(--chip,#fff);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-pop);overflow:hidden}.rq-dock-x{position:absolute;top:6px;right:6px;z-index:2;height:22px;padding:0 8px;font-size:10px;border-radius:7px;background:#19131499;color:#fff;border:none}.rq-dock-imgwrap{position:relative;aspect-ratio:16/9;background:#20262b;cursor:zoom-in}.rq-dock-imgwrap img{width:100%;height:100%;object-fit:contain;display:block}.rq-dock-wait{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;color:#ffffffbf;font-size:10px;padding:12px;text-align:center}.rq-dock-expand{position:absolute;left:8px;bottom:8px;font-size:9.5px;padding:3px 10px;border-radius:7px;background:#191314a6;color:#fff;border:none}.rq-dock-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px}.rq-dock-status{font-size:9px;color:var(--ink3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rq-dock-btns{display:flex;gap:6px}.rq-dock-btns button{font-size:9.5px;padding:3px 9px;border-radius:8px;height:auto}.rq-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0c0b0bf5;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:grab;touch-action:none}.rq-full:active{cursor:grabbing}.rq-full img{max-width:92vw;max-height:92vh;object-fit:contain;-webkit-user-select:none;user-select:none;will-change:transform}.rq-full-close{position:fixed;top:16px;right:18px;z-index:2;font-size:13px;padding:6px 13px;border-radius:9px;background:#ffffff1f;color:#fff;border:none}.rq-full-close:hover{background:#ffffff3d}.rq-full-bl{position:fixed;left:18px;bottom:16px;z-index:2;display:flex;align-items:center;gap:9px}.rq-full-bl button{font-size:10px;padding:5px 13px;border-radius:8px;height:auto}.rq-full-zoom{color:#fff9;font-size:10px}.rq-denoise{background:var(--accent,#C6F135);color:#191314;border:none}.pv-mini{position:absolute;right:12px;bottom:34px;z-index:6;background:#191314b8;border-radius:10px;padding:6px 8px 4px;pointer-events:none;text-align:center;line-height:0}.pv-mini-n{position:absolute;top:2px;left:50%;transform:translate(-50%);font-size:8px;font-weight:700;color:#ffffffa6;line-height:1}.pv-mini-label{font-size:9px;font-weight:600;color:#fff;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:118px}.pv-building{position:absolute;top:46px;right:10px;z-index:6;display:flex;align-items:center;gap:7px;background:#191314db;color:#fff;padding:5px 12px 5px 10px;border-radius:var(--r-pill);font-size:10px;font-weight:600;pointer-events:none}.pv-spin{width:11px;height:11px;border-radius:50%;border:2px solid rgba(255,255,255,.3);border-top-color:var(--accent,#C6F135);animation:pvspin .7s linear infinite}@keyframes pvspin{to{transform:rotate(360deg)}}.preview3d{position:relative}@media (max-width:920px){.preview3d{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;min-width:0;z-index:40}}.ctxmenu button .cxi{vertical-align:-2px;flex:none;opacity:.85}.importpop{position:absolute;top:calc(100% + 8px);right:96px;z-index:40;width:236px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;box-shadow:var(--shadow-pop);padding:6px;transform-origin:top right;animation:menupop .14s var(--ease)}.versionspop{position:absolute;top:calc(100% + 8px);right:150px;z-index:40;width:250px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;box-shadow:var(--shadow-pop);padding:6px;transform-origin:top right;animation:menupop .14s var(--ease);max-height:min(64vh,480px);overflow-y:auto}.versionspop .tp-title{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);padding:8px 10px 6px}.versionspop .theme-row svg{color:var(--ink2)}.vp-empty{font-size:10.5px;color:var(--ink3);padding:6px 10px 10px;line-height:1.5}.save-pill.clickable{cursor:pointer;pointer-events:auto}.importpop .theme-row svg{color:var(--ink2)}.pv-btn.lit{background:var(--accent);color:var(--accent-ink)}.pv-lightpop{position:absolute;top:46px;right:10px;z-index:8;width:170px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;box-shadow:var(--shadow-pop);padding:8px 6px 6px;transform-origin:top right;animation:menupop .14s var(--ease)}.pv-secpop{width:206px}.pv-elevpop{width:224px}.pv-elevviews{margin:8px 2px;width:calc(100% - 4px)}.pv-elevviews button{flex:1;padding:0 4px;font-size:9px}.pv-sectionaxes{margin:8px 2px;width:calc(100% - 4px)}.pv-sectionaxes button{flex:1;padding:0 4px;font-size:9px}.pv-lightpop .slider{width:calc(100% - 8px);margin:2px 4px 6px}.pv-lighttitle{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);padding:0 10px 6px}.pv-lightrow{display:flex;align-items:center;gap:9px;padding:6px 10px;border-radius:9px;font-size:11px;cursor:pointer;-webkit-user-select:none;user-select:none}.pv-lightrow:hover{background:var(--chip-h)}.pv-lightrow input{accent-color:var(--accent-line)}.pv-envtime{font-size:10px;font-weight:600;text-align:center;padding:0 0 6px;color:var(--ink2)}.pv-env{position:absolute;left:12px;bottom:14px;z-index:6;width:180px;background:#191314c7;border-radius:12px;padding:9px 11px;display:flex;flex-direction:column;gap:7px;color:#fff}.pv-env-row{display:flex;align-items:center;gap:7px;font-size:11px;line-height:1}.pv-env-row input[type=range]{flex:1;min-width:0;height:3px;accent-color:var(--accent,#C6F135);cursor:pointer}.pv-env-row input[type=range]:disabled{opacity:.35;cursor:default}.pv-env-ico{width:16px;text-align:center;flex:none;font-size:12px}.pv-env-tgl{background:none;border:none;padding:0;height:auto;cursor:pointer;filter:none}.pv-env-tgl.off{filter:grayscale(1);opacity:.45}.pv-env-val{width:48px;flex:none;text-align:right;font-size:9px;color:#ffffffc7;white-space:nowrap}
