.cp{overflow:hidden}.cp>.search{margin:0 12px;flex:none}.cp-head{margin:12px 12px 8px;height:34px;display:flex;align-items:center;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-lg);font-weight:600;font-size:13px;color:var(--ink);flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-tabs{display:flex;flex-wrap:wrap;gap:6px 6px;padding:10px 12px 8px;border-bottom:1px solid var(--line-2);flex:none}.cp-tabs button{height:26px;padding:0 9px;border-radius:var(--r-md);border:1px solid transparent;font-size:12.5px;color:var(--ink-2);display:inline-flex;align-items:center;gap:4px}.cp-tabs button em{font-style:normal;font-size:11.5px;color:var(--muted)}.cp-tabs button:hover{background:var(--hover)}.cp-tabs button.on{background:var(--accent-soft);border-color:var(--accent-hi);color:var(--ink);font-weight:600}.cp-height{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line-2);font-size:12px;color:var(--muted);flex:none}.cp-height .seg{height:26px}.cp-height .seg button{padding:0 10px}.cp-body{flex:1;min-height:0;overflow:auto;padding:4px 12px 16px}.cp-group+.cp-group{margin-top:2px}.cp-gh{width:100%;display:flex;align-items:center;gap:6px;height:30px;padding:0 2px;font-size:12px;font-weight:600;color:var(--ink-2);text-transform:none}.cp-gh svg.i{width:13px;height:13px;color:var(--muted)}.cp-gh em{margin-left:auto;font-style:normal;font-weight:500;font-size:11px;color:var(--muted)}.cp-gh:hover{color:var(--ink)}.cp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;padding:2px 0 8px}.cp-card{position:relative;display:flex;flex-direction:column;align-items:stretch;text-align:left;min-width:0;padding:0;border-radius:var(--r-md);cursor:grab;background:none}.cp-card:active{cursor:grabbing}.cp-im{display:block;position:relative;aspect-ratio:1;border-radius:var(--r-md);background:#fff;overflow:hidden}.cp-im img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.cp-im[data-state=pending]{animation:cp-pulse 1.4s ease-in-out infinite}@keyframes cp-pulse{50%{opacity:.7}}.cp-ph{position:absolute;inset:18% 22%;width:56%;height:64%;fill:none;stroke:#bfc2c0;stroke-width:1.2;stroke-linejoin:round;stroke-linecap:round}.cp-card:hover .cp-im{box-shadow:inset 0 0 0 1.5px var(--accent-hi)}.cp-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cp-card.sel .cp-im{box-shadow:inset 0 0 0 2px var(--accent)}.cp-nm{margin-top:5px;font-size:14px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-description{font-size:11px;line-height:1.25;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-sz{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-sketch{align-self:flex-start;margin-top:3px;padding:1px 5px;border-radius:999px;background:#fff3d6;color:#795400;font-size:10px;font-weight:700}.cp-note{margin:14px 2px;font-size:12px;line-height:1.45;color:var(--muted)}.cp-link{color:var(--accent);font-weight:600;text-decoration:underline}.cp-bare{flex:1;min-height:0;display:flex;flex-direction:column}.cp-hint{margin:6px 12px 0;font-size:11.5px;line-height:1.4;color:var(--muted);flex:none}.access-pop{left:auto;right:76px;width:480px;max-height:calc(100vh - 100px);overflow:auto;z-index:7}.access-pop .pop-h .t2{max-width:380px}.access-pop .acc-row{align-items:center}.access-pop .acc-row .sub{display:block;color:var(--muted, #757b80);font-size:11px}.access-pop .acc-act{display:inline-flex;align-items:center;gap:8px}.access-pop .chip-role{font-size:11px;color:var(--accent, #6f6939);font-weight:600}.access-pop .acc-forms{padding:8px 12px 4px;display:grid;gap:10px;border-top:1px solid var(--line, #e3e3df)}.access-pop .acc-field{display:grid;gap:4px;font-size:12px;color:var(--muted, #757b80)}.access-pop .acc-line{display:flex;gap:6px}.access-pop .acc-line select{flex:1;min-width:0;height:28px;border:1px solid var(--line, #e3e3df);border-radius:4px;background:#fff;color:var(--ink, #1d2023);font:inherit}.access-pop .acc-check{display:flex;align-items:center;gap:6px;color:var(--ink-2, #4a4f54)}.access-pop .acc-journal{padding:6px 12px 10px;font-size:12px}.access-pop .acc-journal summary{cursor:pointer;color:var(--muted, #757b80)}.access-pop .acc-journal .prow{padding:4px 0}:root{--font-ui:"Golos Text","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;--rail-w:64px;--panel-w:328px;--panel-wide:600px;--bar-h:54px;--lab-w:84px;--ctl-h:28px;--r-sm:3px;--r-md:4px;--r-lg:6px;--ok:#2F7A4D;--ok-bg:#E6F2EA;--warn:#94600A;--warn-bg:#FBF1DE;--err:#A8382F;--err-bg:#F7E2DF;--scene-bg-1:#ECECE9;--scene-bg-2:#D6D7D3}:root[data-variant=a]{--rail-bg:#222527;--rail-fg:#A6ACB1;--rail-fg-active:#FFF;--rail-active-bg:#323639;--rail-line:#2E3134;--accent:#6F6939;--accent-hi:#B4AB73;--accent-soft:#EFEDE2;--accent-ink:#FFF;--bar-bg:#26292C;--bar-fg:#F2F3F3;--bar-muted:#9DA3A8;--bar-line:#3A3E42;--bar-hover:#34383C;--panel-bg:#FFF;--panel-sub:#F4F4F2;--hover:#F7F7F5;--ink:#1D2023;--ink-2:#4A4F54;--muted:#757B80;--line:#E3E3DF;--line-2:#EEEEEB;--thumb-bg:#F6F5F2;--tool-bg:#26292C;--tool-fg:#D9DCDE;--tool-active-bg:#6F6939;--tool-active-fg:#FFF;--tool-line:#3A3E42;--badge-bg:#6F6939;--badge-fg:#FFF;--bar-warn-bg:rgba(226,168,64,.16);--bar-warn-fg:#EDC06A;--bar-ok-bg:rgba(110,190,140,.16);--bar-ok-fg:#8FD3A8;--sel:#8F8650}:root[data-variant=b]{--rail-bg:#EDF0F2;--rail-fg:#4F5A65;--rail-fg-active:#1F416A;--rail-active-bg:#FFF;--rail-line:#DCE1E5;--accent:#23466E;--accent-hi:#3D6798;--accent-soft:#E8EEF5;--accent-ink:#FFF;--bar-bg:#FFF;--bar-fg:#1B2229;--bar-muted:#68737D;--bar-line:#E3E7EA;--bar-hover:#F1F4F6;--panel-bg:#FFF;--panel-sub:#F2F4F6;--hover:#F7F9FA;--ink:#1B2229;--ink-2:#46515B;--muted:#6C7680;--line:#E1E5E8;--line-2:#EDF0F2;--thumb-bg:#F4F6F8;--tool-bg:#FFF;--tool-fg:#3E4852;--tool-active-bg:#23466E;--tool-active-fg:#FFF;--tool-line:#E3E7EA;--badge-bg:#23466E;--badge-fg:#FFF;--bar-warn-bg:var(--warn-bg);--bar-warn-fg:var(--warn);--bar-ok-bg:var(--ok-bg);--bar-ok-fg:var(--ok);--sel:#2F5D92}@media(min-width:1600px){:root{--rail-w:72px;--panel-w:368px;--panel-wide:740px;--bar-h:58px;--lab-w:96px}}*{box-sizing:border-box}[hidden]{display:none!important}em{font-style:normal}html,body{height:100%;margin:0}body{font-family:var(--font-ui);font-size:13px;line-height:1.3;color:var(--ink);background:var(--panel-bg);overflow:hidden;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}button[disabled]{cursor:default}input,select{font:inherit;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent-hi);outline-offset:1px}svg.i{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.mut{color:var(--muted)}.warn-t{color:var(--warn);font-weight:600}.ok-t{color:var(--ok);font-weight:600}.app{display:grid;grid-template-columns:var(--rail-w) var(--panel-w) 1fr;height:100%}.app.wide{grid-template-columns:var(--rail-w) var(--panel-wide) 1fr}.rail{background:var(--rail-bg);display:flex;flex-direction:column;border-right:1px solid var(--rail-line)}.rail .grp{display:flex;flex-direction:column}.rail .grp.bottom{margin-top:auto;padding-bottom:6px}.rail-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px 8px;color:var(--rail-fg)}.rail-btn svg.i{width:20px;height:20px}.rail-btn span{font-size:10px;line-height:1.1}.rail-btn:hover{color:var(--rail-fg-active)}.rail-btn.active{background:var(--rail-active-bg);color:var(--rail-fg-active)}.rail-btn.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--accent-hi)}:root[data-variant=b] .rail-btn.active:before{background:var(--accent)}.rail-btn .cnt{position:absolute;top:4px;right:8px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;font-size:10px;line-height:16px;font-weight:600;box-shadow:0 0 0 2px var(--rail-bg);background:#4a4d50;color:#e9eaeb}:root[data-variant=b] .rail-btn .cnt{background:#5f6a75;color:#fff}.rail-btn .cnt.warn{background:var(--warn)!important;color:#fff!important}.rail-btn.menu{padding:14px 2px 12px}.rail-sep{height:1px;background:var(--rail-line);margin:4px 12px}.panel{background:var(--panel-bg);border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0;min-height:0}.ib{width:28px;height:28px;display:grid;place-items:center;border-radius:var(--r-md);color:var(--ink-2);flex:none}.ib:hover{background:var(--panel-sub);color:var(--ink)}.ib.del:hover{color:var(--err)}.inp{display:flex;align-items:center;height:var(--ctl-h);border:1px solid var(--line);border-radius:var(--r-md);padding:0 7px;gap:5px;background:var(--panel-bg);min-width:0}.inp:focus-within{border-color:var(--accent)}.inp input{border:0;outline:none;width:100%;min-width:0;background:none;font-weight:500;font-size:12.5px}.inp .u{color:var(--muted);font-size:11px;flex:none}.inp select{border:0;outline:none;width:100%;background:none;appearance:none;font-weight:500;font-size:12.5px;cursor:pointer}.inp svg.i{width:14px;height:14px;color:var(--muted)}.search{display:flex;align-items:center;gap:6px;padding:0 8px;height:var(--ctl-h);border-radius:var(--r-md);background:var(--panel-sub);color:var(--muted)}.search svg.i{width:15px;height:15px}.search input{flex:1;min-width:0;border:0;background:none;outline:none;color:var(--ink);font-size:12.5px}.search input::placeholder{color:var(--muted)}.search kbd{font:500 10px var(--font-ui);border:1px solid var(--line);border-radius:3px;padding:0 4px;color:var(--muted);background:var(--panel-bg)}.seg{display:flex;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;height:var(--ctl-h);min-width:0}.seg button{flex:1;padding:0 6px;font-size:12px;color:var(--ink-2);display:inline-flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap;min-width:0}.seg button+button{border-left:1px solid var(--line)}.seg button:hover{background:var(--hover)}.seg button.on{background:var(--accent-soft);color:var(--accent);font-weight:600;box-shadow:inset 0 0 0 1px var(--accent)}.seg button svg.i{width:14px;height:14px}.stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);height:var(--ctl-h)}.stepper button{width:26px;height:100%;display:grid;place-items:center;color:var(--ink-2)}.stepper button:hover{background:var(--hover)}.stepper button svg.i{width:13px;height:13px}.stepper span{min-width:22px;text-align:center;font-weight:600;font-size:12.5px}.btn{height:var(--ctl-h);padding:0 10px;border-radius:var(--r-md);border:1px solid var(--line);font-weight:500;font-size:12px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;background:var(--panel-bg)}.btn:hover{border-color:var(--ink-2)}.btn.pri{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.btn.pri:hover{filter:brightness(1.07)}.btn.dis{color:var(--muted);background:var(--panel-sub);border-color:transparent;cursor:not-allowed}.btn svg.i{width:14px;height:14px}.lnk{color:var(--accent);font-weight:600;font-size:12px}.lnk:hover{text-decoration:underline}.sw{width:18px;height:18px;border-radius:3px;border:1px solid rgba(0,0,0,.14);flex:none;display:inline-block}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex:none;background:var(--ok)}.dot.warn{background:var(--warn)}.dot.err{background:var(--err)}.switch{width:32px;height:18px;border-radius:9px;background:#c5c9cd;position:relative;flex:none;transition:background .15s}.switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000040;transition:left .15s}.switch.on{background:var(--accent)}.switch.on:after{left:16px}.cbx{width:16px;height:16px;border-radius:3px;border:1.5px solid #9BA1A6;display:grid;place-items:center;background:var(--panel-bg);flex:none}.cbx.on{background:var(--accent);border-color:var(--accent)}.cbx.on:after{content:"";width:9px;height:9px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/contain no-repeat}.cat-h{padding:10px 12px 8px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--line)}.cat-src{display:flex;align-items:center;gap:6px}.cat-src .inp{flex:1;height:30px;font-weight:600}.cat-src .inp select{font-weight:600;font-size:13px}.ctabs{display:flex;flex-wrap:wrap;gap:4px}.ctab{height:26px;padding:0 8px;border-radius:var(--r-md);font-size:12px;color:var(--ink-2);display:inline-flex;align-items:center;gap:5px;border:1px solid transparent}.ctab:hover{background:var(--hover)}.ctab em{color:var(--muted);font-size:11px}.ctab.on{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);font-weight:600}.ctab.on em{color:var(--accent)}.cat-sub{display:flex;align-items:center;gap:8px;padding:8px 12px 0;font-size:12px;color:var(--muted)}.cat-sub .seg{width:120px;height:24px}.cat-sub .seg button{font-size:11.5px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 6px;padding:8px 10px 12px}.card{display:flex;flex-direction:column;text-align:left;border-radius:var(--r-md);padding:3px;border:1px solid transparent}.card:hover{border-color:var(--line);background:var(--hover)}.card .th{position:relative;aspect-ratio:1/1;border-radius:var(--r-sm);background:var(--thumb-bg)}.card .th canvas{position:absolute;inset:0;width:100%;height:100%}.card .n{position:absolute;right:3px;top:3px;padding:0 4px;height:15px;border-radius:3px;background:var(--panel-bg);border:1px solid var(--line);color:var(--ink-2);font-size:10px;font-weight:600;line-height:13px}.card .art{font-size:12.5px;font-weight:600;margin-top:4px;padding:0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card .sz{font-size:11px;color:var(--muted);padding:0 2px;white-space:nowrap}.cat-body{flex:1;overflow-y:auto;min-height:0;scrollbar-width:thin}.insp{display:flex;flex-direction:column;height:100%;min-height:0}.ih{display:flex;align-items:center;gap:4px;padding:8px 8px 8px 6px;border-bottom:1px solid var(--line)}.ih-t{flex:1;min-width:0;padding-left:2px}.ih-a{display:flex;align-items:center;gap:7px;font-size:17px;font-weight:700;letter-spacing:-.01em;line-height:1.15}.ih-s{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.tag{font-size:10.5px;font-weight:600;padding:1px 5px;border-radius:3px;letter-spacing:0}.tag.nst{background:var(--accent-soft);color:var(--accent)}.tag.std{background:var(--panel-sub);color:var(--ink-2)}.strip{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--accent-soft);font-size:12px;border-bottom:1px solid var(--line)}.strip svg.i{width:15px;height:15px;color:var(--accent)}.strip .t{flex:1;min-width:0}.strip.warn{background:var(--warn-bg)}.strip.warn svg.i{color:var(--warn)}.ibody{flex:1;overflow-y:auto;min-height:0;scrollbar-width:thin}.grp{padding:5px 0;border-bottom:1px solid var(--line-2)}.r{display:grid;grid-template-columns:var(--lab-w) minmax(0,1fr);align-items:center;gap:8px;min-height:34px;padding:3px 12px}.r>label,.r>.lab{font-size:12px;color:var(--ink-2);line-height:1.2}.r>.lab small{display:block;font-size:10.5px;color:var(--muted)}.r.top{align-items:start}.r.top>label{padding-top:6px}.ro{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500}.ro svg.i{width:13px;height:13px;color:var(--muted)}.ro .mut{font-weight:400;font-size:11.5px}.wc{display:flex;flex-direction:column;gap:3px}.wrow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.wb{height:var(--ctl-h);border:1px solid var(--line);border-radius:var(--r-md);font-size:12px;font-weight:500;background:var(--panel-bg)}.wb:hover{border-color:var(--ink-2)}.wb.f2{border-style:dashed}.wb.on{background:var(--accent);border-color:var(--accent);border-style:solid;color:var(--accent-ink);font-weight:700}.wb.nr{color:#b5b9bd}.wcap{grid-column:span 4;font-size:10.5px;color:var(--muted);display:flex;align-items:center;padding-left:4px;line-height:1.15}.pos2{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.pos2 .seg{width:104px}.pick{display:flex;align-items:center;gap:7px;height:var(--ctl-h);width:100%;padding:0 6px;border:1px solid var(--line);border-radius:var(--r-md);text-align:left;font-size:12.5px;font-weight:500;min-width:0}.pick:hover{border-color:var(--ink-2)}.pick.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.pick .t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pick .t small{color:var(--muted);font-weight:400;font-size:11px}.pick>svg.i{width:14px;height:14px;color:var(--muted)}.pick .hw-i{width:30px;height:18px;position:relative;flex:none}.pick .hw-i canvas{position:absolute;inset:0;width:100%;height:100%}.nsrow{display:flex;align-items:center;gap:8px}.nsrow .t{flex:1;font-size:12px;color:var(--muted)}.mlist{display:flex;flex-direction:column;padding:0 12px 4px calc(12px + var(--lab-w) + 8px);gap:1px}.mli{display:flex;align-items:center;gap:6px;font-size:12px;min-height:22px}.mli .nm{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mli .pv{font-weight:600;white-space:nowrap}.isum{border-top:1px solid var(--line);padding:7px 12px 8px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;background:var(--panel-bg)}.isum .l{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.isum .l b{color:var(--ink-2);font-weight:600}.isum .tot{grid-row:span 2;text-align:right}.isum .tot b{font-size:17px;font-weight:700;display:block;line-height:1.1;white-space:nowrap}.isum .tot b small{font-size:11px;font-weight:500;color:var(--muted)}.isum .tot span{font-size:11px;display:inline-flex;align-items:center;gap:4px}.fly{position:absolute;left:8px;top:calc(12px + var(--bar-h) + 8px);width:360px;max-height:calc(100% - var(--bar-h) - 40px);background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 12px 32px #14181c38;z-index:7;display:flex;flex-direction:column}@media(min-width:1600px){.fly{width:400px}}.fly-h{display:flex;align-items:center;gap:6px;padding:8px 8px 8px 12px;border-bottom:1px solid var(--line)}.fly-h .t{flex:1;font-weight:600;font-size:13.5px}.fly-h .t small{font-weight:400;color:var(--muted);font-size:11.5px;margin-left:4px}.fly-b{overflow-y:auto;min-height:0;padding:10px 12px;display:flex;flex-direction:column;gap:9px;scrollbar-width:thin}.fly-f{border-top:1px solid var(--line);padding:8px 12px;display:flex;align-items:center;gap:8px}.fly-f .t{flex:1;min-width:0;font-size:11.5px;color:var(--ink-2);line-height:1.3}.fly .lbl{font-size:11.5px;color:var(--muted);margin-bottom:-4px}.utabs{display:flex;gap:12px;border-bottom:1px solid var(--line)}.utabs button{padding:5px 0 6px;font-size:12.5px;color:var(--muted);position:relative}.utabs button.on{color:var(--ink);font-weight:600}.utabs button.on:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.sgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.sbtn{display:flex;flex-direction:column;gap:3px;text-align:left;padding:2px;border-radius:var(--r-md);border:1px solid transparent}.sbtn:hover{background:var(--hover)}.sbtn .c{height:34px;border-radius:3px;border:1px solid rgba(0,0,0,.12)}.sbtn .nm{font-size:10.5px;line-height:1.2;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:25px}.sbtn.on{border-color:var(--accent);background:var(--accent-soft)}.sbtn.cur .c{box-shadow:inset 0 0 0 2px #fff,0 0 0 1px var(--ink-2)}.mtable{display:flex;flex-direction:column}.mrow{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:4px 8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line-2)}.mrow .nm{font-size:12.5px;font-weight:500}.mrow .nm small{display:block;font-size:11px;color:var(--muted);font-weight:400}.mrow .pr{font-size:12px;font-weight:600;text-align:right;white-space:nowrap}.mrow .ctl{grid-column:2/4;display:flex;align-items:center;gap:8px}.mrow .ctl .inp{width:96px}.mrow .ctl .mut{font-size:11px}.mrow.blk .nm{color:var(--ink-2)}.mrow.blk .why{grid-column:2/4;font-size:11.5px;color:var(--muted);line-height:1.35}.mrow.blk .why .lnk{font-size:11.5px;margin-right:10px}.lock-i{color:var(--muted)}.lock-i svg.i{width:14px;height:14px}.dhead{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted);padding-top:4px}.dhead button{display:inline-flex;align-items:center;gap:3px;color:var(--ink-2);font-size:11.5px;font-weight:600}.dhead svg.i{width:13px;height:13px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.field{display:flex;flex-direction:column;gap:3px}.field label{font-size:11px;color:var(--muted)}.oh{padding:8px 12px;display:flex;flex-direction:column;gap:7px;border-bottom:1px solid var(--line)}.oh .row1{display:flex;align-items:center;gap:8px}.oh .t{font-size:15px;font-weight:700}.oh .row1 .seg{width:190px;margin-left:auto}.fl{display:flex;gap:4px;flex-wrap:nowrap;overflow:hidden}.fl button{height:24px;padding:0 8px;border-radius:var(--r-md);font-size:11.5px;color:var(--ink-2);border:1px solid var(--line);display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.fl button em{color:var(--muted)}.fl button.on{background:var(--ink);border-color:var(--ink);color:var(--panel-bg)}.fl button.on em{color:inherit;opacity:.7}.fl button.w{color:var(--warn);border-color:#e5c489}.fl button.w.on{background:var(--warn);border-color:var(--warn);color:#fff}.fl button svg.i{width:13px;height:13px}.otable{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.otable th{position:sticky;top:0;background:var(--panel-bg);z-index:1;text-align:left;font-size:11px;font-weight:500;color:var(--muted);padding:5px 6px;border-bottom:1px solid var(--line);white-space:nowrap}.otable .ar{text-align:right}.otable td{padding:3px 6px;border-bottom:1px solid var(--line-2);height:32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.otable tr.g td{height:24px;background:var(--panel-sub);font-weight:600;font-size:11.5px;color:var(--ink-2);border-bottom:0}.otable tr.it{cursor:pointer}.otable tr.it:hover td{background:var(--hover)}.otable tr.it.sel td{background:var(--accent-soft)}.otable tr.it.sel td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.otable .p{display:flex;align-items:center;gap:7px;min-width:0}.otable .p .mini{width:28px;height:28px;position:relative;flex:none;border-radius:3px;background:var(--thumb-bg)}.otable .p .mini canvas{position:absolute;inset:0;width:100%;height:100%}.otable .p b{font-weight:600;font-size:12.5px;flex:none}.otable .p small{color:var(--muted);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;min-width:0}.otable tr.sub td{height:22px;font-size:11.5px;color:var(--ink-2);border-bottom:0}.otable tr.sub .p{padding-left:33px}.otable tr.sub .p:before{content:"↳";color:var(--muted);margin-right:2px}.otable .f{display:flex;align-items:center;gap:5px;min-width:0}.otable .f span{overflow:hidden;text-overflow:ellipsis}.otable .f .sw{width:14px;height:14px}.of{border-top:1px solid var(--line);padding:7px 12px;display:flex;align-items:center;gap:14px}.of .k{display:flex;flex-direction:column}.of .k small{font-size:11px;color:var(--muted);white-space:nowrap}.of .k b{font-size:13px;white-space:nowrap}.of .k.big b{font-size:16px}.of .acts{margin-left:auto;display:flex;gap:6px}.scene{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 55% 40%,var(--scene-bg-1) 0%,var(--scene-bg-2) 100%);min-width:0}.scene canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.wall-label{position:absolute;transform:translate(-50%,-50%);padding:1px 6px;border-radius:3px;background:#ffffffe0;color:#3d4247;font:500 11px var(--font-ui);white-space:nowrap;pointer-events:none}.wall-label b{font-weight:700;margin-right:4px}.qbar{position:absolute;transform:translate(-50%,-100%);display:flex;align-items:center;gap:1px;padding:2px;border-radius:var(--r-lg);background:var(--tool-bg);color:var(--tool-fg);box-shadow:0 6px 16px #14181c38;z-index:4;white-space:nowrap}:root[data-variant=b] .qbar{border:1px solid var(--tool-line)}.qbar .ql{padding:0 8px 0 6px;font-weight:700;font-size:12px;border-right:1px solid var(--tool-line);margin-right:2px}.qbar button{width:28px;height:26px;display:grid;place-items:center;border-radius:var(--r-md)}.qbar button:hover{background:var(--bar-hover)}.qbar svg.i{width:15px;height:15px}.callout{position:absolute;transform:translate(-50%,calc(-100% - 8px));background:var(--panel-bg);border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:var(--r-md);padding:5px 9px;font-size:12px;box-shadow:0 6px 18px #14181c2e;white-space:nowrap;z-index:5}.callout span{display:block;color:var(--warn);font-size:11px;font-weight:600}.topbar{position:absolute;top:12px;left:50%;transform:translate(-50%);height:var(--bar-h);display:flex;align-items:stretch;background:var(--bar-bg);color:var(--bar-fg);border-radius:var(--r-lg);box-shadow:0 6px 20px #14181c2e,0 1px 3px #14181c1f;z-index:6;white-space:nowrap}:root[data-variant=b] .topbar{border:1px solid var(--bar-line)}.topbar.compact .tb-proj-seg,.topbar.compact .tb-edit{display:none}.tb-seg{display:flex;align-items:center;padding:0 5px}.tb-seg+.tb-seg{border-left:1px solid var(--bar-line)}.tb-proj{display:flex;align-items:center;gap:8px;padding:0 10px 0 12px;border-radius:var(--r-lg) 0 0 var(--r-lg);text-align:left;height:100%}.tb-proj:hover,.tb-price:hover,.tb-btn:hover{background:var(--bar-hover)}.tb-proj .p1{font-weight:600}.tb-proj .p2{font-size:11px;color:var(--bar-muted);margin-top:1px}.tb-proj svg.i{width:15px;height:15px;color:var(--bar-muted)}.tb-price{display:flex;flex-direction:column;justify-content:center;padding:0 14px;height:100%;text-align:left;min-width:160px}.tb-price .pv{font-size:16px;font-weight:600;line-height:1.1}.tb-price .pv small{font-weight:500;font-size:11px;color:var(--bar-muted);margin-right:3px}:root[data-variant=b] .tb-price .pv{color:var(--accent)}.pstat{display:inline-flex;align-items:center;gap:5px;margin-top:3px;padding:0 6px;border-radius:3px;font-size:10.5px;font-weight:600;align-self:flex-start;background:var(--bar-warn-bg);color:var(--bar-warn-fg);line-height:16px}.pstat.ok{background:var(--bar-ok-bg);color:var(--bar-ok-fg)}.pstat:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.tb-btn{width:36px;height:38px;display:grid;place-items:center;border-radius:var(--r-md);color:var(--bar-fg)}.tb-btn[disabled]{opacity:.35}.tb-btn[disabled]:hover{background:none}.tb-save{display:flex;align-items:center;gap:6px;padding-right:6px}.tb-save .st{font-size:10.5px;color:var(--bar-muted);line-height:1.2;display:none}@media(min-width:1600px){.tb-save .st{display:block}}.tb-kp{display:flex;align-items:center;gap:6px;margin:8px 8px 8px 4px;padding:0 12px 0 10px;border-radius:var(--r-md);background:var(--accent);color:var(--accent-ink);font-weight:600}.tb-kp .lk{width:13px;height:13px;opacity:.85}.mode{position:absolute;left:12px;bottom:12px;display:flex;border-radius:var(--r-md);background:#ffffffd1;border:1px solid rgba(0,0,0,.08);z-index:4;overflow:hidden}.mode button{padding:5px 10px;font-size:12px;color:#4b5157}.mode button.on{background:#fff;color:#1d2023;font-weight:600;box-shadow:inset 0 -2px 0 var(--accent)}.rstrip{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;gap:8px;z-index:6}.tool{display:flex;flex-direction:column;background:var(--tool-bg);color:var(--tool-fg);border-radius:var(--r-lg);padding:3px;box-shadow:0 4px 14px #14181c24;width:44px}:root[data-variant=b] .tool{border:1px solid var(--tool-line)}.tool .tl{font-size:9px;font-weight:600;letter-spacing:.06em;text-align:center;color:var(--bar-muted);padding:4px 0 2px}.tool .tsep{height:1px;background:var(--tool-line);margin:3px}.tbtn{width:38px;height:32px;display:grid;place-items:center;border-radius:var(--r-md);font-weight:600;font-size:12px}.tbtn:hover{background:var(--bar-hover)}.tbtn.on{background:var(--tool-active-bg);color:var(--tool-active-fg)}.tbtn.flag.on{background:transparent;color:var(--tool-fg);box-shadow:inset 0 0 0 1.5px var(--accent-hi)}:root[data-variant=b] .tbtn.flag.on{box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent)}.tbtn svg.i{width:17px;height:17px}.walls{display:grid;grid-template-columns:1fr 1fr;gap:2px}.walls .tbtn{width:18px;height:22px;font-size:11px;border-radius:3px}.hw-btn{display:flex;flex-direction:column;align-items:center;gap:2px;width:44px;padding:8px 0 6px;border-radius:var(--r-lg);background:var(--accent);color:var(--accent-ink);box-shadow:0 4px 14px #14181c2e;font-size:9.5px;font-weight:600}.hw-btn.on{outline:2px solid #fff;outline-offset:-4px}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);background:#1d2023;color:#fff;font:500 11.5px var(--font-ui);padding:4px 7px;border-radius:3px;white-space:nowrap;pointer-events:none;z-index:20}.topbar [data-tip]:hover:after,.ih [data-tip]:hover:after{right:auto;left:50%;top:calc(100% + 6px);transform:translate(-50%)}.comments{position:absolute;bottom:0;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:7px;padding:6px 12px 7px;border-radius:var(--r-lg) var(--r-lg) 0 0;background:var(--bar-bg);color:var(--bar-fg);box-shadow:0 -2px 10px #14181c1f;font-size:12px;font-weight:500;z-index:4;white-space:nowrap}:root[data-variant=b] .comments{border:1px solid var(--bar-line);border-bottom:0}.comments svg.i{width:15px;height:15px}.comments .n{min-width:17px;height:17px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font-size:10px;line-height:17px;font-weight:600;text-align:center;padding:0 5px}.comments .c2{color:var(--bar-muted);font-weight:400}.mock{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:8px;padding:4px 5px 4px 9px;border-radius:var(--r-md);background:#ffffffd9;color:#4b5157;font-size:10.5px;z-index:4;border:1px solid rgba(0,0,0,.06)}.mock .vs{display:flex;gap:2px}.mock .vs button{padding:2px 6px;border-radius:3px;font-weight:600;color:#4b5157}.mock .vs button.on{background:#1d2023;color:#fff}@media(max-width:1500px){.mock .long,.comments .c2{display:none}}.pop{position:absolute;top:calc(12px + var(--bar-h) + 8px);background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 12px 32px #14181c38;z-index:7;width:380px}.pop-h{padding:9px 10px 8px 12px;border-bottom:1px solid var(--line);display:flex;gap:8px;align-items:flex-start}.pop-h .t1{font-weight:600}.pop-h .t2{font-size:11px;color:var(--muted);margin-top:1px}.pop-h .ib{margin-left:auto}.pop .strip{border-bottom:1px solid var(--line)}.prow{display:grid;grid-template-columns:1fr auto;gap:8px;padding:5px 12px;font-size:12px;border-bottom:1px solid var(--line-2)}.prow .q{color:var(--muted);margin-left:4px}.prow.issue{background:var(--warn-bg)}.prow.issue .sub{display:block;color:var(--ink-2);font-size:11px}.pop-sum{padding:8px 12px;display:grid;grid-template-columns:1fr auto;gap:2px 8px;font-size:12px}.pop-sum .big{font-weight:700;font-size:14px}.pop-f{padding:0 12px 10px;display:flex;gap:6px}.hwx{position:absolute;top:calc(12px + var(--bar-h) + 8px);bottom:12px;right:64px;width:470px;background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 12px 32px #14181c38;z-index:7;display:flex;flex-direction:column;min-height:0}@media(min-width:1600px){.hwx{width:540px}}.hwx-h{padding:8px 8px 8px 12px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:7px}.hwx-h .row{display:flex;align-items:center;gap:8px}.hwx-h .row .t{font-weight:600;font-size:13.5px;flex:1}.hwx-h .row .seg{flex:1}.hwx-h .row .search{width:170px}.hwx-b{flex:1;display:grid;grid-template-columns:136px minmax(0,1fr);min-height:0}.cats{border-right:1px solid var(--line);padding:4px;overflow:auto;display:flex;flex-direction:column;gap:1px}.cat{display:flex;align-items:center;gap:7px;padding:6px 7px;border-radius:var(--r-md);text-align:left;color:var(--ink-2);font-size:12px;line-height:1.2}.cat:hover{background:var(--hover)}.cat.on{background:var(--accent-soft);color:var(--ink);font-weight:600}.cat svg.i{width:15px;height:15px;color:var(--muted)}.cat.on svg.i{color:var(--accent)}.cat em{margin-left:auto;font-size:11px;color:var(--muted);font-weight:500}.plist{overflow:auto;min-width:0}.psub{display:flex;gap:4px;padding:6px 8px;border-bottom:1px solid var(--line-2);flex-wrap:wrap}.psub button{height:22px;padding:0 7px;border-radius:var(--r-sm);font-size:11.5px;color:var(--ink-2)}.psub button.on{background:var(--ink);color:var(--panel-bg)}.prow2{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:4px 9px;align-items:center;padding:6px 8px;border-bottom:1px solid var(--line-2)}.prow2:hover{background:var(--hover)}.prow2 .im{width:62px;height:44px;border-radius:3px;background:var(--thumb-bg);position:relative;grid-row:span 2}.prow2 .im canvas{position:absolute;inset:0;width:100%;height:100%}.prow2 .nm{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prow2 .sp{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden}.prow2 .fins{display:inline-flex;gap:3px}.fin-d{width:11px;height:11px;border-radius:50%;border:1px solid rgba(0,0,0,.2);display:inline-block}.fin-d.on{box-shadow:0 0 0 1.5px var(--panel-bg),0 0 0 2.5px var(--ink-2)}.prow2 .pr{font-size:12.5px;font-weight:600;text-align:right;white-space:nowrap}.prow2 .ac{display:flex;justify-content:flex-end}.prow2 .add{height:24px;padding:0 8px;border-radius:var(--r-md);border:1px solid var(--accent);color:var(--accent);font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.prow2 .add:hover{background:var(--accent-soft)}.prow2 .add svg.i{width:13px;height:13px}.prow2 .inpj{display:flex;align-items:center;gap:4px}.prow2 .inpj svg.i{width:15px;height:15px}.prow2 .inpj .stepper{height:24px}.prow2 .inpj small{color:var(--ok);font-size:11px;font-weight:600}.hwx-f{border-top:1px solid var(--line);padding:7px 12px;display:flex;gap:10px;align-items:center;font-size:12px}.hwx-f .t{flex:1;min-width:0}.hwx-f small{display:block;color:var(--muted);font-size:11px}.toast{position:absolute;left:50%;bottom:48px;transform:translate(-50%);background:#1d2023;color:#fff;padding:7px 11px;border-radius:var(--r-md);font-size:12px;z-index:9;box-shadow:0 6px 18px #00000040;white-space:nowrap}.placeholder{padding:24px 16px;color:var(--muted);line-height:1.45}.placeholder b{color:var(--ink);display:block;margin-bottom:4px}@media(prefers-reduced-motion:reduce){*{transition:none!important}}:root{--bar-err-bg:rgba(220,110,95,.18);--bar-err-fg:#F0A397}:root[data-variant=b]{--bar-err-bg:var(--err-bg);--bar-err-fg:var(--err)}.pstat.err{background:var(--bar-err-bg);color:var(--bar-err-fg)}.rail-btn .cnt.err{background:var(--err)!important}.strip.err{background:var(--err-bg)}.strip.err svg.i{color:var(--err)}#saveBtn.bad{position:relative}#saveBtn.bad:after{content:"";position:absolute;right:7px;top:8px;width:7px;height:7px;border-radius:50%;background:var(--err);box-shadow:0 0 0 2px var(--bar-bg)}.gh{display:flex;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:600;color:var(--ink-2)}.gh .mut{font-weight:400}.gh svg.i{width:14px;height:14px}.dot.mutd{background:#b4b9bd}.walls4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.wl{display:flex;flex-direction:column;align-items:center;padding:3px 0;border:1px solid var(--line);border-radius:var(--r-md)}.wl b{font-size:12px}.wl span{font-size:11px;color:var(--muted)}.wl input{border:0;outline:none;background:none;width:100%;min-width:0;text-align:center;font-weight:500;font-size:12.5px}.wl:hover{border-color:var(--ink-2)}.wl.on{border-color:var(--accent);background:var(--accent-soft)}.wl.on span{color:var(--accent)}.orow{border-top:1px solid var(--line-2)}.orow:first-of-type{border-top:0}.oh2{display:flex;align-items:center;gap:9px;width:100%;padding:6px 12px;text-align:left}.oh2:hover{background:var(--hover)}.oh2>svg.i{width:16px;height:16px;color:var(--muted)}.oh2 .t{flex:1;min-width:0}.oh2 .t b{font-size:12.5px;font-weight:500;display:block}.oh2 .t small{font-size:11px;color:var(--muted);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.orow.on{background:var(--accent-soft)}.orow.on .oh2>svg.i:first-child{color:var(--accent)}.odet{padding:2px 12px 9px 37px}.grid4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px}.addrow{display:flex;flex-wrap:wrap;gap:4px;padding:6px 12px 4px}.addrow button{height:24px;padding:0 7px 0 5px;border:1px dashed var(--line);border-radius:var(--r-md);font-size:11.5px;color:var(--ink-2);display:inline-flex;align-items:center;gap:3px}.addrow button:hover{border-color:var(--accent);color:var(--accent)}.addrow svg.i{width:12px;height:12px}.bom-panel .fl{padding:6px 12px;border-bottom:1px solid var(--line-2)}.bom-wide .gh .bom-ver{font-weight:400}.bom-dirty{margin:6px 12px 0;padding:5px 9px;background:var(--warn-bg);color:var(--warn);border-radius:var(--r-md);font-size:11.5px}.bom-filters{flex-wrap:wrap;row-gap:4px;overflow:visible}.bom-filters button em{font-style:normal;color:var(--muted);margin-left:2px}.bom-filters button.on em{color:inherit;opacity:.7}.bom-filters button.w{color:var(--warn);border-color:#e5c489}.bom-filters button.w.on{background:var(--warn);border-color:var(--warn);color:#fff}.bom-table{overflow-y:auto}.bline{display:grid;grid-template-columns:minmax(0,1fr) 92px 96px 54px 92px;gap:10px;align-items:center;padding:7px 12px;border-bottom:1px solid var(--line-2)}.bline .rt{text-align:right}.bline.bhead{position:sticky;top:0;z-index:1;background:var(--panel-sub);color:var(--muted);font-size:11px;padding-top:5px;padding-bottom:5px}.bgroup{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 12px 5px;background:var(--panel-sub);border-bottom:1px solid var(--line-2);font-weight:600;font-size:12px}.bgroup em{font-style:normal;font-weight:400;color:var(--muted);margin-left:4px}.bline .sz,.bline .fin{font-size:11.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bline .t .st{margin-top:1px}.bline .t{min-width:0}.bline .t>b{display:block;font-size:12.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bline .t>small{display:block;font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bline .q{font-size:12.5px;font-weight:600;white-space:nowrap}.bline .q .u{font-weight:400;color:var(--muted);font-size:11px}.bline .st{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bline .st .ok{color:var(--ok)}.bline .st .warn{color:var(--warn);font-weight:600}.bline .p{font-size:12.5px;font-weight:600;white-space:nowrap;text-align:right}.bline .p .open{color:var(--warn);font-weight:500}.bline.can{cursor:pointer}.bline.can:hover{background:var(--hover)}.bom-panel .of{flex-wrap:wrap}.bom-panel .of .mut{margin-left:auto;font-size:11px}@media(max-width:1599px){.app.wide .tb-proj .p1{max-width:84px;overflow:hidden;text-overflow:ellipsis}.app.wide .tb-price{min-width:104px;padding:0 8px}}.bom-foot{gap:18px;position:sticky;bottom:0;background:var(--panel-bg);z-index:2}.vtitle{position:absolute;left:16px;top:calc(12px + var(--bar-h) + 6px);font-weight:700;font-size:13px;color:#2f3438;background:#ffffffe6;padding:4px 9px;border-radius:var(--r-md);border:1px solid var(--line)}.vtitle span{font-weight:400;color:var(--muted);font-size:11.5px;margin-left:8px}.cmp{position:absolute;left:12px;bottom:48px;width:350px;background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 10px 28px #14181c33;z-index:6}.cmp-h{display:flex;align-items:center;gap:4px;padding:6px 6px 6px 12px;border-bottom:1px solid var(--line);cursor:move}.cmp-h .t{flex:1;font-weight:600}.cmp-h small{font-weight:400;color:var(--muted);margin-left:6px;font-size:11.5px}.cmp table{width:100%;border-collapse:collapse;font-size:12px}.cmp th{font-weight:500;font-size:11px;color:var(--muted);text-align:left;padding:5px 10px 3px}.cmp td{padding:4px 10px;border-top:1px solid var(--line-2);white-space:nowrap}.cmp tr.bad td:first-child{box-shadow:inset 3px 0 0 var(--warn)}.cmp .ar,.atable .ar{text-align:right}.cmp-f{display:flex;align-items:center;gap:6px;padding:8px 10px;border-top:1px solid var(--line)}.cmp-f .mut{flex:1;font-size:11px}.dlist{display:flex;flex-direction:column}.drow{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line-2);cursor:pointer}.drow:hover{background:var(--hover)}.drow.on{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.drow.off{opacity:.55;cursor:default}.drow>svg.i{width:18px;height:18px;color:var(--ink-2)}.drow .t{flex:1;min-width:0}.drow .t b{display:block;font-weight:600;font-size:12.5px}.drow .t small{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted)}.drow .dd{font-size:11px;color:var(--muted);white-space:nowrap}.dnote{padding:10px 12px;font-size:11.5px;color:var(--muted);line-height:1.4}.docv{position:absolute;left:8px;top:calc(12px + var(--bar-h) + 8px);background:#e9eae7;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 12px 32px #14181c38;z-index:6;overflow:hidden}.docbar{display:flex;align-items:center;gap:8px;padding:4px 4px 4px 10px;background:var(--panel-bg);border-bottom:1px solid var(--line);font-size:12px;height:38px}.docbar .ib[disabled]{opacity:.35}.sheetwrap{position:relative;overflow:hidden}.sheet{position:absolute;left:0;top:0;width:595px;height:842px;transform-origin:0 0;background:#fff;padding:36px 40px;color:#1d2023;font-size:9.5px;line-height:1.35;overflow:hidden}.wm{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%) rotate(-28deg);font-size:34px;font-weight:800;color:#9c630921;white-space:nowrap;letter-spacing:.02em;pointer-events:none}.kp-h{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #1D2023;padding-bottom:10px}.kp-brand{font-size:18px;font-weight:800;letter-spacing:-.01em}.kp-s{color:#6c7277;font-size:10px}.kp-r{text-align:right;font-size:10px}.kp-r b{font-size:11.5px}.kp-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.kp-meta small{display:block;color:#6c7277;font-size:8.5px}.kp-img{display:grid;grid-template-columns:270px 1fr;gap:14px;align-items:center;margin-bottom:12px}.kp-img canvas{width:270px;height:150px;background:#f3f3f1;border-radius:2px}.kp-imgt{font-size:10px;line-height:1.55}.kp-t{width:100%;border-collapse:collapse}.kp-t th{text-align:left;font-weight:600;font-size:8.5px;color:#6c7277;border-bottom:1px solid #1D2023;padding:3px 4px}.kp-t td{padding:2.5px 4px;border-bottom:1px solid #E6E6E3}.kp-t tr.g td{font-weight:700;padding-top:6px;border-bottom:0}.kp-t .ar{text-align:right;white-space:nowrap}.kp-t.spec td{font-size:9px}.kp-w{color:#9c6309;font-weight:600}.kp-tot{display:flex;justify-content:space-between;align-items:baseline;border-top:2px solid #1D2023;margin-top:6px;padding-top:6px;font-size:11px}.kp-tot b{font-size:15px}.kp-f{color:#6c7277;margin-top:10px;font-size:9px}.projmenu{position:absolute;top:calc(12px + var(--bar-h) + 6px);width:420px;background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 12px 32px #14181c38;z-index:8}.pm-h{display:flex;align-items:flex-start;gap:8px;padding:9px 8px 8px 12px;border-bottom:1px solid var(--line)}.pm-h>div{flex:1}.pm-h b{font-size:14px;display:block}.pm-h small{font-size:11.5px;color:var(--muted)}.pm-b{padding:4px 0 8px}.pm-b .r{grid-template-columns:76px minmax(0,1fr)}.pm-note{display:flex;gap:6px;align-items:flex-start;padding:0 12px 6px 96px;font-size:11px;color:var(--muted);line-height:1.35}.pm-note svg.i{width:13px;height:13px;margin-top:1px}.vlist{display:flex;flex-direction:column}.vrow{display:flex;align-items:center;gap:8px;padding:5px 12px;border-top:1px solid var(--line-2);font-size:12px}.vrow .vn{width:24px;font-weight:700;color:var(--ink-2)}.vrow .t{flex:1;min-width:0}.vrow .t b{display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vrow .t small{color:var(--muted);font-size:11px}.vrow .vs{font-weight:600;white-space:nowrap}.vrow .lnk{font-size:11.5px}.vrow.cur{background:var(--accent-soft)}.modal-bg{position:absolute;inset:0;background:#14181c52;z-index:20;display:grid;place-items:center}.modal{width:520px;background:var(--panel-bg);border-radius:var(--r-lg);box-shadow:0 20px 50px #0000004d}.md-h{display:flex;align-items:center;gap:8px;padding:14px 16px 6px;font-size:15px}.md-h svg.i{color:var(--warn)}.md-b{padding:0 16px 8px;font-size:12.5px;line-height:1.45;color:var(--ink-2)}.md-b p{margin:4px 0 10px}.md-diff{display:grid;grid-template-columns:1fr 1fr;gap:8px}.md-diff>div{border:1px solid var(--line);border-radius:var(--r-md);padding:8px 10px;font-size:12px;color:var(--ink)}.md-diff small{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}.md-f{display:flex;gap:6px;padding:10px 16px 14px}.robanner{position:absolute;left:50%;transform:translate(-50%);top:calc(12px + var(--bar-h) + 8px);background:#1d2023;color:#fff;font-size:12px;padding:6px 12px;border-radius:var(--r-md);z-index:6;display:flex;gap:8px;align-items:center}.robanner svg.i{width:14px;height:14px}.drawer{position:absolute;right:0;bottom:0;background:var(--panel-bg);border-top:1px solid var(--line);box-shadow:0 -6px 20px #14181c24;z-index:5;display:flex;flex-direction:column}.dr-h{display:flex;align-items:center;gap:8px;padding:4px 64px 4px 10px;border-bottom:1px solid var(--line);min-height:36px}.dtabs{display:flex;gap:2px}.dtabs button{height:26px;padding:0 9px;border-radius:var(--r-md);font-size:12px;color:var(--ink-2)}.dtabs button em{color:var(--muted);font-size:11px}.dtabs button.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.dtabs button.on em{color:var(--accent)}.dr-f{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted)}.dr-b{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:0}.msgs{overflow:auto;padding:6px 12px;display:flex;flex-direction:column;gap:2px}.msg{display:flex;gap:9px;padding:6px;border-radius:var(--r-md)}.msg:hover{background:var(--hover)}.msg.dec{background:var(--accent-soft)}.av{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff;flex:none;background:#7b8287}.av.r-dir{background:#3e4246}.av.r-tech{background:#6e6a3f}.av.r-meas{background:#3d6798}.av.r-des{background:#8a6a4f}.mb{flex:1;min-width:0}.mh{display:flex;align-items:center;gap:7px;font-size:12px;flex-wrap:wrap}.mh .mut{font-size:11px}.mt{font-size:12.5px;line-height:1.4;margin-top:1px}.ochip{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 6px;border-radius:3px;background:var(--panel-sub);font-size:11px;font-weight:600;color:var(--ink-2)}.ochip svg.i{width:12px;height:12px}.ochip.on{background:var(--accent-soft);color:var(--accent)}.ochip button{margin-left:3px;color:inherit;font-size:13px;line-height:1}.tag.dec{background:var(--accent);color:#fff;display:inline-flex;gap:3px;align-items:center}.tag.dec svg.i{width:11px;height:11px}.att{display:inline-flex;align-items:center;gap:4px;margin-top:4px;font-size:11.5px;color:var(--accent);font-weight:600}.att svg.i{width:13px;height:13px}.compose{border-left:1px solid var(--line);padding:8px 10px;display:flex;flex-direction:column;gap:6px}.compose textarea{flex:1;resize:none;border:1px solid var(--line);border-radius:var(--r-md);padding:7px 8px;font:inherit;font-size:12.5px;outline:none}.compose textarea:focus{border-color:var(--accent)}.cbar{display:flex;align-items:center;gap:6px}.plist2{display:flex;flex-direction:column}.prj{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line-2);text-align:left;width:100%}.prj:hover{background:var(--hover)}.prj.on{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.prj .t{flex:1;min-width:0}.prj .t b{display:block;font-size:12.5px;font-weight:600}.prj .t small{font-size:11px;color:var(--muted)}.prj .pr2{text-align:right}.prj .pr2 b{display:block;font-size:12.5px;white-space:nowrap}.prj .pr2 small{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);white-space:nowrap}.ufoot{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 12px;border-top:1px solid var(--line)}.ufoot .t{flex:1;min-width:0}.ufoot .t b{display:block;font-size:12.5px}.ufoot .t small{font-size:11px;color:var(--muted)}.chk{display:flex;flex-direction:column;padding:0 12px 8px}.ck{display:flex;align-items:center;gap:8px;min-height:28px;font-size:12px;border-bottom:1px solid var(--line-2)}.ck .t{flex:1}.ck.ok .t{color:var(--muted)}.ck.err .t{color:var(--err);font-weight:600}.tlist{display:flex;flex-direction:column;padding:4px 0}.tl2{display:flex;align-items:center;gap:10px;padding:8px 12px;text-align:left;width:100%}.tl2:hover{background:var(--hover)}.tl2.on{background:var(--accent-soft)}.tl2>svg.i{width:18px;height:18px;color:var(--ink-2)}.tl2.on>svg.i{color:var(--accent)}.tl2 .t{flex:1}.tl2 .t b{display:block;font-size:12.5px;font-weight:600}.tl2 .t small{font-size:11px;color:var(--muted)}kbd{font:600 10.5px var(--font-ui);border:1px solid var(--line);border-bottom-width:2px;border-radius:3px;padding:1px 5px;color:var(--ink-2);background:var(--panel-bg);white-space:nowrap}.hk{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;padding:2px 12px 10px;font-size:12px;align-items:center}.hk kbd{justify-self:start}.hlist{display:flex;flex-direction:column;padding:4px 0}.hi>button{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;text-align:left;font-weight:600;font-size:12.5px}.hi>button:hover{background:var(--hover)}.hi>button svg.i{width:14px;height:14px;color:var(--muted)}.hi ul{margin:0 0 6px;padding:0 14px 0 40px;font-size:12px;color:var(--ink-2);line-height:1.5}.inp.sm{height:26px}.page{position:fixed;inset:0;background:var(--panel-bg);z-index:50}.page.auth{display:grid;grid-template-columns:minmax(0,1fr) 480px}.au-side{position:relative;background:radial-gradient(120% 90% at 55% 40%,var(--scene-bg-1),var(--scene-bg-2));overflow:hidden}.au-side canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.9}.au-brand{position:absolute;left:32px;bottom:28px;display:flex;flex-direction:column;gap:3px}.au-brand b{font-size:18px}.au-brand span{font-size:12px;color:var(--ink-2)}.au-main{display:flex;flex-direction:column;justify-content:center;padding:40px 56px;border-left:1px solid var(--line)}.au-form{display:flex;flex-direction:column;gap:12px;width:100%;max-width:360px}.au-form h1{margin:0;font-size:22px;letter-spacing:-.01em}.au-form .sub{margin:-6px 0 4px;color:var(--muted);font-size:12.5px;line-height:1.45}.inp.lg{height:36px}.inp.lg input,.inp.lg select{font-size:13.5px}.btn.lg{height:38px;justify-content:center;font-size:13.5px}.row-sp{display:flex;align-items:center;justify-content:space-between;gap:8px}.ck2{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2)}.alt{font-size:12.5px;color:var(--muted);text-align:center;padding-top:4px}.g2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pwd{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--muted)}.pwd li{display:flex;gap:5px;align-items:center}.pwd li.ok{color:var(--ok)}.pwd svg.i{width:13px;height:13px}.steps{list-style:none;margin:4px 0;padding:0;display:flex;flex-direction:column;gap:0}.steps li{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line-2)}.steps li>svg.i{width:18px;height:18px;color:var(--ok)}.steps li b{display:block;font-size:13px}.steps li small{font-size:11.5px;color:var(--muted)}.steps li.wait b{color:var(--warn)}.spin{width:16px;height:16px;border-radius:50%;border:2px solid var(--warn-bg);border-top-color:var(--warn);margin:1px;flex:none}.na-ic{width:44px;height:44px;border-radius:50%;background:var(--err-bg);color:var(--err);display:grid;place-items:center}.na-ic svg.i{width:22px;height:22px}.na-box{border:1px solid var(--line);border-left:3px solid var(--err);border-radius:var(--r-md);padding:10px 12px;font-size:12.5px;line-height:1.45;color:var(--ink-2)}.au-foot{margin-top:28px;font-size:11px;color:var(--muted)}.page.admin{display:flex;flex-direction:column;background:var(--panel-sub)}.ad-top{height:52px;display:flex;align-items:center;gap:12px;padding:0 16px;background:var(--rail-bg);color:var(--rail-fg-active);border-bottom:1px solid var(--rail-line)}:root[data-variant=b] .ad-top{color:var(--ink);background:#fff}.ad-brand{font-size:14px}.ad-sep{width:1px;height:20px;background:var(--rail-line)}.ad-t{font-size:13px;opacity:.8}.ad-nav{display:flex;gap:2px;margin-left:12px}.ad-nav button{height:32px;padding:0 12px;border-radius:var(--r-md);font-size:13px;color:inherit;opacity:.75}.ad-nav button em{font-size:11px;opacity:.8;margin-left:2px}.ad-nav button.on{opacity:1;background:var(--rail-active-bg);font-weight:600}:root[data-variant=b] .ad-nav button.on{background:var(--accent-soft);color:var(--accent)}.ad-top .btn{background:transparent;color:inherit;border-color:var(--rail-line)}.ad-user{display:flex;align-items:center;gap:7px;font-size:12.5px}.ad-main{flex:1;overflow:auto;padding:16px 20px 24px;display:flex;flex-direction:column;gap:12px}.ad-note{display:flex;gap:8px;align-items:center;font-size:12.5px;color:var(--ink-2)}.ad-note svg.i{width:16px;height:16px;color:var(--accent)}.ad-hint{font-size:11.5px;color:var(--muted)}.ad-tools{display:flex;gap:10px;align-items:center}.atable{width:100%;border-collapse:collapse;background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);font-size:12.5px}.atable th{text-align:left;font-weight:500;font-size:11.5px;color:var(--muted);padding:8px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.atable td{padding:7px 12px;border-bottom:1px solid var(--line-2);vertical-align:middle}.atable td b{display:block;font-weight:600}.atable td small{color:var(--muted);font-size:11.5px}.atable tr.dim td{color:var(--muted)}.atable tr.dim td b{color:var(--ink-2)}.atable .nowrap{white-space:nowrap}.btn.sm{height:26px;padding:0 9px;font-size:12px}.btn[disabled]{opacity:.45;cursor:not-allowed}.stt{display:inline-flex;align-items:center;gap:5px;font-size:12px}.stt.ok{color:var(--ok)}.stt.err{color:var(--err)}.ad-cards{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px}.ad-card{background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px 14px;font-size:12.5px}.rtable{width:100%;border-collapse:collapse;margin-top:8px;font-size:12px}.rtable th{text-align:left;font-weight:600;font-size:11.5px;padding:4px 6px;border-bottom:1px solid var(--line)}.rtable td{padding:4px 6px;border-bottom:1px solid var(--line-2);color:var(--ink-2)}.rtable td:first-child{color:var(--ink)}@media(max-width:1279px){:root{--rail-w:56px;--panel-w:304px;--panel-wide:520px;--lab-w:78px}.rail-btn span{font-size:9.5px}.mode{display:none}.hwx{width:420px}.page.auth{grid-template-columns:minmax(0,1fr) 420px}.au-main{padding:32px 36px}}@media(max-width:760px){:root{--bar-h:48px;--lab-w:96px}.app{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 56px}.app.wide{grid-template-columns:1fr}.scene{grid-row:1;grid-column:1}.rail{grid-row:2;flex-direction:row;border-right:0;border-top:1px solid var(--rail-line)}.rail .grp{flex-direction:row;flex:1}.rail .grp.bottom,.rail .rail-sep,.rail-btn.menu,.rail-btn[data-sec=decor],.rail-btn[data-sec=docs]{display:none}.rail-btn{flex:1;padding:7px 0 6px}.rail-btn.active:before{inset:0 20% auto;width:auto;height:3px;border-radius:0 0 3px 3px}.rail-btn .cnt{right:calc(50% - 22px)}.panel{position:fixed;left:0;right:0;bottom:56px;height:52%;border-right:0;border-top:1px solid var(--line);border-radius:12px 12px 0 0;box-shadow:0 -10px 30px #14181c33;z-index:15}.panel:before{content:"";position:absolute;left:50%;top:6px;width:36px;height:4px;border-radius:2px;background:#c9cdd1;transform:translate(-50%)}.panel>*:first-child{padding-top:14px}.topbar{left:8px;right:8px;transform:none;top:8px}.topbar .tb-proj-seg,.topbar .tb-edit,.topbar .tb-seg:nth-child(3),.topbar .tb-save .st,.topbar [data-tip="Открыть проект"]{display:none!important}.tb-price{flex:1}.rstrip{top:64px;right:8px}.rstrip .tool>*:not(.tl):not([data-view="3d"]):not([data-view=plan]){display:none}.rstrip .tool .tl:not(:first-child){display:none}.hw-btn,.comments,.mock,.mode{display:none}.fly,.hwx,.docv,.projmenu,.cmp,.drawer{display:none!important}.otable col:nth-child(2),.otable th:nth-child(2),.otable td:nth-child(2),.otable col:nth-child(3),.otable th:nth-child(3),.otable td:nth-child(3){display:none}.otable .p small{display:block}.oh .row1{flex-wrap:wrap}.oh .row1 .seg{order:3;width:100%;margin-left:0}.oh .row1>.mut{display:none}.fl{overflow-x:auto;scrollbar-width:none}.of{flex-wrap:wrap;gap:8px 14px}.of .acts{width:100%;margin-left:0}.of .acts .btn{flex:1;justify-content:center}.prow2{grid-template-columns:52px minmax(0,1fr) auto}.page.auth{grid-template-columns:1fr}.au-side{display:none}.au-main{padding:28px 20px;border:0}}body.viewonly .panel .ibody,body.viewonly .panel .cards,body.viewonly .isum .lnk{pointer-events:none}body.viewonly .panel .ibody{opacity:.8}body.viewonly .ih .ib:not(#backCat),body.viewonly .qbar button,body.viewonly .tb-kp{opacity:.35;pointer-events:none}.acts2{display:flex;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap}.hwx-b.one{grid-template-columns:minmax(0,1fr)}.hwx-h .row .seg button .mut{font-weight:500;margin-left:3px}.mytop{display:flex;gap:6px;align-items:center;padding:8px;border-bottom:1px solid var(--line-2)}.modal.aks{width:600px}.modal.aks .md-h b{font-size:15px}.modal.aks .md-h svg.i{color:var(--accent)}.modal.aks .md-b{display:flex;flex-direction:column;gap:10px;color:var(--ink)}.ak-hint{font-size:12.5px;color:var(--muted);line-height:1.45}.ak-res{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;padding:10px;border:1px solid var(--line);border-radius:var(--r-lg)}.ak-im{width:96px;height:96px;border-radius:var(--r-md);background:var(--thumb-bg);position:relative}.ak-im canvas{position:absolute;inset:0;width:100%;height:100%}.ak-f{display:flex;flex-direction:column;gap:8px;min-width:0}.ak-f .field label{display:flex;gap:6px;align-items:center}.ak-f .field label span{font-size:10.5px}.g3{display:grid;grid-template-columns:90px 90px minmax(0,1fr);gap:8px}.ak-opts{display:flex;flex-direction:column;gap:6px}.ao{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;align-items:center;padding:4px 6px;border-radius:var(--r-md)}.ao .aol{font-size:12.5px;color:var(--ink-2)}.ao.need{background:var(--err-bg)}.ao .seg{max-width:340px}.modal.aks .md-f{flex-wrap:wrap}.ak-err{width:100%;font-size:12px;display:flex;gap:6px;align-items:center}.ak-err svg.i{width:14px;height:14px}.g3{grid-template-columns:100px 90px minmax(0,1fr)}.ak-f label{white-space:nowrap}#root{height:100%}.scene-host{position:absolute;inset:0}.prow2.sel{background:var(--accent-soft)}.tb-hint{font-size:11px;color:var(--muted);margin-top:10px}.panel .ph{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;font-weight:700;font-size:13px;color:var(--panel-fg);border-bottom:1px solid var(--line-2)}.panel .ph svg.i{width:15px;height:15px;color:var(--muted)}.panel-head{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 10px;color:var(--panel-fg);border-bottom:1px solid var(--line-2)}.panel-head-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700}.panel-head-btn{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border:0;border-radius:6px;background:transparent;color:inherit;font-size:22px;line-height:1;cursor:pointer}.panel-head-btn:hover{background:var(--accent-soft)}.ci-close{flex:0 0 auto}.app.panel-closed,.app.panel-closed.wide{grid-template-columns:var(--rail-w) minmax(0,1fr)}@media(max-width:760px){.app.panel-closed,.app.panel-closed.wide{grid-template-columns:1fr}}.scene-err{position:absolute;inset:0;z-index:60;display:grid;place-items:center;background:#0000008c;color:#fff;text-align:center;padding:20px;font-size:13px}.scene-err button{margin-top:10px;padding:6px 14px;border-radius:6px;border:1px solid #fff;background:transparent;color:#fff;cursor:pointer}.badge{display:inline-block;font-size:9.5px;font-weight:700;padding:1px 5px;border-radius:2px;background:var(--warn-bg);color:var(--warn);white-space:nowrap}.badge.gray{background:transparent;color:var(--muted);border:1px solid var(--line,#888);font-weight:600}.idetail{border-bottom:1px solid var(--bar-line,#3A3E42);padding:6px 10px 8px;display:grid;gap:3px;font-size:11.5px}.idetail .kv{display:grid;grid-template-columns:92px 1fr;gap:6px}.idetail .kv span:first-child{color:var(--muted)}.idetail .nm{font-weight:700}.selbar{position:absolute;left:12px;top:60px;z-index:6;display:flex;align-items:center;gap:6px;background:var(--bar-bg);color:var(--bar-fg);border-radius:var(--r-lg);padding:5px 9px;box-shadow:0 6px 20px #14181c2e,0 1px 3px #14181c1f;max-width:calc(100% - 96px)}.selbar:empty{box-shadow:none;padding:0}.schips{display:flex;flex-wrap:wrap;gap:4px;min-width:0}.pop-x{position:absolute;top:6px;right:8px;z-index:1}.pop .pop-f{align-items:center;padding-top:8px}.pop .tb-hint{margin-left:auto}.schips{flex-wrap:nowrap;flex:0 0 auto}.schips{position:relative}.schips-extra{position:absolute;left:0;top:calc(100% + 10px);z-index:6;width:150px;max-height:30vh;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding:6px;background:var(--bar-bg);color:var(--bar-fg);border-radius:var(--r-lg);box-shadow:0 6px 20px #14181c2e,0 1px 3px #14181c1f}.schips-extra .schip{text-align:left}.schip.more{border-style:dashed;opacity:.85}.schip{height:24px;padding:0 8px;border-radius:var(--r-md);border:1px solid rgba(255,255,255,.28);background:transparent;color:inherit;font-size:11.5px;white-space:nowrap;cursor:pointer}.schip.on{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);font-weight:600}.sb-sep{width:1px;align-self:stretch;background:#ffffff38;margin:2px}.sb-btn{height:24px;padding:0 8px;border-radius:var(--r-md);border:1px solid rgba(255,255,255,.28);background:transparent;color:inherit;font-size:11.5px;font-weight:600;white-space:nowrap;cursor:pointer}.sb-btn:hover:not(:disabled){border-color:#fff}.sb-btn:disabled{opacity:.45;cursor:default}.sb-btn.primary{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.sb-wrap{position:relative}.selpop{position:absolute;top:calc(100% + 6px);left:0;z-index:30;width:216px;background:var(--panel-bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 12px 32px #14181c38;padding:8px;display:grid;gap:6px}.selpop label{display:grid;gap:2px;font-size:11px;color:var(--muted)}.selpop input,.selpop select{height:26px;padding:0 6px;border:1px solid var(--line);border-radius:var(--r-md);font-size:12px;background:var(--bg,#fff);color:var(--ink)}.sbgroups{display:flex;gap:4px}.sbgroups .schip{border-color:var(--line);color:var(--ink-2)}.wrow{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.wrow input[type=number]{width:78px;height:24px;padding:0 6px;border:1px solid var(--line);border-radius:var(--r-md);font-size:11.5px;background:var(--bg,#fff);color:var(--ink)}.wopt{height:24px;padding:0 7px;border-radius:var(--r-md);border:1px solid var(--line);background:transparent;color:var(--ink-2);font-size:11.5px;cursor:pointer}.wopt:hover{border-color:var(--accent);color:var(--accent)}.idetail .add{height:24px;padding:0 9px;border-radius:var(--r-md);border:1px solid var(--accent);color:var(--accent);font-size:11.5px;font-weight:600;cursor:pointer}.idetail .add:hover{background:var(--accent-soft)}.op-note{padding:6px 10px;font-size:11.5px;color:var(--ink-2);background:var(--ok-bg);border-bottom:1px solid var(--line)}.op-err{padding:6px 10px;font-size:11.5px;color:var(--err);background:var(--err-bg);border-bottom:1px solid var(--line)}.section-todo{padding:14px 14px 18px;display:flex;flex-direction:column;gap:7px}.todo-badge{align-self:flex-start;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:#8a6d1b;background:#fff2c2;border:1px solid #e6c864;border-radius:999px;padding:2px 9px}.todo-title{font-size:13.5px;font-weight:600;color:#e7ecf1}.section-todo .mut{font-size:12px;line-height:1.35;color:#98a2ab}.todo-sub{margin-top:4px}.todo-list{margin:2px 0 0;padding-left:18px;font-size:12.5px;line-height:1.5;color:#c2cad2}.todo-list li{margin:2px 0}.hw-btn[disabled]{opacity:.5;cursor:not-allowed}.panel[data-mode=cabinet]{display:flex;flex-direction:column}.cinsp{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.ci-h{display:flex;align-items:center;gap:8px;padding:10px 12px 8px;border-bottom:1px solid var(--line)}.ci-back{width:28px;height:28px;display:grid;place-items:center;border-radius:var(--r-md);color:var(--ink-2)}.ci-back:hover,.ci-ib:hover{background:var(--hover)}.ci-back svg.i{transform:rotate(90deg)}.ci-t{flex:1;min-width:0}.ci-name{display:flex;align-items:center;gap:6px}.ci-name b{font-size:16px;line-height:1.15}.ci-tag{font-size:10.5px;font-weight:600;padding:1px 6px;border-radius:3px;background:var(--accent-soft);color:var(--accent);white-space:nowrap}.ci-tag.warn{background:var(--warn-bg);color:var(--warn)}.ci-t small{display:block;color:var(--muted);font-size:11.5px;margin-top:1px}.ci-ib{width:28px;height:28px;display:grid;place-items:center;border-radius:var(--r-md);color:var(--ink-2)}.ci-full{padding:5px 12px 6px;color:var(--muted);font-size:12px;border-bottom:1px solid var(--line-2)}.ci-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line-2);font-size:12.5px}.ci-l{color:var(--muted)}.ci-v{min-width:0}.ci-v .wrow{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.wopt{height:24px;min-width:34px;padding:0 7px;border:1px solid var(--line);border-radius:var(--r-md);font-size:11.5px;display:inline-flex;align-items:center;justify-content:center;background:var(--panel-bg)}.wopt.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.ci-v input[type=number]{width:64px;height:24px;border:1px solid var(--line);border-radius:var(--r-md);padding:0 6px}.ci-pose{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ci-pose select{height:24px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel-bg)}.ci-chk{display:inline-flex;align-items:center;gap:4px}.ci-seg{display:inline-flex;margin-left:8px}.ci-seg button{height:24px;padding:0 9px;border:1px solid var(--line);font-size:11.5px;background:var(--panel-bg)}.ci-seg button:first-child{border-radius:var(--r-md) 0 0 var(--r-md)}.ci-seg button:last-child{border-radius:0 var(--r-md) var(--r-md) 0;border-left:0}.ci-seg button.on{background:var(--ink);border-color:var(--ink);color:var(--panel-bg)}.ci-tech{padding:6px 12px;font-size:12px}.ci-tech summary{cursor:pointer;color:var(--muted)}.ci-tech .kv{display:grid;grid-template-columns:110px 1fr;gap:6px;padding:3px 0}.ci-tech .kv span:first-child{color:var(--muted)}.ci-foot{margin-top:auto;position:sticky;bottom:0;background:var(--panel-bg);border-top:1px solid var(--line);padding:10px 12px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.ci-fl{display:flex;flex-direction:column;font-size:12px;font-weight:600;min-width:0}.ci-fl small{font-weight:400;color:var(--muted);font-size:11px}.ci-fv{display:flex;flex-direction:column;align-items:flex-end}.ci-fv b{font-size:16px}.ci-fv b.open{color:var(--warn);font-size:13px;text-align:right}.ci-fv small{display:block;font-weight:400;color:var(--muted);font-size:11px;text-align:right}.ci-thumb{flex:none;width:64px}.ci-thumb .cp-im{border-radius:var(--r-md)}.ci-price{margin-top:3px;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}.ci-price b{font-size:15px}.ci-price b.open{color:var(--warn);font-size:12.5px}.ci-price small{display:inline;margin:0;color:var(--muted);font-size:11px}.ci-acts{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line-2)}.ci-acts .add.on{background:var(--accent-soft);border-color:var(--accent-hi)}.ci-acts .ci-ib{margin-left:auto}.ci-acts .ci-ib~.ci-ib{margin-left:0}.ci-ib[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.ci-tabs{display:flex;flex-wrap:nowrap;gap:0;padding:8px 8px 0;border-bottom:1px solid var(--line);background:var(--panel-bg);position:sticky;top:0;z-index:1}.ci-tabs button{flex:1 1 auto;white-space:nowrap;height:28px;padding:0 3px;font-size:11.5px;color:var(--ink-2);border-bottom:2px solid transparent;border-radius:0}.ci-tabs button:hover{color:var(--ink)}.ci-tabs button.on{color:var(--ink);font-weight:600;border-bottom-color:var(--accent)}.ci-pane{padding-bottom:12px}.ci-pane[hidden]{display:none}.ci-row.top{align-items:start}.ci-seg.wide{margin-left:0;flex-wrap:wrap}.ci-why{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.35}.ci-pane>.ci-why{padding:6px 12px 0}.ci-gaps{display:flex;flex-direction:column;gap:8px}.ci-gap{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;font-size:11.5px;color:var(--muted)}.ci-gap>span:first-child{flex:0 0 100%}.ci-gap .ci-gapbtns{display:contents}.ci-tiles{display:flex;flex-wrap:wrap;gap:6px}.ci-tiles.grid{padding:10px 12px 0}.ci-tile{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:3px 8px 3px 4px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel-bg);font-size:12px;color:var(--ink)}button.ci-tile:hover{border-color:var(--accent-hi)}.ci-tile.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:600}.ci-tile.off{color:var(--muted);background:var(--hover);border-style:dashed}.ci-tile.ro{background:var(--hover)}.ci-sw{width:20px;height:20px;border-radius:4px;box-shadow:inset 0 0 0 1px #00000026;background:#ddd;flex:none}.ci-sw.off{background:repeating-linear-gradient(45deg,#eee,#eee 4px,#e0e0e0 4px 8px)}.ci-sw.handle{background:linear-gradient(90deg,#c9ccd1 0 30%,#8c9096 30% 70%,#c9ccd1 70%)}.ci-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px 0}.ci-cards.swap{grid-template-columns:repeat(3,minmax(0,1fr))}.ci-card{display:flex;flex-direction:column;gap:3px;padding:8px;border:1px solid var(--line);border-radius:var(--r-md);font-size:12px}.ci-card b{font-size:12.5px}.ci-card span{color:var(--muted);font-size:11px;line-height:1.35}.ci-card.on{margin:10px 12px 0;border-color:var(--accent-hi);background:var(--accent-soft)}.ci-card.on .add{align-self:flex-start;margin-top:4px}.ci-card.off{background:var(--hover);border-style:dashed;color:var(--muted)}.ci-alt{display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:2px;padding:0;background:none;border-radius:var(--r-md)}.ci-alt:hover .cp-im{box-shadow:inset 0 0 0 1.5px var(--accent-hi)}.ci-alt b{font-size:12px}.ci-alt small{color:var(--muted);font-size:10.5px}.ci-kv{display:grid;grid-template-columns:110px minmax(0,1fr);gap:6px;padding:6px 12px;border-bottom:1px solid var(--line-2);font-size:12px}.ci-kv>span:first-child{color:var(--muted)}.ci-why.err{color:var(--err, #b3261e)}.tb-idea{height:38px;margin:8px 4px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--bar-line);color:var(--bar-fg);background:transparent;font-size:12px;font-weight:600;white-space:nowrap}.tb-idea:hover{background:var(--bar-hover)}.fb-mask{position:fixed;inset:0;background:#1416196b;display:grid;place-items:center;z-index:30}.fb-win{width:520px;max-width:calc(100vw - 24px);max-height:calc(100vh - 48px);overflow:auto;display:flex;flex-direction:column;gap:10px;background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 10px 32px #0000002e;padding:0 0 12px}.fb-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 0}.fb-head h2{margin:0;font-size:15px;color:var(--ink)}.fb-x{width:28px;height:28px;border-radius:var(--r-md);font-size:18px;color:var(--muted);line-height:1}.fb-x:hover{background:var(--hover);color:var(--ink)}.fb-link{margin:0;padding:0 14px;font-size:11.5px;color:var(--muted)}.fb-text-lb{display:grid;gap:4px;padding:0 14px;font-size:12px;color:var(--ink-2)}.fb-text{width:100%;resize:vertical;min-height:88px;border:1px solid var(--line);border-radius:var(--r-md);padding:8px;font:inherit;font-size:13px;color:var(--ink);background:var(--panel-bg)}.fb-text:focus{outline:none;border-color:var(--accent-hi);box-shadow:0 0 0 2px var(--accent-soft)}.fb-text[disabled]{background:var(--panel-sub);color:var(--muted)}.fb-count{justify-self:end;font-size:11px;color:var(--muted)}.fb-shot{margin:0 14px;border:1px solid var(--line-2);border-radius:var(--r-md);padding:8px;min-height:64px;display:grid;place-items:center;background:var(--panel-sub)}.fb-shot img{max-width:100%;max-height:260px;border-radius:var(--r-sm);display:block}.fb-shot .muted{font-size:12px}.fb-error{margin:0 14px;padding:7px 9px;border-radius:var(--r-md);background:var(--err-bg);color:var(--err);font-size:12px}.fb-sent{margin:0 14px;padding:7px 9px;border-radius:var(--r-md);background:var(--ok-bg);color:var(--ok);font-size:12px}.fb-actions{display:flex;justify-content:flex-end;gap:8px;padding:2px 14px 0}.fb-cancel{height:28px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel-bg);color:var(--ink-2);font-size:12px}.fb-cancel:hover{background:var(--hover)}.fb-send{height:28px;padding:0 14px;border:0;border-radius:var(--r-md);background:var(--accent);color:var(--accent-ink);font-size:12px;font-weight:600}.fb-send[disabled]{opacity:.35}.ci-whd{display:flex;gap:12px;margin:2px 0 1px}.ci-whd span{display:inline-flex;align-items:center;gap:4px;color:var(--muted)}.ci-whd .i{width:14px;height:14px}.ci-whd b{font-size:17px;font-weight:700;color:var(--ink)}.ci-thumb{position:relative;width:84px}.ci-live{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}.ci-whd{flex-wrap:wrap}@media(max-width:1599px){.ci-thumb{width:64px;flex-basis:64px}.ci-whd{gap:6px}}.ci-ibrow{display:inline-flex;gap:2px;margin-left:6px;vertical-align:middle}.ci-tabs button .i{width:17px;height:17px}.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ci-toggles{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px}.ci-toggles .ci-why.err{flex-basis:100%;margin-top:2px}.ci-customw{display:inline-flex;gap:6px;margin-top:6px}.ci-customw input{width:80px}.ci-gap select[data-testid=pose-wall],.ci-gaps select[data-testid=pose-wall]{max-width:96px}.cv2{--rail: #ffffff;--rail-ink: #24323a;--rail-on: #b35f00;--panel: #f5f8f9;--card: #ffffff;--line: #dde4e7;--ink: #1f2a30;--muted: #6c7b83;--accent: #ff8a00;--accent-soft: #fff1df;--primary: #33525f;--danger: #c0392b;position:fixed;inset:0;display:flex;font:14px/1.35 Golos Text,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:#eef0ee;-webkit-user-select:none;user-select:none}.cv2 button{font:inherit;color:inherit}.cv2 svg{width:22px;height:22px;flex:none}.cv2-rail{width:92px;flex:none;background:var(--rail);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:10px 6px;gap:6px;z-index:3;box-shadow:2px 0 12px #0000000a}.cv2-rail-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 4px 10px;border:0;border-radius:12px;background:none;color:var(--rail-ink);cursor:pointer;font:600 12.5px/1.15 system-ui,sans-serif;text-align:center}.cv2-rail-btn svg{width:28px;height:28px;stroke-width:1.8}.cv2-rail-account{margin-top:auto;display:flex;justify-content:center;padding-top:8px}.cv2-rail-btn:hover{background:#f1f5f6}.cv2-rail-btn.on{color:var(--rail-on);background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px #ffc27a}.cv2-rail-btn em{position:absolute;top:4px;right:12px;min-width:18px;height:18px;border-radius:9px;background:var(--accent);color:#fff;font:600 11px/18px system-ui;font-style:normal}.cv2-panel{width:360px;flex:none;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:2;box-shadow:4px 0 18px #0000000d}.cv2-panel-head{display:flex;align-items:center;gap:6px;padding:10px 10px 10px 14px;background:#fff;border-bottom:1px solid var(--line)}.cv2-panel-head h2{flex:1;margin:0;font-size:16px;font-weight:600;letter-spacing:.2px}.cv2-panel-body{flex:1;overflow:auto;padding:12px 14px 24px;-webkit-user-select:text;user-select:text}.cv2-ico{display:inline-grid;place-items:center;width:34px;height:34px;border:0;border-radius:8px;background:none;cursor:pointer;color:var(--primary)}.cv2-ico:hover{background:#e9eff2}.cv2-ico.danger{color:var(--danger)}.cv2-tabs{display:flex;gap:4px;margin-bottom:10px}.cv2-tabs button{flex:1;padding:8px 0;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-weight:500}.cv2-tabs button.on{background:var(--primary);border-color:var(--primary);color:#fff}.cv2-cat-sticky{position:sticky;top:-12px;z-index:3;background:var(--panel);margin:-12px -14px 0;padding:12px 14px 4px;box-shadow:0 6px 8px -8px #0000002e}.cv2-cat-sticky .cv2-search{margin-bottom:2px}.cv2-search{width:100%;box-sizing:border-box;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;margin-bottom:6px}.cv2-note{color:var(--muted);font-size:12.5px;margin:6px 0 10px}.cv2-note.warn{color:#9a5a00;background:#fff6e8;padding:6px 8px;border-radius:6px}.cv2-group h3{margin:14px 0 8px;font-size:12.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:600}.cv2-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cv2-grid.three{grid-template-columns:1fr 1fr 1fr}.cv2-card{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px 8px;background:var(--card);border:1px solid var(--line);border-radius:10px;cursor:grab;text-align:left;touch-action:none;transition:box-shadow .12s,border-color .12s}.cv2-card:hover{border-color:#b9c7cd;box-shadow:0 4px 14px #00000014}.cv2-card:active{cursor:grabbing}.cv2-card img{width:100%;aspect-ratio:1;object-fit:contain;pointer-events:none}.cv2-card b{font-size:14.5px}.cv2-card span{font-size:12.5px;color:var(--ink)}.cv2-card small{font-size:11.5px;color:var(--muted)}.cv2-card.small{cursor:pointer}.cv2-card.el{align-items:center;text-align:center;padding:8px 4px}.cv2-card.el svg{width:48px;height:48px}body.cv2-placing,body.cv2-placing *{cursor:grabbing!important}.cv2-dragchip{position:fixed;z-index:1000;pointer-events:none;padding:5px 10px;background:#2d3a42eb;color:#fff;border-radius:8px;font:500 13px/1.2 inherit;white-space:nowrap;box-shadow:0 4px 14px #0000002e}.cv2-stage{position:relative;flex:1;min-width:0}.cv2-host{position:absolute;inset:0}.cv2-canvas{display:block;outline:none}.cv2-overlay{position:absolute;inset:0;pointer-events:none;overflow:hidden;isolation:isolate}.cv2 .cv2-dim{position:absolute;left:0;top:0;pointer-events:auto;padding:1px 6px;border:1px solid #9aa6ab;border-radius:6px;background:#ffffffeb;font:600 12px/18px system-ui;color:#2a3338;cursor:pointer;white-space:nowrap}.cv2 .cv2-dim:hover{border-color:var(--accent);color:#000;background:#fff}.cv2 .cv2-dim-item{background:#2d3a42;color:#fff;border-color:#2d3a42}.cv2 .cv2-dim-item:hover{background:var(--accent);border-color:var(--accent);color:#fff}.cv2 .cv2-dim-wall{background:transparent;border-color:transparent;color:#55646b}.cv2 .cv2-dim-element,.cv2 .cv2-dim-element-gap{border-color:var(--accent);color:#8a4a00}.cv2 .cv2-handle{position:absolute;left:0;top:0;pointer-events:auto;width:32px;height:32px;border-radius:50%;border:1px solid rgba(0,0,0,.08);background:#fffffff5;color:var(--accent);font:700 18px/30px system-ui;cursor:ew-resize;box-shadow:0 1px 2px #0000001f,0 4px 12px #0000001f;touch-action:none;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .12s ease,background .12s ease,color .12s ease}.cv2 .cv2-handle svg{width:18px;height:18px;pointer-events:none}.cv2 .cv2-handle:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.cv2 .cv2-vhandle{width:32px;height:32px;cursor:ns-resize;display:flex;align-items:center;justify-content:center;padding:0}.cv2-top{position:absolute;top:12px;left:12px;right:12px;margin:0 auto;width:max-content;max-width:calc(100% - 24px);box-sizing:border-box;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:6px 8px;background:#fff;border-radius:12px;box-shadow:0 4px 18px #0000001f;z-index:2}.cv2-top-group{display:flex;flex-shrink:0;align-items:center;gap:2px;padding:0 4px;border-right:1px solid var(--line)}.cv2-top .cv2-seg{flex-shrink:0;padding:0;overflow:visible}.cv2-myprojects .cv2-seg{display:flex;margin-bottom:8px}.cv2-myprojects .cv2-seg button{flex:1;padding:7px 10px;border:1px solid var(--line);background:#fff;cursor:pointer;font:inherit}.cv2-myprojects .cv2-seg button:first-child{border-radius:8px 0 0 8px}.cv2-myprojects .cv2-seg button:last-child{border-radius:0 8px 8px 0;border-left:0}.cv2-myprojects .cv2-seg button.on{background:var(--primary);border-color:var(--primary);color:#fff}.cv2-myprojects .meta a.cv2-btn{display:inline-block;text-decoration:none;padding:4px 12px;justify-self:start}.cv2-myprojects .meta em{color:var(--accent);font-style:normal;font-weight:600;font-size:12.5px}.cv2-top .cv2-seg button{flex-shrink:0;min-width:max-content}.cv2-top .cv2-seg button:first-child{border-radius:7px 0 0 7px}.cv2-top .cv2-seg button:last-child{border-radius:0 7px 7px 0}.cv2-top .cv2-status{flex-shrink:1;min-width:0}.cv2-top .cv2-price{flex-shrink:0}.cv2-nav{position:absolute;right:14px;bottom:14px;display:grid;grid-template-columns:repeat(3,34px);grid-auto-rows:34px;gap:4px;padding:6px;background:#ffffffeb;border-radius:12px;box-shadow:0 4px 18px #0000001f;z-index:2;-webkit-user-select:none;user-select:none}.cv2-nav button{border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;font-size:14px;line-height:1;color:#333;display:flex;align-items:center;justify-content:center;padding:0}.cv2-nav button:hover{border-color:var(--primary);color:var(--primary)}.cv2-nav button svg{width:18px;height:18px}.cv2-nav .n-zi,.cv2-nav .n-zo{font-size:20px;font-weight:600}.cv2-top-group:last-of-type{border-right:0}.cv2-tb{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:none;color:var(--primary);cursor:pointer}.cv2-tb:hover:not(:disabled){background:#eef3f5}.cv2-tb:disabled{opacity:.35;cursor:default}.cv2-tb.on{background:var(--accent-soft);color:#b35f00}.cv2-seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;padding:0}.cv2-seg button{border:0;background:#fff;padding:7px 12px;cursor:pointer;font-weight:500;white-space:nowrap}.cv2-seg button+button{border-left:1px solid var(--line)}.cv2-seg button.on{background:var(--primary);color:#fff}.cv2-seg.small button{padding:5px 10px;font-size:13px}.cv2-seg.wrap{flex-wrap:wrap}.cv2-pricebox{position:absolute;right:14px;top:78px;z-index:2;display:flex;align-items:center;gap:12px;padding:8px 12px 8px 16px;border:1px solid var(--line);border-left:4px solid #2d6a3e;border-radius:12px;background:#fffffff5;box-shadow:0 4px 18px #0000001f}.cv2-price{display:flex;flex-direction:column;padding:0;line-height:1.1;min-width:110px}.cv2-price b{font-size:19px;font-weight:800;color:#9a5a00;letter-spacing:-.2px;white-space:nowrap;font-variant-numeric:tabular-nums}.cv2-price b.muted{font-size:14px;font-weight:600;color:var(--muted)}.cv2-price span{font-size:11.5px;color:var(--muted);white-space:nowrap;margin-top:2px}.cv2-disc{display:flex;flex-direction:column;align-items:center;gap:2px;padding-left:12px;border-left:1px solid var(--line)}.cv2-disc>small{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.cv2-disc .cv2-num{width:46px;padding:4px 6px;font-weight:700;text-align:center}.cv2-hint{position:absolute;top:70px;left:50%;transform:translate(-50%);padding:6px 12px;background:#2d3a42eb;color:#fff;border-radius:8px;font-weight:500;pointer-events:none;z-index:2}.cv2-storewarn{position:absolute;top:76px;left:50%;transform:translate(-50%);max-width:min(720px,86%);display:flex;gap:10px;align-items:center;padding:10px 14px;background:#fff7e6;color:#6b3d00;border:1px solid #f3c77a;border-radius:10px;box-shadow:0 6px 20px #0000001f;z-index:4;font-size:13px}.cv2-storewarn button{flex-shrink:0;border:1px solid #d39a33;background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:600}.cv2-toast{position:absolute;bottom:48px;left:50%;transform:translate(-50%);max-width:70%;padding:10px 14px;background:#fff3f1;color:#7a1d12;border:1px solid #f0c2bb;border-radius:10px;box-shadow:0 6px 20px #0000001f;z-index:3}.cv2-help{position:absolute;bottom:10px;left:50%;transform:translate(-50%);color:#6c7b83;font-size:12px;background:#ffffffbf;padding:3px 10px;border-radius:6px;pointer-events:none;white-space:nowrap}.cv2-insp-head{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px}.cv2-insp-head img{width:132px;height:132px;object-fit:contain;margin-left:auto}.cv2-dims3{display:flex;flex-direction:column;gap:6px;color:var(--muted)}.cv2-dims3 div{display:flex;align-items:center;gap:6px}.cv2-dims3 b{color:var(--ink);font-size:17px}.cv2-dims3 svg{width:18px;height:18px}.cv2-dims3 .rot svg{transform:rotate(90deg)}.cv2-insp-title{display:flex;align-items:baseline;gap:8px;margin:10px 2px 8px}.cv2-insp-title b{font-size:20px}.cv2-insp-title span{color:var(--muted)}.cv2-insp-actions{margin-left:auto;display:flex}.cv2-itabs{display:flex;border-bottom:2px solid var(--line)}.cv2-itabs button{flex:1;display:grid;place-items:center;padding:8px 0;border:0;background:none;color:#6c7b83;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px}.cv2-itabs button.on{color:var(--primary);border-bottom-color:var(--accent)}.cv2-itab-title{font-weight:600;margin:10px 2px 6px}.cv2-form{display:flex;flex-direction:column;gap:8px}.cv2-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:34px}.cv2-row>span{color:var(--muted)}.cv2-row select{min-width:120px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}.cv2-ro{display:inline-flex;align-items:center;gap:6px;font-style:normal;font-weight:600}.cv2-ro svg{width:16px;height:16px;color:var(--muted)}.cv2-sub{font-weight:600;margin-top:8px}.cv2-gaps{display:flex;align-items:center;gap:4px}.cv2-gaps .cv2-num{width:92px}.cv2-gapdot{color:var(--muted);padding:0 2px}.cv2-num{width:100px;box-sizing:border-box;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;text-align:right}.cv2-num:focus{outline:2px solid var(--accent);border-color:var(--accent)}.cv2-num.big{width:140px;font-size:18px}.cv2-toggle{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:34px;cursor:pointer}.cv2-toggle input{position:absolute;opacity:0}.cv2-toggle i{width:40px;height:22px;border-radius:11px;background:#cfd8dc;position:relative;transition:background .15s}.cv2-toggle i:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s}.cv2-toggle input:checked+i{background:var(--accent)}.cv2-toggle input:checked+i:after{left:21px}.cv2-btn{padding:9px 12px;border:1px solid var(--primary);border-radius:8px;background:var(--primary);color:#fff!important;cursor:pointer;font-weight:500}.cv2-btn:disabled{opacity:.45;cursor:default}.cv2-btn.ghost{background:#fff;color:var(--primary)!important}.cv2-btn.danger{background:#fff;border-color:#e3b5ae;color:var(--danger)!important}.cv2-mini{padding:3px 8px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer;font-size:12px}.cv2-fronts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cv2-fronts li{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#fff;border:1px solid var(--line);border-radius:8px}.cv2-fronts li.on{border-color:var(--accent);background:var(--accent-soft)}.cv2-fronts small{color:var(--muted);margin-left:auto}.cv2-info div{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed var(--line)}.cv2-info span{color:var(--muted)}.cv2-info b{text-align:right;font-weight:500}.cv2-sw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px}.cv2-swatch{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:11px;text-align:center}.cv2-swatch i{width:100%;height:30px;border-radius:5px;border:1px solid rgba(0,0,0,.12)}.cv2-swatch.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.cv2-room .cv2-walls{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin:10px 0}.cv2-room .cv2-walls label{display:flex;align-items:center;justify-content:space-between;gap:6px}.cv2-room .cv2-walls span{color:var(--muted);font-weight:600}.cv2-el-head{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px}.cv2-el-head svg{width:56px;height:56px}.cv2-el-head div{display:flex;flex-direction:column}.cv2-el-head span{color:var(--muted);font-size:12.5px}.cv2-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cv2-list button{width:100%;display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;text-align:left}.cv2-list em{width:22px;height:22px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font:600 11px system-ui;font-style:normal}.cv2-list span{color:var(--muted);margin-left:auto;font-size:12.5px}.cv2-other{display:flex;flex-direction:column;gap:8px}.cv2-dimpop{position:absolute;transform:translate(-50%,14px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #0000002e;padding:10px;z-index:5;min-width:170px}.cv2-stage .cv2-dimpop{position:fixed}.cv2-dimpop-title{font-weight:600;margin-bottom:8px}.cv2-dimpop-list{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.cv2-dimpop-list button{padding:6px 4px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}.cv2-dimpop-list button.on{background:var(--primary);color:#fff;border-color:var(--primary)}.cv2-dimpop-actions{display:flex;gap:6px;margin-top:8px}.cv2-status{align-self:center;font-size:12px;color:var(--muted);max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 6px}.cv2-top .cv2-btn{padding:6px 12px}.cv2-savestate{align-self:center;font-size:12px;white-space:nowrap;padding:3px 8px;border-radius:999px;color:var(--muted);background:#f3f3f1}.cv2-savestate.ok{color:#2d6a3e;background:#e9f4ec}.cv2-savestate.warn{color:#8a5a00;background:#fbf1dc}.cv2-savestate.err{color:#fff;background:#c0392b;font-weight:600}.cv2-price b.ok{color:#2d6a3e}.cv2-numwrap{display:inline-flex;align-items:center;gap:4px}.cv2-numwrap i{font-style:normal;color:var(--muted);font-size:12px}.cv2-numwrap .cv2-num{width:86px}.cv2-rot{display:inline-flex;align-items:center;gap:4px}.cv2-rot .cv2-num{width:64px}.cv2-btn svg{width:18px;height:18px;vertical-align:-4px;margin-right:4px}.cv2-tabs.small{margin:6px 0 2px;flex-wrap:wrap;gap:4px}.cv2-tabs.small button{flex:none;padding:5px 9px;font-size:12px}.cv2-sw-grid.compact{grid-template-columns:repeat(4,1fr);max-height:260px;overflow-y:auto;padding-right:2px}.cv2-swatch i{background-size:cover;background-position:center;height:38px}.cv2-swatch span{line-height:1.15;max-height:2.3em;overflow:hidden}.cv2-dots{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.cv2-dots button{display:flex;flex-direction:column;align-items:center;gap:3px;width:62px;padding:4px 2px;border:1px solid transparent;border-radius:8px;background:none;cursor:pointer;font-size:11px;color:var(--ink)}.cv2-dots button i{width:30px;height:30px;border-radius:50%;border:1px solid rgba(0,0,0,.18);box-shadow:inset 0 -3px 6px #00000014}.cv2-dots button.on{border-color:var(--accent);background:var(--accent-soft)}.cv2-link{align-self:flex-start;padding:2px 0;border:0;background:none;color:#b35f00;cursor:pointer;font-size:12.5px;text-decoration:underline;text-underline-offset:2px}.cv2-text{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--line);border-radius:8px;font:inherit}.cv2-bom{display:flex;flex-direction:column;gap:10px}.cv2-bom-group h3{display:flex;justify-content:space-between;margin:4px 0 6px;font-size:12.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:600}.cv2-bom-group h3 em{font-style:normal;color:var(--ink)}.cv2-bom-group ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cv2-bom-group li{display:flex;align-items:center;gap:6px;padding:6px 8px;background:#fff;border:1px solid var(--line);border-radius:8px}.cv2-bom-group li>button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;border:0;background:none;padding:0;cursor:pointer;text-align:left}.cv2-bom-group li>button span{color:var(--muted);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.cv2-bom-group li small{color:var(--muted);font-size:11.5px;white-space:nowrap}.cv2-bom-group li strong{min-width:70px;text-align:right;font-weight:600}.cv2-bom-group li strong.ask{color:#b35f00;font-weight:500;font-size:12px}.cv2-bom-name{flex:1}.cv2-bom-group li.cv2-bom-add{flex-wrap:wrap}.cv2-bom-add input:first-child{flex:1 1 100%;min-width:0;padding:6px 8px;border:1px solid var(--line);border-radius:8px;font:inherit}.cv2-bom-add .cv2-num{flex:1}.cv2-bom-add .cv2-num{width:76px}.cv2-bom-add .cv2-btn{padding:6px 10px}.cv2-bom-total{position:sticky;bottom:0;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 10px;padding:10px 12px;background:var(--primary);color:#fff;border-radius:10px}.cv2-bom-total b{font-size:18px}.cv2-bom-total small{width:100%;opacity:.85;font-size:11.5px}.cv2 .cv2-dim-element-elev,.cv2 .cv2-dim-element-h{border-color:#6aa3d8;color:#1f4f7a;background:#f3f8fd}.cv2-mini-toggle{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;color:var(--muted);cursor:pointer}.cv2-fronts small{margin-left:auto}.cv2-tech{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}.cv2-tech-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.cv2-tech-row select{max-width:190px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:12px}.cv2-tech-row .cv2-mini-toggle{font-size:13px;color:var(--ink)}.cv2-card.tech svg{width:100%;height:64px}.cv2-warn{background:#fff1ef;border:1px solid #f1b5ad;color:#9b2c20;border-radius:8px;padding:8px 10px;font-size:12.5px;line-height:1.4}.cv2-row.rot{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.cv2-row.rot .cv2-btn{display:inline-flex;align-items:center;gap:4px}.cv2-row.rot .cv2-btn svg{width:16px;height:16px}.cv2-tech-kind{border:1px solid #e4e1da;border-radius:10px;padding:8px 10px 10px;margin:8px 0;background:#fff}.cv2-tech-kind.on{border-color:#f0b37a;box-shadow:0 0 0 2px #fff1e3 inset}.cv2-tech-kind header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.cv2-tech-kind header b{font-size:13px;text-transform:uppercase;letter-spacing:.03em;color:#3d4a52}.cv2-switch{position:relative;width:40px;height:22px;cursor:pointer}.cv2-switch input{position:absolute;opacity:0;width:0;height:0}.cv2-switch i{position:absolute;inset:0;border-radius:11px;background:#cfd5d8;transition:background .15s}.cv2-switch i:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000040;transition:transform .15s}.cv2-switch input:checked+i{background:#2f5d6b}.cv2-switch input:checked+i:after{transform:translate(18px)}.cv2-tech-current{display:flex;gap:10px;align-items:center;width:100%;text-align:left;background:#f7f5f1;border:0;border-radius:8px;padding:6px;cursor:pointer;margin-bottom:8px}.cv2-tech-current img{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:6px}.cv2-tech-current span{display:flex;flex-direction:column;gap:2px}.cv2-tech-current small{color:#6c757b;font-size:11.5px}.cv2-tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.cv2-tech-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px;border:1px solid #e7e4de;border-radius:8px;background:#fff;cursor:pointer}.cv2-tech-card img{width:100%;aspect-ratio:1;object-fit:contain}.cv2-tech-card small{font-size:10.5px;line-height:1.2;text-align:center;color:#44505a}.cv2-tech-card.sel{border-color:#e07b22;box-shadow:0 0 0 2px #ffe2c6}.cv2-card.tech img{width:100%;aspect-ratio:1.25;object-fit:contain}.cv2-price-head{display:grid;gap:6px;background:#f4f7f8;border:1px solid #dfe6e9;border-radius:10px;padding:10px;margin-bottom:10px}.cv2-price-head>div,.cv2-price-head>label{display:flex;align-items:center;justify-content:space-between;gap:8px}.cv2-price-head small{color:#6c757b;font-size:11.5px;line-height:1.35}.cv2-bom strong.inc{color:#7d8a92;font-weight:500}@media(max-width:1750px){.cv2-top .cv2-status{display:none}}.cv2-handle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.cv2-handle{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 4px 6px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:11.5px}.cv2-handle.on{border-color:var(--primary);box-shadow:0 0 0 2px #ff8a0040}.cv2 .cv2-remind{margin:8px 0;padding:8px 10px;border-radius:8px;background:#f3f6f4;color:#2c4a3a;font-size:12.5px}.cv2 .cv2-remind.warn{background:#fff4e0;color:#7a4a00;font-weight:600}.cv2 .cv2-warnmark{position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;border:2px solid #fff;background:#e8590c;color:#fff;font:800 18px/26px system-ui;cursor:pointer;pointer-events:auto;box-shadow:0 0 0 4px #e8590c47,0 3px 10px #00000040;z-index:2;padding:0}.cv2 .cv2-warnmark.long{background:#c92a2a;box-shadow:0 0 0 4px #c92a2a47,0 3px 10px #00000040}.cv2 .cv2-warnmark:hover{transform-origin:center;filter:brightness(1.1)}.cv2 .cv2-ctnote{margin:8px 0;padding:10px;border-radius:10px;background:#fff4e6;border:1px solid #f5c08a;color:#6b3500;font-size:12.5px}.cv2 .cv2-ctnote.long{background:#fff0f0;border-color:#f0a8a8;color:#7a1414}.cv2 .cv2-ctnote b{display:block;margin-bottom:4px}.cv2 .cv2-ctnote .cv2-seams{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.cv2 .cv2-ctnote .cv2-seams button{border:1px solid #d9a066;background:#fff;border-radius:6px;padding:3px 7px;cursor:pointer;font-size:12px}.cv2 .cv2-ctnote .cv2-seams button.on{background:#e8590c;color:#fff;border-color:#e8590c}.cv2 .cv2-vhandle svg{pointer-events:none}.cv2 .cv2-overlay .cv2-handle{z-index:1}.cv2 .cv2-hbtns{display:flex;gap:6px;margin:4px 0 8px}.cv2 .cv2-hbtns button{flex:1;border:1px solid var(--accent);background:#fff;color:#8a4a00;border-radius:8px;padding:6px 4px;cursor:pointer;font-weight:600;font-size:12.5px}.cv2 .cv2-hbtns button:hover{background:var(--accent);color:#fff}.cv2 .cv2-cat-h{margin:16px 0 2px;padding:7px 10px;font-size:13.5px;font-weight:700;color:#fff;background:#36505c;border-radius:8px;letter-spacing:.2px}.cv2 .cv2-cat-section:first-of-type .cv2-cat-h{margin-top:8px}.cv2 .cv2-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.cv2 .cv2-card.compact{padding:4px 5px 6px;gap:0;border-radius:8px}.cv2 .cv2-card.compact img{aspect-ratio:1 / 1}.cv2 .cv2-card.compact b{font-size:12.5px;line-height:1.2}.cv2 .cv2-card.compact span{font-size:10.5px;line-height:1.2;color:var(--muted);min-height:2.4em}.cv2 .cv2-card.compact small{font-size:11px;margin-top:3px}.cv2 .cv2-card.compact select{width:100%;margin-top:3px;font-size:11.5px;padding:2px 3px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}.cv2 .cv2-group h3{margin:10px 0 5px}.cv2 .cv2-fold>h3{margin:0}.cv2 .cv2-fold-h{width:100%;display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#f6f8f9;font:600 13.5px/1.2 system-ui;color:#2a3338;cursor:pointer;text-align:left}.cv2 .cv2-fold-h:hover{border-color:var(--accent)}.cv2 .cv2-fold-h em{margin-left:auto;font-style:normal;font-weight:500;color:#7d8a92;font-size:12px}.cv2 .cv2-fold-arrow{width:14px;color:var(--accent)}.cv2 .cv2-fold.open .cv2-fold-h{background:#fff;border-color:var(--accent)}.cv2 .cv2-fold .cv2-grid{margin-top:6px}.cv2 .cv2-stretch{margin:10px 0 4px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fafbfb}.cv2 .cv2-cat-h.fold{padding:0;background:none}.cv2 .cv2-cat-h.fold button{width:100%;display:flex;align-items:center;gap:8px;padding:9px 12px;border:0;border-radius:8px;background:#36505c;color:#fff;font:700 14px/1.2 system-ui;cursor:pointer;text-align:left}.cv2 .cv2-cat-h.fold button em{margin-left:auto;font-style:normal;font-weight:500;opacity:.75;font-size:12px}.cv2 .cv2-cat-h.fold .cv2-fold-arrow{color:#ffb15c}.cv2 .cv2-cat-section.cv2-fold+.cv2-cat-section.cv2-fold .cv2-cat-h.fold{margin-top:8px}.cv2 .cv2-warnmark.tech{background:#1c7ed6;box-shadow:0 0 0 4px #1c7ed647,0 3px 10px #00000040}.cv2-scope{display:grid;gap:6px;margin:2px 0 12px}.cv2-scope>span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.cv2-scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.cv2-scope-grid button{padding:8px 6px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer;font-size:12.5px;font-weight:500;color:var(--primary)}.cv2-scope-grid button.on{background:var(--primary);border-color:var(--primary);color:#fff}.cv2-pcard{border:1px solid var(--line);border-radius:12px;padding:10px 10px 12px;margin:0 0 12px;background:#fff;border-left-width:4px}.cv2-pcard header{display:flex;flex-direction:column;gap:1px;margin-bottom:4px}.cv2-pcard header b{font-size:14px;color:var(--primary)}.cv2-pcard header small{font-size:11.5px;color:var(--muted)}.cv2-pcard.carcass{border-left-color:#c9b996;background:linear-gradient(180deg,#fbf8f1,#fff 60px)}.cv2-pcard.facade{border-left-color:var(--accent);background:linear-gradient(180deg,#fff6ea,#fff 60px)}.cv2-pcard.ct{border-left-color:#8a7a64;background:linear-gradient(180deg,#f5f2ee,#fff 60px)}.cv2-pcard.handles{border-left-color:#6f7680;background:linear-gradient(180deg,#f1f3f5,#fff 60px)}.cv2-hpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px}.cv2-hpick button{display:flex;flex-direction:column;align-items:stretch;gap:1px;padding:4px 4px 6px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer;text-align:center;font:inherit;color:inherit}.cv2-hpick button:hover{border-color:#c9c2b4}.cv2 .cv2-hpick button svg{width:100%;height:46px;display:block;margin-bottom:3px}.cv2-hpick button.on{border-color:var(--primary);box-shadow:0 0 0 2px #ff8a0040}.cv2-hpick button b{font-size:12.5px}.cv2-hpick button small{font-size:10.5px;color:var(--muted);line-height:1.2}.cv2-group-handles{margin:4px 0 10px}.cv2-group-handles>summary{cursor:pointer;font-weight:600;font-size:13px;padding:4px 0}.cv2-chips{display:flex;flex-wrap:wrap;gap:4px;margin:2px 0 6px}.cv2-chip{padding:3px 8px;border-radius:999px;background:var(--accent-soft);color:#8a4b00;font-size:12px;font-weight:600;border:1px solid #ffd29a}.cv2-btn.small{padding:6px 10px;font-size:12.5px}.cv2-btn.danger{color:#c0392b;border-color:#f0c4be;background:#fff}.cv2-catmenu{display:grid;gap:8px;margin-top:4px}.cv2-catmenu button{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;text-align:left}.cv2-catmenu button:hover{border-color:#ffc27a;background:var(--accent-soft)}.cv2-catmenu span{display:grid;gap:2px}.cv2-catmenu b{font-size:15px;color:var(--primary)}.cv2-catmenu small{font-size:12px;color:var(--muted)}.cv2-catmenu em{font-style:normal;font-size:12px;color:var(--muted);background:#f1f4f5;border-radius:999px;padding:2px 8px}.cv2-catmenu i{font-style:normal;font-size:20px;color:var(--accent)}.cv2-cat-back{display:flex;align-items:center;gap:10px;margin-bottom:8px}.cv2-cat-back button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;color:var(--primary);font-weight:500}.cv2-cat-back b{font-size:15px;color:var(--primary)}.cv2-panel:has(.cv2-cat.split){width:452px}.cv2-cat.split{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;align-items:start}.cv2-cat-rail{position:sticky;top:-12px;margin:-12px 0 0 -14px;padding:12px 0 12px 6px;display:grid;gap:4px;align-self:start;max-height:calc(100vh - 80px);overflow-y:auto;background:#fff;border-right:1px solid var(--line);min-height:calc(100vh - 120px)}.cv2-cat-rail button{display:grid;justify-items:center;gap:2px;padding:8px 2px 7px;border:0;border-radius:10px 0 0 10px;background:none;cursor:pointer;color:var(--muted);font-size:11px;font-weight:500;line-height:1.1}.cv2-cat-rail button i{display:grid;place-items:center;color:var(--primary);opacity:.8}.cv2-cat-rail button:hover{background:#f4f7f8;color:var(--primary)}.cv2-cat-rail button.on{background:var(--accent-soft);color:#8a4b00;box-shadow:inset -3px 0 0 var(--accent)}.cv2-cat-rail button.on i{color:var(--accent);opacity:1}.cv2-cat-rail button.all{border-bottom:1px solid var(--line);border-radius:0;margin-bottom:4px;padding-bottom:9px}.cv2-cat.split .cv2-cat-sticky{margin-left:0;padding-left:0}.cv2-cat-title{font-size:15px;font-weight:600;color:var(--primary);margin:0 0 6px}.cv2-cat.split .cv2-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cv2-lightbtn{position:absolute;right:14px;bottom:148px;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fffffff2;box-shadow:0 4px 18px #0000001f;color:#8a5a00;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;padding:0}.cv2-lightbtn svg{width:22px;height:22px}.cv2-lightbtn:hover,.cv2-lightbtn.on{border-color:var(--primary);color:var(--primary);background:#fff7ec}.cv2-lightpanel{position:absolute;right:150px;bottom:14px;width:292px;max-height:calc(100% - 110px);overflow:auto;background:#fffffff7;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 34px #00000029;padding:12px 14px;z-index:4;font-size:13px;color:#2b2b2b}.cv2-light-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:15px}.cv2-light-x{border:0;background:none;font-size:20px;line-height:1;cursor:pointer;color:#666;padding:0 2px}.cv2-light-presets{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.cv2-light-presets button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 10px;font-size:12.5px;cursor:pointer;color:#333}.cv2-light-presets button.on{background:#2f3f48;border-color:#2f3f48;color:#fff}.cv2-light-row{display:block;margin:7px 0 9px}.cv2-light-lab{display:flex;justify-content:space-between;color:#444;margin-bottom:3px}.cv2-light-lab b{font-weight:600;color:#222;font-variant-numeric:tabular-nums}.cv2-light-row input[type=range]{width:100%;accent-color:var(--primary);margin:0}.cv2-light-ends{display:flex;justify-content:space-between;font-size:11px;color:#8a8a8a}.cv2-light-ends i{font-style:normal}.cv2-light-check{display:flex;align-items:center;gap:8px;margin:8px 0;cursor:pointer}.cv2-light-check input{accent-color:var(--primary);width:16px;height:16px}.cv2-light-foot{display:flex;gap:8px;margin-top:10px}.cv2-light-foot button{flex:1;border:1px solid var(--line);background:#fff;border-radius:9px;padding:7px 8px;cursor:pointer;font-size:12.5px;color:#333}.cv2-light-foot button:hover{border-color:var(--primary);color:var(--primary)}.cv2-paintmenu button{grid-template-columns:1fr 44px auto}.cv2-paintmenu small.hint{font-size:11px;color:#9aa3a7}.cv2-catmenu em.cv2-sw-mini{width:44px;height:44px;border-radius:9px;border:1px solid var(--line);background-size:cover;background-position:center;padding:0!important;display:grid;place-items:center;color:var(--primary)}.cv2-catmenu em.cv2-sw-mini.ico{background:#f4f7f8}.cv2-paintsplit .cv2-pcard{padding:8px 8px 10px}.cv2-paintsplit .cv2-cat-rail{align-content:start}.cv2-paintsplit .cv2-scope-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cv2-note.small{font-size:12px;margin:-2px 0 8px}.cv2-stack{display:flex;flex-direction:column;gap:8px}.cv2-stack>label{display:grid;grid-template-columns:76px 1fr;align-items:center;gap:8px}.cv2-stack>label>span{color:var(--muted);font-weight:600}.cv2-stack .cv2-numwrap .cv2-num{width:120px}.cv2-presets{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 2px 84px}.cv2-presets button{padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;font-size:13px;cursor:pointer}.cv2-presets button:hover{border-color:var(--accent)}.cv2-presets button.on{background:var(--primary);border-color:var(--primary);color:#fff}.cv2-stack.wide>label{grid-template-columns:96px 1fr}.cv2-toggle.off{cursor:not-allowed;opacity:.6}.cv2 .cv2-warnmark.yellow,.cv2 .cv2-warnmark.sheet{background:#f59f00;color:#1c1c1c;box-shadow:0 0 0 4px #f59f004d,0 3px 10px #00000040}.cv2-presets.wide{margin-left:0}.cv2-custom{border-left:3px solid var(--accent);padding-left:10px;display:flex;flex-direction:column;gap:6px}.cv2 .cv2-snappt{position:absolute;left:0;top:0;width:14px;height:14px;padding:0;border:2px solid #fff;border-radius:3px;background:#ff8a00;box-shadow:0 0 0 1px #0006,0 2px 6px #00000040;cursor:grab;pointer-events:auto;z-index:3;touch-action:none}.cv2 .cv2-snappt.own:hover{width:18px;height:18px}.cv2 .cv2-snappt.src{background:#e8590c;width:18px;height:18px;box-shadow:0 0 0 4px #e8590c59,0 2px 6px #0000004d;cursor:grabbing}.cv2 .cv2-snappt.target{background:#1c7ed6;width:11px;height:11px;opacity:.55;cursor:pointer}.cv2 .cv2-overlay.snapping .cv2-snappt.target{opacity:1;width:13px;height:13px}.cv2 .cv2-snappt.target.hot{width:20px;height:20px;opacity:1;background:#1971c2;box-shadow:0 0 0 5px #1c7ed659,0 2px 8px #0000004d}.cv2 .cv2-snapline{position:absolute;left:0;top:0;height:0;border-top:2px dashed #e8590c;transform-origin:0 0;pointer-events:none;z-index:2}.cv2 .cv2-snapctl{position:absolute;right:14px;bottom:202px;width:214px;padding:8px 10px;background:#fffffff5;border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 18px #0000001f;z-index:3;font:600 13px system-ui;color:#2d3a42}.cv2 .cv2-snapctl label{display:flex;align-items:center;gap:7px;cursor:pointer}.cv2 .cv2-snapctl label svg{width:20px;height:20px;color:#e8590c;flex:none}.cv2 .cv2-snapctl input{width:16px;height:16px;accent-color:#e8590c;margin:0;flex:none}.cv2 .cv2-snapctl p{margin:6px 0 0;font:500 12px/1.35 system-ui;color:#5b6870}.cv2 .cv2-snapctl.on{border-color:#ffc78a}.cv2 .cv2-dists .cv2-sub{display:flex;align-items:center;justify-content:space-between;gap:8px}.cv2 .cv2-dists-grid{display:grid;grid-template-columns:52px 1fr 18px 1fr 56px;align-items:center;gap:6px 4px;margin:4px 0 8px;font-size:12.5px;color:#44525a}.cv2 .cv2-dists-grid>span:nth-child(5n){text-align:right}.cv2 .cv2-dists-grid i{font-style:normal;text-align:center;color:#8a979e}.cv2 .cv2-dists-grid .cv2-numwrap{width:100%}.cv2 .cv2-dists-grid .cv2-num{width:100%;min-width:0;text-align:right}.cv2 .cv2-dist-none{text-align:center;color:#a3adb3}.cv2 .cv2-lock{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding:3px 8px 3px 6px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#7d8a91;font:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.cv2 .cv2-lock:hover{border-color:#b9c4c9;color:#3d4a51}.cv2 .cv2-lock svg,.cv2 .cv2-el-head .cv2-lock svg{width:15px;height:15px}.cv2 .cv2-lock.on{background:var(--accent-soft);border-color:#ffc78a;color:var(--rail-on)}.cv2 .cv2-lock:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cv2 .cv2-dists.locked .cv2-dists-grid{opacity:.75}.cv2 .cv2-dist-lock{text-align:right;padding:4px 6px;border-radius:6px;background:#f1f4f5;color:#56636a;font-variant-numeric:tabular-nums}.cv2 .cv2-endsdecor{margin:4px 0 8px}.cv2 .cv2-endsdecor summary{cursor:pointer;font-weight:600;padding:6px 0;color:#2d3a42}.cv2 .cv2-endsdecor .cv2-btn{margin:4px 0 8px}.cv2-pcard.podium{border-left-color:#f59f00}.cv2-pcard.podium.focus{box-shadow:0 0 0 2px #f59f0073}.cv2 .cv2-tb.cv2-tb-text{width:auto;padding:0 8px;gap:4px;display:inline-flex;align-items:center;font-size:11.5px;white-space:nowrap}.cv2-input.wide{flex:1 1 100%;min-width:0;padding:7px 9px;border:1px solid var(--line);border-radius:8px;font:inherit;background:#fff}.cv2 .cv2-plannote{position:absolute;left:0;top:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px;max-width:190px;padding:4px 8px;border-radius:8px;border:1px solid rgba(45,58,66,.18);background:#fffffff2;color:#24323a;font:500 11.5px/1.25 system-ui;text-align:left;cursor:pointer;pointer-events:auto;box-shadow:0 2px 8px #00000024;z-index:2;white-space:normal}.cv2 .cv2-plannote b{font-weight:700;font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:#2f5d6b}.cv2 .cv2-plannote.switch b{color:#7048e8}.cv2 .cv2-plannote.led b{color:#c27c0e}.cv2 .cv2-plannote.water b,.cv2 .cv2-plannote.sewer b{color:#1c7ed6}.cv2 .cv2-plannote.gas b{color:#c92a2a}.cv2 .cv2-plannote:hover{border-color:#2f5d6b}.cv2 .cv2-dim-element-axis,.cv2 .cv2-dim-element-axis-y{background:#2f5d6b;color:#fff}.cv2 .cv2-restore{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;background:#20282e47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cv2 .cv2-restore-card{display:flex;flex-direction:column;gap:8px;width:min(440px,calc(100% - 32px));padding:22px 22px 18px;border-radius:14px;background:#fff;box-shadow:0 18px 50px #00000040;color:#24323a}.cv2 .cv2-restore-card b{font-size:18px}.cv2 .cv2-restore-card span{font-size:14px}.cv2 .cv2-restore-card small{color:var(--muted);font-size:12.5px}.cv2 .cv2-restore-card div{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.cv2 .cv2-restore-card .cv2-btn{flex:1 1 auto}.cv2 .cv2-versions ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.cv2 .cv2-versions li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:8px}.cv2 .cv2-versions li span{display:flex;flex-direction:column}.cv2 .cv2-versions li small{color:var(--muted);font-size:12px}.cv2 .cv2-versions li .cv2-btn{width:auto;padding:4px 10px}.cv2-sillbox{margin:8px 0;padding:10px 12px;border-radius:10px;background:#fff7e8;border:1px solid #f2c678}.cv2-sillbox.on{background:#eef6ee;border-color:#a7cfa7}.cv2-sillbox b{display:block;font-size:13px;margin-bottom:2px}.cv2-sillbox p{margin:2px 0 8px;font-size:12px;color:#5a5f66}.cv2-sillbtns{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cv2-sillbtns span{font-size:12px}.cv2-notefield{display:block;margin-top:10px}.cv2-notefield span{display:block;font-size:12px;color:#6b7178;margin-bottom:4px}.cv2-notefield textarea{width:100%;box-sizing:border-box;font:inherit;font-size:13px;padding:6px 8px;border:1px solid #d9dde3;border-radius:8px;resize:vertical}.cv2 .cv2-warnmark.red{background:#e03131;color:#fff;box-shadow:0 0 0 4px #e031314d,0 3px 10px #00000040}.cv2 .cv2-apron{position:absolute;right:16px;top:112px;z-index:6;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.cv2 .cv2-apron-mark{width:34px;height:34px;border-radius:50%;border:2px solid #fff;background:#e03131;color:#fff;font:800 19px/28px system-ui;cursor:pointer;box-shadow:0 0 0 4px #e0313147,0 3px 10px #00000040;padding:0}.cv2 .cv2-apron-box{width:270px;background:#fff;border:1px solid #f1b0b0;border-radius:12px;padding:10px 12px;box-shadow:0 8px 24px #00000024;font-size:12px;color:#43484e}.cv2 .cv2-apron-box b{display:block;font-size:13px;color:#c92a2a;margin-bottom:4px}.cv2 .cv2-apron-box p{margin:0 0 8px}.cv2 .cv2-apron-box div{display:flex;gap:8px;margin-bottom:6px}.cv2 .cv2-apron-box small{color:#868e96}.cv2 .cv2-remind b.apron{display:block;margin-top:4px;color:#c92a2a}.cv2 .cv2-xhandle{position:absolute;left:0;top:0;z-index:4}.cv2 .cv2-sillask{position:absolute;left:50%;top:96px;transform:translate(-50%);z-index:7;width:320px;background:#fff;border:1px solid #f0c674;border-radius:12px;padding:12px 14px;box-shadow:0 10px 28px #0000002e;font-size:12px;color:#43484e}.cv2 .cv2-sillask b{display:block;font-size:14px;color:#1f2933;margin-bottom:4px}.cv2 .cv2-sillask p{margin:0 0 10px;font-size:13px}.cv2 .cv2-sillask div{display:flex;gap:8px;margin-bottom:8px}.cv2 .cv2-sillask div .cv2-btn{min-width:72px}.cv2 .cv2-sillask small{color:#868e96}.cv2 .cv2-myprojects input[type=search]{width:100%;margin-bottom:10px}.cv2 .cv2-pcards{list-style:none;margin:0;padding:0;display:grid;gap:10px}.cv2 .cv2-pcards li{display:grid;grid-template-columns:112px 1fr;grid-template-rows:auto auto;gap:6px 10px;padding:8px;border:1px solid #e3e6ea;border-radius:10px;background:#fff}.cv2 .cv2-pcards li.cur{border-color:#f08c00;box-shadow:0 0 0 2px #f08c0026}.cv2 .cv2-pcards .pic{grid-row:1 / span 2;width:112px;height:70px;border-radius:6px;overflow:hidden;background:#f1f3f5;display:flex;align-items:center;justify-content:center}.cv2 .cv2-pcards .pic img{width:100%;height:100%;object-fit:cover;display:block}.cv2 .cv2-pcards .pic span{font-size:11px;color:#adb5bd}.cv2 .cv2-pcards .meta{display:flex;flex-direction:column;gap:2px;min-width:0}.cv2 .cv2-pcards .meta b{font-size:13px;color:#1f2933;cursor:text;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv2 .cv2-pcards .meta small{font-size:11.5px;color:#6b7280}.cv2 .cv2-pcards .cv2-btn{justify-self:start;padding:4px 12px}.cv2 .cv2-pcards .open-now{font-size:11.5px;color:#f08c00;font-weight:600;align-self:center}.cv2-hw{display:block}.cv2-pcard.hw-handles{border-left-color:#7d8a91}.cv2-pcard.hw-hinges{border-left-color:#5f7f96}.cv2-pcard.hw-tipon{border-left-color:var(--accent)}.cv2-hw-front{display:block;padding:6px 0 2px;text-align:center}.cv2-hw-front svg{display:inline-block;width:230px;max-width:100%;height:auto;max-height:210px;overflow:visible}.cv2-hw-front.tall svg{width:120px;max-height:300px}.cv2-hw-front .fixed{fill:#eef1f2;stroke:#c4ccd0;stroke-width:4}.cv2-hw-front .fr{cursor:pointer;outline:none}.cv2-hw-front .fr .face{fill:#fbfcfc;stroke:#9aa7ad;stroke-width:5;transition:fill .12s,stroke .12s}.cv2-hw-front .fr:hover .face,.cv2-hw-front .fr:focus-visible .face{fill:var(--accent-soft);stroke:var(--accent)}.cv2-hw-front .fr .hd{fill:#4a565c}.cv2-hw-front .fr.off .hd{fill:none;stroke:#c25b4a;stroke-width:4;stroke-dasharray:10 8}.cv2-hw-front .fr.off .face{fill:#f6f7f7}.cv2-hw-front .fr.tip{cursor:default}.cv2-hw-front .fr.tip .face{fill:#f6f7f7;stroke:#c4ccd0}.cv2-hw-front .fr .tipdot{fill:var(--accent)}.cv2-hw-front.tipmode .fr.tip{cursor:pointer}.cv2-hw-front.tipmode .fr.on .face{fill:var(--accent-soft);stroke:var(--accent)}.cv2-hw-front.tipmode .fr .hd{fill:#b9c2c6}.cv2-hw-front.tipmode .fr.na{cursor:not-allowed}.cv2-hw-front.tipmode .fr.na .face{fill:#eceff0;stroke:#d3d9dc;stroke-dasharray:10 8}.cv2-hw-front.tipmode .fr.na:hover .face{fill:#eceff0;stroke:#d3d9dc}.cv2-hw-front .h165{font:700 70px system-ui,sans-serif;fill:var(--accent);pointer-events:none}.cv2-hwopts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0}.cv2-hwopts button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit;cursor:pointer;color:var(--ink)}.cv2-hwopts button b{font-size:12.5px}.cv2-hwopts button small{font-size:11px;color:var(--muted);text-align:center}.cv2-hwopts button.on{border-color:var(--accent);box-shadow:0 0 0 2px #ff8a0038;background:var(--accent-soft)}.cv2-hwopts button:disabled{opacity:.45;cursor:not-allowed}.cv2 .cv2-hwopts .cv2-hinge-sk{width:76px;height:54px;flex:none}.cv2-hinge-sk .side{fill:#d9dfe2}.cv2-hinge-sk .closed{stroke:#b9c3c8;stroke-width:3;stroke-dasharray:4 3}.cv2-hinge-sk .door{stroke:#33434b;stroke-width:4;stroke-linecap:round}.cv2-hinge-sk .arc{fill:none;stroke:var(--accent);stroke-width:1.6}.cv2-hinge-sk text{font-size:10px;font-weight:700;fill:#33434b}.cv2-tipcolors{display:flex;gap:6px;margin:6px 0 2px}.cv2-tipcolors button{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 6px;border:1px solid var(--line);border-radius:999px;background:#fff;font:inherit;font-size:12px;cursor:pointer}.cv2-tipcolors button i{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.18)}.cv2-tipcolors button.on{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.cv2-hw-all{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.cv2 .cv2-pcards .meta .client{color:#374151}.cv2 .cv2-pcards .meta .price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.cv2 .cv2-pcards .meta .price b{font-size:13.5px;color:#2d6a3e;cursor:default}.cv2 .cv2-pcards .meta .price i{font-style:normal;font-size:11.5px;padding:1px 7px;border-radius:999px}.cv2 .cv2-pcards .meta .price i.disc{color:#8a5a00;background:#fbf1dc;font-weight:600}.cv2 .cv2-pcards .meta .price i.nodisc{color:#6b7280;background:#f1f3f5}.cv2 .cv2-pcards .meta .note{color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv2 .cv2-savecard label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#374151}.cv2 .cv2-savecard .cv2-text{width:100%;box-sizing:border-box;font-size:14px;padding:8px 10px}.cv2 .cv2-savecard textarea.cv2-text{resize:vertical;min-height:64px}.cv2 .cv2-savecard .cv2-saveerr{margin:0;padding:8px 10px 8px 26px;border-radius:8px;background:#fdecea;color:#b42318;font-size:12.5px}.cv2 .cv2-ovtall{top:160px}.cv2 .cv2-ovtall .cv2-apron-mark{background:#f59f00;box-shadow:0 0 0 4px #f59f004d,0 3px 10px #00000040}.cv2 .cv2-ovtall .cv2-apron-box{border-color:#f5d48a}.cv2 .cv2-ovtall .cv2-apron-box b{color:#b26a00}.cv2 .cv2-sidebox{border:1px solid #e5e7eb;border-radius:10px;padding:6px 10px;margin:6px 0}.cv2 .cv2-sidebox>b{display:block;font-size:12px;color:#374151;margin-bottom:2px}.cv2 .cv2-cfg{position:fixed;inset:0;z-index:50;background:#f8f9fa;display:flex;flex-direction:column}.cv2 .cv2-cfg-head{display:flex;align-items:center;gap:14px;padding:10px 16px;background:#fff;border-bottom:1px solid #e5e7eb}.cv2 .cv2-cfg-head b{font-size:16px}.cv2 .cv2-cfg-head>span{color:#6b7280;font-size:13px}.cv2 .cv2-cfg-actions{margin-left:auto;display:flex;gap:8px}.cv2 .cv2-cfg-body{flex:1;display:flex;min-height:0}.cv2 .cv2-cfg-draw{flex:1.25;display:flex;flex-direction:column;padding:10px;min-width:0}.cv2 .cv2-cfg-draw svg{flex:1;width:100%;min-height:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;touch-action:none;-webkit-user-select:none;user-select:none;font-family:system-ui,sans-serif}.cv2 .cv2-cfg-side{flex:1;display:flex;flex-direction:column;min-width:380px;max-width:780px;border-left:1px solid #e5e7eb;background:#fff}.cv2 .cv2-cfg-3dwrap{position:relative;height:58%;min-height:300px;border-bottom:1px solid #e5e7eb}.cv2 .cv2-cfg-3d{position:absolute;inset:0;overflow:hidden}.cv2 .cv2-cfg-3dbar{position:absolute;left:10px;bottom:10px;display:flex;gap:6px;z-index:2}.cv2 .cv2-cfg-3dbar button{height:30px;padding:0 10px;border-radius:8px;border:1px solid #dee2e6;background:#ffffffeb;font-size:12.5px;cursor:pointer;box-shadow:0 1px 3px #00000014}.cv2 .cv2-cfg-3dbar button:hover{border-color:#f08c00;color:#d9480f}.cv2 .cv2-cfg-view{margin-left:8px}.cv2 .cv2-cfg-3d .cv2-canvas{width:100%!important;height:100%!important;display:block}.cv2 .cv2-cfg-tools{flex:1;overflow:auto;padding:10px 14px 16px}.cv2 .cv2-cfg-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0}.cv2 .cv2-cfg-card{border:1px solid #ffd8a8;background:#fff9f2;border-radius:10px;padding:8px 10px;margin:8px 0}.cv2 .cv2-btn.danger{color:#c92a2a;border-color:#ffc9c9}.cv2 .cv2-cfgbtn{width:auto!important;padding:0 8px!important;gap:4px;display:inline-flex;align-items:center}.cv2 .cv2-cfgbtn span{font-size:12px}.cv2 .cfg-grip{cursor:pointer}.cv2 .cv2-hint{margin:2px 0 6px;font-size:11.5px;line-height:1.35;color:#868e96}.cv2 .cv2-accs{gap:8px}.cv2 .cv2-acc{border:1px solid #e9ecef;border-radius:12px;background:#fff;overflow:hidden}.cv2 .cv2-acc+.cv2-acc{margin-top:8px}.cv2 .cv2-acc>summary{list-style:none;display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.cv2 .cv2-acc>summary::-webkit-details-marker{display:none}.cv2 .cv2-acc>summary:before{content:"";width:7px;height:7px;border-right:2px solid #adb5bd;border-bottom:2px solid #adb5bd;transform:rotate(-45deg);transition:transform .15s ease;flex:none}.cv2 .cv2-acc[open]>summary:before{transform:rotate(45deg)}.cv2 .cv2-acc>summary b{font-size:13px;font-weight:600;color:#212529}.cv2 .cv2-acc>summary em{margin-left:auto;font-style:normal;font-size:11.5px;color:#868e96;max-width:60%;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv2 .cv2-acc[open]>summary{border-bottom:1px solid #f1f3f5}.cv2 .cv2-acc-body{padding:8px 12px 10px;display:flex;flex-direction:column;gap:6px}.cv2 .cv2-grid2,.cv2 .cv2-grid3{display:grid;gap:6px 8px}.cv2 .cv2-grid2{grid-template-columns:1fr 1fr}.cv2 .cv2-grid3{grid-template-columns:1fr 1fr 1fr}.cv2 .cv2-grid2 label,.cv2 .cv2-grid3 label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:#6c757d}.cv2 .cv2-grid2 .cv2-numwrap,.cv2 .cv2-grid3 .cv2-numwrap{width:100%}.cv2 .cv2-grid2 .cv2-num,.cv2 .cv2-grid3 .cv2-num{width:100%;box-sizing:border-box}.cv2 .cv2-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}.cv2 .cv2-chips button{border:1px solid #dee2e6;background:#fff;border-radius:999px;padding:4px 10px;font-size:12px;color:#495057;cursor:pointer}.cv2 .cv2-chips button.on{background:var(--accent);border-color:var(--accent);color:#fff}.cv2 .cv2-sidebox{border:0;border-radius:0;padding:4px 0;margin:0}.cv2 .cv2-editbtn{position:absolute;left:0;top:0;z-index:5;pointer-events:auto;width:28px;height:28px;border-radius:8px;border:1px solid rgba(0,0,0,.08);background:#fffffff7;color:var(--accent);display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;box-shadow:0 1px 2px #0000001f,0 4px 12px #0000001f}.cv2 .cv2-editbtn:hover{background:var(--accent);color:#fff}.cv2 .cv2-render{position:fixed;inset:0;z-index:60;background:#14181c61;display:flex;align-items:center;justify-content:center;padding:16px}.cv2 .cv2-render-card{background:#fff;border-radius:14px;box-shadow:0 16px 48px #00000040;width:min(880px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:14px 18px 18px;display:flex;flex-direction:column;gap:8px}.cv2 .cv2-render-card header{display:flex;align-items:center;justify-content:space-between}.cv2 .cv2-render-card header b{font-size:16px}.cv2 .cv2-render-card .cv2-x{border:0;background:none;font-size:24px;line-height:1;cursor:pointer;color:#6b7280}.cv2 .cv2-render-progress .bar{height:8px;border-radius:4px;background:#eef1f3;overflow:hidden}.cv2 .cv2-render-progress .bar i{display:block;height:100%;background:var(--accent);transition:width .2s}.cv2 .cv2-render-progress small{color:#6b7280}.cv2 .cv2-render-img{width:100%;border-radius:10px;border:1px solid #e5e7eb}.cv2 .cv2-render-actions{display:flex;gap:8px;justify-content:flex-end}.cv2 .cv2-render-actions a.cv2-btn{text-decoration:none;display:inline-flex;align-items:center}.cv2-pipe-go{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:4px 0 8px}.cv2-pipe-go .cv2-btn{padding:6px 8px;font-size:12px;white-space:nowrap}.cv2-cttabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:0 0 10px}.cv2-cttabs button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0 5px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:11.5px;color:#3d4a52}.cv2-cttabs button svg{width:20px;height:20px}.cv2-cttabs button.on{background:var(--accent-soft);border-color:#ffc27a;color:#b35c00;font-weight:600}.cv2-ctsize{display:grid;grid-template-columns:1fr 1fr;gap:6px 8px;align-items:end;margin-bottom:6px}.cv2-ctsize label{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#66727a}.cv2-ctsize .thick{grid-column:1 / -1}.cv2-pics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.cv2-pics.two{grid-template-columns:1fr 1fr 1.2fr;align-items:stretch}.cv2-pics.thick{grid-template-columns:1fr 1fr}.cv2-pics button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 2px 5px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:11px;line-height:1.15;color:#3d4a52;text-align:center}.cv2-pics button svg{width:100%;max-width:64px;height:32px}.cv2-pics button.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.cv2-pics button:disabled{opacity:.4;cursor:not-allowed}.cv2-pics .cv2-allow{display:flex;flex-direction:column;justify-content:center;gap:2px;font-size:11px;color:#66727a}.cv2 svg.cv2-ctplan{width:100%;height:auto;max-height:150px;display:block;margin:0 0 4px}.cv2-ctplan text{font:10px system-ui;fill:#7a858c}.cv2-ctplan .side{cursor:pointer}.cv2-ctplan .side.on line:first-child{filter:drop-shadow(0 0 2px #ff8a00) drop-shadow(0 0 2px #ff8a00)}.cv2-ctside{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fafafa;margin-bottom:6px}.cv2-ctside b{font-size:12.5px}.cv2-ctside .cv2-mini{align-self:flex-start}.cv2-ctsize .cv2-ctlbl{grid-column:1 / -1;font-size:12px;color:#66727a;margin-top:2px}.cv2-cfg-dimin{width:100%;height:100%;box-sizing:border-box;border:2px solid #e8590c;border-radius:8px;text-align:center;font-family:system-ui,sans-serif;color:#212529;background:#fff;padding:0 4px;outline:none}.cfg-dim.edit text{fill:#e8590c}.cv2-stepper{display:inline-flex;align-items:center;gap:10px}.cv2-stepper .cv2-btn{min-width:34px;padding:4px 0;font-size:16px}.cv2-stepper b{min-width:18px;text-align:center}.cv2-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:6px}.cv2-tiles button{display:flex;flex-direction:column;gap:3px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:10.5px;line-height:1.15;color:#3d4a52;text-align:left}.cv2-tiles button img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px;display:block}.cv2-tiles button.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.cv2-pcard.cv2-hbar{border-left-color:var(--primary);background:linear-gradient(180deg,#fff6ea,#fff 70px)}.cv2-pcard.cv2-hbar header{flex-direction:row;align-items:center;justify-content:space-between}.cv2-pcard.cv2-hbar .cv2-x{border:0;background:none;font-size:22px;line-height:1;cursor:pointer;color:#6b7280;padding:0 2px}.cv2-hbar-btns{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 4px}.cv2-hbar-btns .cv2-btn{padding:7px 10px;font-size:13px}.pf{position:relative;display:flex;justify-content:center;width:100%}.pf-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;padding:8px 2px 6px;border:0;border-radius:12px;background:none;cursor:pointer;color:var(--rail-ink, #24323a);font:600 11.5px/1.15 system-ui,sans-serif}.pf-btn:hover,.pf-btn.on{background:var(--accent-soft, #fff1df)}.pf-short{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-dot{position:absolute;top:6px;right:16px;width:10px;height:10px;border-radius:50%;background:var(--accent, #ff8a00);box-shadow:0 0 0 2px #fff}.pf-av{display:inline-grid;place-items:center;flex:none;overflow:hidden;border-radius:50%;background:var(--primary, #33525f);color:#fff;font-style:normal;font-weight:700;letter-spacing:.5px}.pf-av img{width:100%;height:100%;object-fit:cover;display:block}.pf-pop{position:absolute;left:calc(100% + 10px);bottom:0;z-index:50;width:290px;display:flex;flex-direction:column;padding:8px;border:1px solid var(--line, #dde4e7);border-radius:14px;background:#fff;box-shadow:0 12px 36px #00000029}.pf-who{display:flex;gap:12px;align-items:center;padding:8px 8px 12px;border-bottom:1px solid var(--line, #dde4e7);margin-bottom:6px}.pf-who div{display:flex;flex-direction:column;min-width:0}.pf-who b{font-size:15px;color:var(--ink, #1f2a30)}.pf-who span{font-size:13px;color:var(--muted, #6c7b83)}.pf-who small{font-size:12px;color:var(--muted, #6c7b83);overflow:hidden;text-overflow:ellipsis}.pf-warn{margin:4px 6px 8px;padding:8px 10px;border-radius:8px;background:var(--accent-soft, #fff1df);color:#8a4a00;font-size:12.5px}.pf-pop>button,.pf-pop>a{display:block;padding:10px 12px;border:0;border-radius:8px;background:none;text-align:left;color:var(--ink, #1f2a30);font:500 14px system-ui,sans-serif;text-decoration:none;cursor:pointer}.pf-pop>button:hover,.pf-pop>a:hover{background:#f1f5f6}.pf-pop>.pf-out{color:var(--danger, #c0392b)}.pf-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:#141e2473}.pf-card{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;display:flex;flex-direction:column;gap:14px;padding:20px 22px;border-radius:16px;background:#fff;box-shadow:0 24px 60px #00000040;font:14px/1.35 Golos Text,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink, #1f2a30);-webkit-user-select:text;user-select:text}.pf-card button,.pf-card input,.pf-card select{font-family:inherit}.pf-card header{display:flex;align-items:center}.pf-card h2{flex:1;margin:0;font-size:19px}.pf-x{width:34px;height:34px;border:0;border-radius:8px;background:none;font-size:24px;line-height:1;cursor:pointer;color:var(--muted, #6c7b83)}.pf-x:hover{background:#f1f5f6}.pf-photo{display:flex;gap:16px;align-items:center}.pf-photo>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.pf-photo small{color:var(--muted, #6c7b83);font-size:12px}.pf-file{position:relative;overflow:hidden;padding:8px 14px;border-radius:9px;background:var(--primary, #33525f);color:#fff;font-weight:600;cursor:pointer}.pf-file input{position:absolute;inset:0;opacity:0;cursor:pointer}.pf-link{padding:0;border:0;background:none;color:var(--danger, #c0392b);cursor:pointer;font:inherit}.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.pf-card label{display:flex;flex-direction:column;gap:4px}.pf-card label>span{font-size:12.5px;color:var(--muted, #6c7b83)}.pf-card input:not([type=file]),.pf-card select{height:38px;padding:0 10px;border:1px solid var(--line, #dde4e7);border-radius:9px;background:#fff;font:inherit;color:inherit}.pf-card input:focus,.pf-card select:focus{outline:2px solid #ffc27a;border-color:var(--accent, #ff8a00)}.pf-card label.bad input,.pf-card label.bad select{border-color:var(--danger, #c0392b)}.pf-card label.bad small{color:var(--danger, #c0392b);font-size:12px}.pf-card fieldset{margin:0;padding:10px 12px 12px;border:1px solid var(--line, #dde4e7);border-radius:12px}.pf-card legend{padding:0 6px;font-size:12.5px;color:var(--muted, #6c7b83)}.pf-mail{margin:0;font-size:12.5px;color:var(--muted, #6c7b83)}.pf-err{margin:0;padding:8px 10px;border-radius:8px;background:#fdecea;color:var(--danger, #c0392b)}.pf-card footer{display:flex;justify-content:flex-end;gap:10px}.pf-ghost,.pf-save{height:40px;padding:0 18px;border-radius:10px;font:600 14px system-ui,sans-serif;cursor:pointer}.pf-ghost{border:1px solid var(--line, #dde4e7);background:#fff;color:var(--ink, #1f2a30)}.pf-save{border:0;background:var(--primary, #33525f);color:#fff}.pf-save:disabled{opacity:.55;cursor:default}@media(max-width:560px){.pf-grid{grid-template-columns:1fr}}
