:root{--appbar: #1c2530;--appbar-2: #26313d;--appbar-line: #34414f;--appbar-text: #dfe5ec;--appbar-muted: #8b97a4;--bg: #e7eaee;--panel: #f4f5f7;--card: #ffffff;--line: #d6dbe1;--line-soft: #e7eaee;--hover: #eef3fa;--sel: #e1ecfa;--text: #1d242b;--muted: #6a7581;--faint: #9aa4ae;--accent: #1f6fd1;--accent-2: #185cb0;--accent-soft: #e4eefb;--ok: #2f9a52;--ok-soft: #e6f4ea;--warn: #c98200;--warn-soft: #fdf3dd;--err: #d23b3b;--err-soft: #fbe9e9;--info: #4a72a6;--info-soft: #e9f0f8;--r: 4px;--shadow: 0 1px 2px rgba(20, 30, 40, .08), 0 2px 8px rgba(20, 30, 40, .08)}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font:12px/1.5 Microsoft YaHei UI,Microsoft YaHei,PingFang SC,Segoe UI,sans-serif;overflow:hidden;-webkit-font-smoothing:antialiased}#app{--lw: 300px;--rw: 340px;display:grid;grid-template-columns:var(--lw) minmax(0,1fr) var(--rw);grid-template-rows:44px minmax(0,1fr);height:100vh;position:relative}#app>.left{grid-column:1;grid-row:2}#app>#viewport{grid-column:2;grid-row:2}#app>.right{grid-column:3;grid-row:2}#app.no-left{--lw: 0px}#app.no-left .left{display:none}#app.no-right{--rw: 0px}#app.no-right .right{display:none}#app.narrow{--lw: 0px;--rw: 0px}#app.narrow .left,#app.narrow .right{grid-column:auto;grid-row:auto;position:absolute;top:44px;bottom:0;z-index:20;box-shadow:0 0 28px #0f192347}#app.narrow .left{left:0;width:min(300px,88vw)}#app.narrow .right{right:0;width:min(340px,92vw)}.ic{flex:none;display:block}.grow{flex:1}.hidden,.form .hide{display:none!important}.muted{color:var(--muted);font-weight:400}.full{width:100%}.st-ok{color:var(--ok)}.st-warn{color:var(--warn)}.st-err{color:var(--err)}.st-info{color:var(--info)}button,input,select{font:inherit;color:inherit}button{height:26px;padding:0 10px;border:1px solid var(--line);background:var(--card);border-radius:var(--r);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;color:#2a333c;transition:background .12s,border-color .12s}button:hover{border-color:#b3bcc6;background:#f7f9fb}button:active{background:#edf0f3}button:focus-visible{outline:2px solid rgba(31,111,209,.45);outline-offset:1px}button .ic{opacity:.85}button.primary{background:var(--accent);border-color:var(--accent-2);color:#fff}button.primary:hover{background:#2a7ae0}button.primary .ic{opacity:1}button.danger{color:var(--err)}button.danger:hover{border-color:#e6b3b3;background:var(--err-soft)}button.danger-fill{background:var(--err);border-color:#b32f2f;color:#fff}button.link{border:none;background:none;color:var(--accent);height:22px;padding:0 4px}button.link:hover{background:var(--accent-soft)}button.icon-btn{width:28px;padding:0}input,select{height:26px;border:1px solid var(--line);background:#fff;border-radius:var(--r);padding:0 6px;min-width:0}select{padding-right:2px}input[type=checkbox]{height:14px;width:14px;margin:0;accent-color:var(--accent);justify-self:start}input[type=color]{padding:1px 2px;width:52px}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #1f6fd126}input.num{text-align:right;font-variant-numeric:tabular-nums}input::placeholder{color:var(--faint)}.appbar{grid-column:1 / 4;display:flex;align-items:center;gap:2px;padding:0 10px 0 8px;background:var(--appbar);color:var(--appbar-text);border-bottom:1px solid #10161d;min-width:0;overflow:hidden}.brand{display:flex;align-items:center;gap:8px;padding-right:12px;margin-right:4px;min-width:0}.logo{width:28px;height:28px;border-radius:6px;background:linear-gradient(135deg,#2f80e4,#1b5fb8);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none}.appname{font-size:14px;font-weight:700;letter-spacing:.5px;color:#fff}.docname{color:var(--appbar-muted);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:10px;border-left:1px solid var(--appbar-line)}.tgroup{display:flex;align-items:center;gap:2px;padding:0 8px;border-left:1px solid var(--appbar-line);height:26px}.appbar .grow+.tgroup{border-left:none}.appbar button.tb{background:transparent;border:1px solid transparent;color:var(--appbar-text);height:30px;padding:0 8px}.appbar button.tb:hover{background:var(--appbar-2);border-color:var(--appbar-line)}.appbar button.tb:active{background:#303c4a}.appbar button.icon-only{width:30px;padding:0}.appbar .ptog{color:var(--appbar-muted);flex:none}.appbar .ptog.on{color:#fff}.appbar .ptog:last-child{margin-left:4px}.appbar .tog{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none}.appbar .tog input{display:none}.appbar .tog span{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 9px;border-radius:var(--r);border:1px solid transparent;color:var(--appbar-muted)}.appbar .tog span:hover{background:var(--appbar-2);color:var(--appbar-text)}.appbar .tog input:checked+span{color:#fff;background:#2f80e447;border-color:#589cf08c}.appbar .fld{display:inline-flex;align-items:center;gap:5px;color:var(--appbar-muted);padding:0 4px}.appbar select{height:26px;background:var(--appbar-2);border-color:var(--appbar-line);color:var(--appbar-text)}.appbar select option{background:#fff;color:var(--text)}.panel{background:var(--panel);display:flex;flex-direction:column;min-height:0;overflow:hidden}.left{border-right:1px solid var(--line)}.right{border-left:1px solid var(--line)}.sec-h{display:flex;align-items:center;gap:6px;height:34px;padding:0 10px 0 12px;flex:none}.sec-h.sub{height:30px;border-top:1px solid var(--line);background:var(--panel)}.sec-t{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:12.5px;color:#26303a;flex:1;min-width:0}.sec-t .ic{color:var(--accent)}.sub-t{font-size:11px;font-weight:700;color:var(--muted);padding:8px 12px 4px;letter-spacing:.5px}.tabs{display:flex;gap:18px;padding:0 12px;border-bottom:1px solid var(--line);border-top:1px solid var(--line);background:var(--panel);flex:none}.tabs button{height:34px;border:none;border-radius:0;background:none;padding:0 2px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:600}.tabs button:hover{color:var(--text);background:none}.tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.count{margin-left:6px;min-width:18px;height:16px;line-height:16px;padding:0 5px;border-radius:8px;background:#e1e5ea;color:#4a5561;font-size:10.5px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}.count:empty{display:none}.count.err{background:var(--err);color:#fff}.count.warn{background:var(--warn);color:#fff}.count.ok{background:var(--ok);color:#fff}.count.muted{background:none;font-weight:400;padding:0;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.tabpane{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--card)}.veh-body{padding:0 12px 12px}.specs{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:3px 8px;margin-top:8px;font-variant-numeric:tabular-nums}.specs .k{color:var(--muted)}.specs .v{color:#2a333c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.libtop{display:grid;grid-template-columns:1fr 92px 28px;gap:6px;padding:10px 12px 8px;border-bottom:1px solid var(--line-soft)}.search{position:relative;display:block;min-width:0}.search .ic{position:absolute;left:7px;top:6px;color:var(--faint)}.search input{width:100%;padding-left:25px}.liblist{flex:1 1 0;min-height:110px;overflow:auto}.lib-cat{padding:6px 12px 3px;color:var(--muted);font-size:11px;font-weight:700;background:#fffffff5;position:sticky;top:0;z-index:1}.lib-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:0 8px;align-items:center;padding:5px 12px;cursor:pointer;border-left:3px solid transparent}.lib-item:hover{background:var(--hover)}.lib-item.sel{background:var(--sel);border-left-color:var(--accent)}.lib-item .gl{grid-row:1 / 3;width:30px;height:30px;border-radius:6px;background:#f1f3f6;border:1px solid var(--line-soft);display:flex;align-items:center;justify-content:center}.lib-item .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.lib-item .nm i{font-style:normal;font-size:10px;color:var(--accent);background:var(--accent-soft);padding:0 4px;border-radius:3px;margin-left:4px}.lib-item .sz{grid-column:2;color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-item .wt{grid-row:1 / 3;grid-column:3;text-align:right;font-variant-numeric:tabular-nums;color:#3a444e}.glyph{color:#55606b}.glyph .f{fill:var(--gc);fill-opacity:.9}.addwrap{flex:0 1 auto;max-height:48%;overflow:auto;background:var(--panel)}.addwrap .form{padding:4px 12px 12px}.form{display:grid;grid-template-columns:76px minmax(0,1fr);gap:6px 8px;align-items:center}.form>label{color:var(--muted)}.form .span2{grid-column:1 / 3}.inrow{display:flex;gap:6px;align-items:center;min-width:0}.inrow>input,.inrow>select{flex:1;min-width:0}.inrow button{flex:none;padding:0 8px}.addrow{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;align-items:center;margin-top:4px}.addrow .qty{display:flex;align-items:center;gap:4px;color:var(--muted)}.addrow .qty input{width:52px}.addrow button.primary{height:30px;font-weight:700}.minor{display:flex;gap:2px;flex-wrap:wrap;margin-top:2px}.minor button{border-color:transparent;background:none;color:var(--muted);height:24px;padding:0 6px}.minor button:hover{color:var(--text);background:#e9edf1}.minor button.danger{color:var(--err)}.actbar{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line-soft);flex:none}.actbar button{padding:0 8px}.tablewrap{overflow:auto;flex:1;min-height:0}table.grid{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}table.grid th,table.grid td{padding:5px 8px;text-align:left;white-space:nowrap}table.grid td{border-bottom:1px solid var(--line-soft)}table.grid th{background:#f7f8fa;font-weight:600;color:var(--muted);font-size:11px;position:sticky;top:0;border-bottom:1px solid var(--line);z-index:1}table.grid .n{text-align:right}#itemTable td:first-child,#itemTable th:first-child{width:14px;padding-right:0}#itemTable td:nth-child(2){max-width:110px;overflow:hidden;text-overflow:ellipsis}#itemTable td:nth-child(3){color:var(--muted);max-width:96px;overflow:hidden;text-overflow:ellipsis}#itemTable tbody tr{cursor:pointer}#itemTable tbody tr:hover{background:var(--hover)}#itemTable tbody tr.sel{background:var(--sel);box-shadow:inset 3px 0 0 var(--accent)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%}.swatch{display:inline-block;width:10px;height:10px;border-radius:2px;border:1px solid rgba(0,0,0,.25);margin-right:6px;vertical-align:-1px}.empty{color:var(--muted);text-align:center;padding:28px 16px;line-height:1.8}#viewport{position:relative;min-width:0;min-height:0;overflow:hidden;background:#dfe4ea}#viewport canvas{display:block}.label-layer{position:absolute;top:0;left:0;pointer-events:none}.vp-tools{position:absolute;top:10px;left:10px;display:flex;gap:8px;z-index:4}.seg{display:inline-flex;background:#fffffff0;border:1px solid var(--line);border-radius:6px;padding:2px;box-shadow:var(--shadow)}.seg button{border:none;background:none;height:26px;padding:0 11px;border-radius:4px;color:#3e4852}.seg button:hover{background:#eef1f4}.seg button.on{background:var(--accent);color:#fff}.vp-btn{height:32px;background:#fffffff0;border-radius:6px;box-shadow:var(--shadow)}.statusbar{position:absolute;left:0;right:0;bottom:0;height:26px;line-height:26px;padding:0 12px;background:#fafbfce0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-top:1px solid var(--line);color:var(--muted);z-index:3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.statusbar.flash{color:var(--err);background:#fdf0f0f2;box-shadow:inset 3px 0 0 var(--err)}.statusbar.good{color:#1f6b39;background:#ecf8f0f2;box-shadow:inset 3px 0 0 var(--ok)}.axle-label,.kp-label,.cg-label{font-size:11px;line-height:1.35;background:#fffffff2;border:1px solid #c3cad2;border-left-width:4px;border-radius:3px;padding:3px 7px;white-space:nowrap;font-variant-numeric:tabular-nums;margin-top:6px;box-shadow:0 1px 3px #0000001f;color:var(--text)}.axle-label.ok{border-left-color:var(--ok)}.axle-label.warn{border-left-color:var(--warn)}.axle-label.err{border-left-color:var(--err);color:var(--err)}.axle-label span{color:var(--muted);margin-left:4px}.axle-label span.lr{margin-left:0;font-size:10.5px}.axle-label.err span.lr{color:var(--err);font-weight:700}.kp-label{border-left-color:#6d7a88;margin-top:-4px}.cg-label{border-color:#f0b27a;border-left-color:#e07000;color:#8a4300}.cg-label.err{border-color:#ecaaaa;border-left-color:var(--err);color:var(--err)}.results{flex:none;padding-bottom:10px;overflow:auto;max-height:62%}.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:0 12px}.kpi{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:6px 8px 7px;min-width:0}.kpi .l{color:var(--muted);font-size:11px}.kpi .v{font-size:17px;font-weight:700;line-height:1.25;font-variant-numeric:tabular-nums;white-space:nowrap}.kpi .v small{font-size:11px;font-weight:400;color:var(--muted);margin-left:2px}.kpi-off{grid-column:1 / -1;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;padding:6px 8px;border:1px solid #efb9b9;background:var(--err-soft);color:var(--err);border-radius:6px;font-size:12px}.kpi-off>span:first-of-type{flex:1 1 180px;color:var(--text)}.kpi-off .btns{display:flex;gap:6px}.kpi-off button{height:24px;padding:0 8px}#itemTable tr.off td{color:var(--err)}.cgfix{display:flex;flex-wrap:wrap;gap:6px}.cgfix button{height:24px;font-size:12px}.batchbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;background:var(--accent-soft);border-bottom:1px solid var(--line);font-size:12px}.batchbar select,.batchbar button{height:26px;font-size:12px}#itemTable th.ck,#itemTable td.ck{width:22px;padding:0 0 0 6px}#itemTable td.ck input,#itemTable th.ck input{margin:0;vertical-align:middle}#itemTable tr.chk td{background:var(--accent-soft)}#itemTable .no{display:inline-block;min-width:18px;height:16px;line-height:16px;padding:0 3px;margin-right:5px;border-radius:8px;color:#fff;font-size:10.5px;font-weight:600;text-align:center;font-variant-numeric:tabular-nums}.warnlist li .go{display:block;margin-top:2px;font-style:normal;font-size:11px;color:var(--accent)}.statusbar .sb-act{margin-left:10px;height:20px;padding:0 10px;font-size:12px}.lview{display:flex;gap:0;margin:6px 12px}.lview button{flex:1;height:26px;font-size:12px}.lview button.on{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.lsite{padding:0 12px 8px;font-size:12px}.lsite .sstot{margin:4px 0 6px;font-weight:600}.lsite table{width:100%;margin-bottom:8px}.lsite tr.bad td{color:var(--err)}.lsite .ssnote{margin:4px 0;color:var(--muted)}.offtag{margin-left:6px;padding:0 4px;border-radius:3px;background:var(--err);color:#fff;font-size:10.5px}.axle-extra .room{flex-basis:100%}.kpi .s{color:var(--muted);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi.err{border-color:#efb9b9;background:var(--err-soft)}.kpi.err .v{color:var(--err)}.kpi.warn{border-color:#f0d49a;background:var(--warn-soft)}.kpi.warn .v{color:#9a6400}.axles{padding:0 12px;display:flex;flex-direction:column;gap:7px}.axle .row{display:flex;align-items:baseline;gap:6px}.axle .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.axle .nm small{color:var(--muted);margin-left:3px}.axle .val{font-variant-numeric:tabular-nums;white-space:nowrap}.axle .val b{font-weight:700}.axle .val span{color:var(--muted)}.axle .pct{width:38px;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.axle.warn .pct,.axle.warn .val b{color:#9a6400}.axle.err .pct,.axle.err .val b{color:var(--err)}.meter{position:relative;height:7px;margin-top:3px;background:#e6e9ed;border-radius:4px;overflow:hidden}.meter i{position:absolute;left:0;top:0;bottom:0;background:var(--ok);border-radius:4px}.axle.warn .meter i{background:var(--warn)}.axle.err .meter i{background:var(--err)}.meter b{position:absolute;top:-2px;bottom:-2px;width:2px;background:#4a5561;opacity:.55}.axle-extra{display:flex;flex-wrap:wrap;gap:2px 14px;padding:6px 12px 0;color:var(--muted);font-variant-numeric:tabular-nums}.axle-extra b{color:var(--text);font-weight:600}.cgchart{padding:0 12px}.cgchart svg{display:block;width:100%;height:auto;overflow:visible}.cgchart .deck{fill:#c9d0d8;stroke:#8d98a4;stroke-width:1}.cgchart .cab{fill:#dfe3e8;stroke:#9aa4ae;stroke-width:1}.cgchart .wheel{fill:#3a434c}.cgchart .band{fill:#2f9a5229;stroke:#2f9a5299;stroke-dasharray:3 2}.cgchart .band.bad{fill:#d23b3b1a;stroke:#d23b3b80}.cgchart .cg{fill:#e07000}.cgchart .cg.err{fill:var(--err)}.cgchart .cgline{stroke:#e07000;stroke-width:1.4;stroke-dasharray:3 2}.cgchart .cgline.err{stroke:var(--err)}.cgchart text{font-size:10px;fill:var(--muted);font-variant-numeric:tabular-nums}.cgchart text.cgt{fill:#8a4300;font-weight:700}.cgchart text.cgt.err{fill:var(--err)}.kv{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;padding:6px 12px 0;font-variant-numeric:tabular-nums}.kv .k{color:var(--muted)}.kv .v{text-align:right}.kv .empty-note{grid-column:1 / 3;color:var(--muted)}.warnlist{list-style:none;margin:0;padding:4px 0;overflow:auto;flex:1;min-height:0}.warnlist li{display:flex;gap:8px;align-items:flex-start;padding:6px 12px;border-bottom:1px solid var(--line-soft)}.warnlist li .ic{margin-top:1px}.warnlist li.err .ic{color:var(--err)}.warnlist li.warn .ic{color:var(--warn)}.warnlist li.info .ic{color:var(--info)}.warnlist li.okline,.warnlist li.okline .ic{color:var(--ok)}.warnlist li.click{cursor:pointer}.warnlist li.click:hover{background:var(--hover)}.props{overflow:auto;flex:1;min-height:0;padding:0 0 12px}.props .ph{display:flex;align-items:center;gap:8px;padding:10px 12px 8px}.props .ph .gl{width:34px;height:34px;border-radius:6px;background:#f1f3f6;border:1px solid var(--line-soft);display:flex;align-items:center;justify-content:center;flex:none}.props .ph .t{min-width:0;flex:1}.props .ph .t b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.props .ph .t span{color:var(--muted)}.props .notes{margin:0 12px 6px;border-radius:6px;overflow:hidden;border:1px solid var(--line)}.props .notes div{display:flex;gap:6px;align-items:flex-start;padding:5px 8px;border-bottom:1px solid rgba(0,0,0,.05)}.props .notes div:last-child{border-bottom:none}.props .notes .err{background:var(--err-soft);color:brown}.props .notes .warn{background:var(--warn-soft);color:#8a5a00}.props .notes .info{background:var(--info-soft);color:#36597f}.props .notes .ic{margin-top:1px}.pgroup{padding:4px 12px 6px}.pgroup+.pgroup{border-top:1px solid var(--line-soft)}.pgroup .gt{font-size:11px;font-weight:700;color:var(--muted);padding:6px 0;letter-spacing:.5px}.btn3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.btn3 button{padding:0 4px}.pact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px 12px 0}.drive .dform{grid-template-columns:64px minmax(0,1fr)}.drive .dform input.num{width:64px;flex:none}.drive .dform .u{min-width:28px}.dlat{color:var(--muted);font-size:11px;line-height:1.5}.dlat b{color:var(--text)}.dnote{margin:8px 0 10px;padding:7px 9px;background:var(--info-soft);border-radius:6px;color:#36597f;font-size:11px;line-height:1.6}.drun{width:100%;height:32px;font-weight:700}.drun:disabled{opacity:.85;cursor:progress}.dres{padding:4px 12px 12px}.dres .gt{font-size:11px;font-weight:700;color:var(--muted);padding:8px 0 6px}.dsc{border:1px solid var(--line);border-radius:6px;margin-bottom:6px;background:var(--card);overflow:hidden}.dsc .row{display:flex;align-items:center;gap:6px;padding:7px 9px;cursor:pointer}.dsc .row:hover{background:var(--hover)}.dsc .row .sum{flex:1;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.dsc .row .play{color:var(--faint)}.dsc.ok .row>.ic:first-child,.dsc.info .row>.ic:first-child{color:var(--ok)}.dsc.ok .sum,.dsc.info .sum{color:var(--ok)}.dsc.warn{border-color:#f0d49a}.dsc.warn .row>.ic:first-child,.dsc.warn .sum{color:#9a6400}.dsc.err{border-color:#efb9b9}.dsc.err .row>.ic:first-child,.dsc.err .sum{color:var(--err)}.dsc.open{box-shadow:0 0 0 2px #1f6fd140}.dsc.wait .row{cursor:default}.dsc .detail{border-top:1px solid var(--line-soft);padding:6px 9px 8px;display:flex;flex-direction:column;gap:3px}.dsc .detail .muted{font-size:11px;margin-bottom:2px}.dsc .detail .it{display:flex;gap:8px;cursor:pointer;border-radius:3px;padding:1px 3px}.dsc .detail .it:hover{background:var(--hover)}.dsc .detail .it .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsc .detail .it.err{color:var(--err)}.dsc .detail .it.warn{color:#9a6400}.dsc .detail .it.info{color:var(--muted)}.spin{width:13px;height:13px;border:2px solid #c9d2dc;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}.dplayer{position:absolute;left:50%;bottom:38px;transform:translate(-50%);z-index:6;width:min(860px,calc(100% - 24px));display:flex;align-items:center;gap:10px;padding:7px 10px;background:#1c2530eb;color:#e3e8ee;border-radius:8px;box-shadow:0 6px 20px #0a141e4d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-variant-numeric:tabular-nums}.dplayer button{background:transparent;border-color:transparent;color:#e3e8ee;height:28px}.dplayer button:hover{background:#ffffff1a;border-color:#ffffff26}.dplayer .pb{width:30px;padding:0;flex:none}.dplayer .pexit{width:auto;padding:0 8px}.dplayer .pinfo{display:flex;flex-direction:column;line-height:1.25;min-width:78px;flex:none}.dplayer .pinfo b{color:#fff;font-size:12.5px}.dplayer .pseg{color:#f0a05a;font-size:11px;white-space:nowrap}.dplayer .ptrack{flex:1;min-width:80px;height:6px;background:#ffffff2e;border-radius:3px;position:relative;cursor:pointer}.dplayer .ptrack i{position:absolute;left:0;top:0;bottom:0;background:#4c9bf0;border-radius:3px}.dplayer .ptrack:after{content:"";position:absolute;top:-8px;right:0;bottom:-8px;left:0}.dplayer .ptime,.dplayer .pspeed,.dplayer .pacc{white-space:nowrap;color:#aeb9c5}.dplayer b{color:#fff}.dplayer .pacc b{color:#f0a05a}.dplayer .prate{display:inline-flex;background:#ffffff14;border-radius:5px;padding:1px;flex:none}.dplayer .prate button{height:24px;padding:0 6px;font-size:11px}.dplayer .prate button.on{background:#2f80e4;color:#fff}@media (max-width: 1100px){.dplayer .ptime,.dplayer .pinfo .pseg{display:none}}@media (max-width: 760px){.dplayer .pspeed,.dplayer .prate{display:none}}.force-label{font-size:12px;font-weight:700;color:#fff;background:#e0620a;padding:3px 9px;border-radius:4px;white-space:nowrap;box-shadow:0 2px 6px #0003}dialog{border:1px solid #aab3bd;padding:0;background:var(--panel);box-shadow:0 12px 40px #0f19234d;width:820px;max-height:88vh;border-radius:8px;color:var(--text)}dialog::backdrop{background:#141c2473}.dlg-title{padding:10px 14px;background:var(--appbar);color:#fff;font-weight:700;font-size:13px}.dlg-body{padding:10px 14px;overflow:auto;max-height:calc(88vh - 90px)}.dlg-foot{padding:8px 14px;border-top:1px solid var(--line);display:flex;gap:6px;justify-content:flex-end;align-items:center;background:var(--card)}.dlg-foot .grow{flex:1}.dlg-note{color:var(--muted);font-size:11px;margin:2px 0 8px}.dlg-err{color:var(--err)}fieldset{border:1px solid var(--line);border-radius:6px;margin:0 0 10px;padding:8px 10px;background:var(--card)}legend{color:#3a444e;font-weight:700;padding:0 4px}table.edit{border-collapse:collapse;width:100%}table.edit td,table.edit th{padding:2px 4px;text-align:left}table.edit th{color:var(--muted);font-weight:400}table.edit input{width:100%}.btnrow{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.small{font-size:11px;margin-top:4px}dialog.ask{width:380px;background:var(--card)}.ask-body{display:flex;gap:12px;padding:18px 18px 10px}.ask-ic{color:var(--accent);flex:none}.ask-ic.danger{color:var(--err)}.ask-title{font-weight:700;font-size:13px;margin-bottom:4px}.ask-msg{color:#3a444e;line-height:1.6;white-space:pre-line}.busy{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0f192340;display:flex;align-items:center;justify-content:center}.busy-card{background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #0f192333;padding:16px 18px;width:320px;display:flex;flex-direction:column;gap:8px}.busy-t{color:var(--muted);font-size:12px}.busy-bar{height:6px;background:var(--line-soft);border-radius:3px;overflow:hidden}.busy-bar i{display:block;height:100%;width:0;background:var(--accent)}.busy-card button{align-self:flex-end}.ask-head{padding:14px 18px 4px;font-weight:700;font-size:13px}.ask-form{display:grid;grid-template-columns:64px 1fr;gap:8px 10px;align-items:center;padding:8px 18px 6px}.ask-form label{color:var(--muted)}.ask-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px 16px}.ask-foot button{min-width:72px;height:30px}.menu{position:fixed;z-index:50;background:var(--card);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px #0f19232e;padding:4px;min-width:170px;display:flex;flex-direction:column}.menu button{justify-content:flex-start;border:none;background:none;height:30px;gap:8px;padding:0 10px}.menu button:hover{background:var(--hover)}.dunl{display:flex;gap:6px;align-items:flex-start;margin:4px 0 6px;font-size:12px}.dhint{margin:0 0 4px}.menu .ic-sp{width:15px}.menu .sep{height:1px;background:var(--line);margin:4px 2px}.menu .head{padding:4px 10px 2px;font-size:12px;font-weight:600;color:var(--muted);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu button.on{color:var(--accent, #1f6fd1)}dialog.wide{width:min(1320px,96vw)}.vl-body{display:grid;grid-template-columns:240px 1fr 460px;height:min(720px,calc(88vh - 90px))}.vl-list{border-right:1px solid var(--line);display:flex;flex-direction:column;padding:8px;gap:6px;min-height:0}.vl-items{flex:1;overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:6px}.vl-group{padding:6px 10px 3px;color:var(--muted);font-size:11px;font-weight:700}.vl-item{padding:6px 10px;cursor:pointer;border-left:3px solid transparent}.vl-item:hover{background:var(--hover)}.vl-item.sel{background:var(--sel);border-left-color:var(--accent)}.vl-empty{padding:6px 10px;font-size:11px}.vl-form{overflow:auto;padding:10px 12px}.vl-preview{border-left:1px solid var(--line);display:flex;flex-direction:column;padding:8px;gap:6px;min-height:0}.vl-canvas{flex:1;min-height:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#e4e8ed}.vl-canvas canvas{display:block}.small-seg{align-self:flex-start;box-shadow:none}.small-seg button{height:24px}.fgrid2{display:grid;grid-template-columns:120px 1fr 120px 1fr;gap:5px 8px;align-items:center}.fgrid2 label{color:var(--muted);text-align:right}.fgrid2 .span3{grid-column:span 3}.hud{position:absolute;top:10px;right:10px;z-index:4;height:32px;display:flex;align-items:center;gap:10px;padding:0 10px;background:#fffffff2;border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);font-variant-numeric:tabular-nums}.hud .it{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.hud .it b{font-weight:700}.hud .it.err b{color:var(--err)}.hud .it.warn b{color:#9a6400}.hud .it.ok b{color:var(--ok)}.hud .sep{width:1px;height:14px;background:var(--line)}@media (max-width: 1440px){#app{--lw: 276px;--rw: 316px}.appbar .tb[data-act=export]{font-size:0;gap:0;width:30px;padding:0}.docname{max-width:110px}}@media (max-width: 1100px){.appbar .tb:not(.icon-only){font-size:0;gap:0;width:30px;padding:0}.appbar .tog span{font-size:0;gap:0;padding:0 7px}.appbar .fld .unit,.docname{display:none}.tgroup{padding:0 4px}.brand{padding-right:6px}}@media (max-width: 1100px){.vl-body{grid-template-columns:190px 1fr 300px}.fgrid2{grid-template-columns:90px 1fr 90px 1fr}}@media (max-width: 860px){.vl-body{grid-template-columns:170px 1fr}.vl-preview{display:none}}@media (max-width: 760px){.appname,.appbar .fld .lbl,.hud .hide-s{display:none}}.rigbar{display:flex;align-items:center;gap:8px;padding:7px 12px;background:var(--warn-soft);border-bottom:1px solid var(--line);font-size:12px}.rigbar>span{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.rigbar button{display:inline-flex;align-items:center;gap:4px;flex:none}.rigbar .glyph{flex:none}#itemTable tr.acc td:nth-child(2){padding-left:20px;color:var(--muted)}#itemTable tr.acc td:nth-child(2):before{content:"└";color:var(--faint);margin-right:4px}.props .rig-n{min-width:34px;color:var(--muted)}.lsum{padding:8px 12px;display:flex;flex-direction:column;gap:3px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card)}.lsum>div{display:flex;align-items:center;gap:5px}table.ltable td{cursor:pointer}table.ltable tr:hover td{background:var(--hover)}table.ltable tr.bad td:first-child{color:var(--err)}table.ltable tr.lnote td{white-space:normal;color:var(--err);font-size:11px;padding-top:0;padding-left:16px}table.ltable tr.bad td{border-bottom:none}table.ltable .ic{vertical-align:-2px}.form label.chk{display:flex;align-items:center;gap:6px;color:var(--text);white-space:normal}.dbtns{display:flex;gap:6px}.dbtns .drun{flex:1;width:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dbtns .drun:not(.primary){flex:0 1 auto;font-weight:600}.adv{display:flex;flex-direction:column;gap:6px}.adv .ar{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}table.advt td{white-space:normal}table.ltable tr.lrow td{border-bottom:none}table.ltable tr.lhow td{white-space:normal;color:var(--muted);font-size:11px;padding-top:0;padding-left:16px}table.ltable tr.lhow+tr.lnote td{padding-top:0}table.ltable tr.lhow:has(+tr.lnote) td{border-bottom:none}.props .lhowp{margin:2px 12px 6px;color:var(--muted);font-size:11px;line-height:1.5}.lstep{align-items:center}.lstep b{min-width:18px;text-align:right}.lstep .muted{flex:1;min-width:0;font-size:11px}.lstep button{width:26px;height:24px;padding:0;font-weight:700;flex:none}.ask-form{grid-template-columns:minmax(64px,max-content) 1fr}dialog.ask:has(.ask-form){width:440px}dialog.ask.imp{width:min(1080px,96vw)}.imp-body{padding:4px 18px 0;display:flex;flex-direction:column;gap:8px}.imp-tip{color:var(--muted);font-size:12px;line-height:1.6}.imp-text{width:100%;height:140px;resize:vertical;font-family:Consolas,Microsoft YaHei UI,monospace;font-size:12px;padding:6px 8px;border:1px solid var(--line);border-radius:4px;box-sizing:border-box}.imp-bar{display:flex;align-items:center;gap:10px}.imp-prev{max-height:300px;overflow:auto;border:1px solid var(--line-soft)}.imp-prev tr.bad td{color:var(--err)}.imp-prev td{white-space:normal;padding:2px 4px}.imp-prev input,.imp-prev select{height:24px;font-size:12px;padding:0 4px;border:1px solid transparent;background:transparent;border-radius:3px;min-width:0}.imp-prev input:hover,.imp-prev select:hover,.imp-prev input:focus{border-color:var(--line);background:var(--card)}.imp-prev input[data-f=name]{width:130px}.imp-prev .szc{white-space:nowrap}.imp-prev input.sz{width:120px}.imp-prev input.num{width:70px;text-align:right}.imp-prev input.q{width:44px}.imp-prev input.st{width:60px}.imp-prev tr.bad input{color:var(--err)}.imp-prev tr.odd td,.imp-prev tr.odd-note td{background:var(--warn-soft)}.imp-prev tr.odd-note td{padding:0 4px 4px}.imp-prev tr.odd-note .odd-in{position:sticky;left:4px;display:inline-block;max-width:calc(min(1080px,96vw) - 90px);white-space:normal}.imp-doubt{color:var(--warn);line-height:1.6}.imp-prev button.lnk{height:20px;padding:0 6px;font-size:12px;border:1px solid var(--warn);color:var(--warn);background:var(--card);border-radius:3px;white-space:nowrap}.imp-prev button.lnk:hover{background:var(--warn);color:#fff}.steps{display:flex;align-items:center;gap:2px;background:#141b23;border:1px solid var(--appbar-line);border-radius:6px;padding:2px;flex:none}.steps button{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px 0 6px;border:none;border-radius:4px;background:transparent;color:var(--appbar-muted);position:relative;white-space:nowrap}.steps button:hover{background:var(--appbar-2);color:var(--appbar-text)}.steps button.on{background:var(--accent);color:#fff}.steps button i{font-style:normal;width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;background:#ffffff1f;color:inherit}.steps button.on i{background:#ffffff47}.steps button em{font-style:normal;font-size:10px;font-weight:700;min-width:16px;height:16px;line-height:16px;padding:0 4px;border-radius:8px;text-align:center}.steps button em:empty{display:none}.steps button em.ok{background:#2f9a52e6;color:#fff}.steps button em.warn{background:#c98200;color:#fff}.steps button em.err{background:#d23b3b;color:#fff}.setg{position:relative;overflow:visible}.appbar{overflow:visible}.popover{position:absolute;top:36px;right:0;z-index:60;width:260px;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px #0f192338;padding:8px 12px;display:flex;flex-direction:column;gap:8px}.popover .prow{display:flex;align-items:center;justify-content:space-between;gap:10px}.popover select{height:26px}.vp-tools{flex-wrap:wrap;right:10px;pointer-events:none}.vp-tools>*{pointer-events:auto}.vp-opts{display:inline-flex;align-items:center;gap:2px;background:#fffffff0;border:1px solid var(--line);border-radius:6px;padding:2px;box-shadow:var(--shadow);height:32px;box-sizing:border-box}.vtog{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none}.vtog input{display:none}.vtog span{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 9px;border-radius:4px;color:#3e4852}.vtog span:hover{background:#eef1f4}.vtog input:checked+span{background:var(--accent-soft);color:var(--accent-2);font-weight:600}.vfld{display:inline-flex;align-items:center;gap:4px;padding:0 6px;color:#3e4852;border-left:1px solid var(--line-soft);border-right:1px solid var(--line-soft)}.vfld select{height:24px}.step{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--card);border-top:1px solid var(--line)}.step-h{display:flex;align-items:baseline;gap:8px;padding:8px 12px 6px;border-bottom:1px solid var(--line-soft);flex:none}.step-h .muted{font-size:11px}.results .link{margin-left:auto}.results.folded .res-more{display:none}.results.folded{padding-bottom:8px}.right .pgroup>.gt{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.right .pgroup>.gt:after{content:"▾";position:absolute;right:12px;color:var(--faint);font-size:10px}.right .pgroup.folded>.gt:after{content:"▸"}.right .pgroup.folded>:not(.gt){display:none}.rigsum{display:flex;align-items:center;gap:8px;margin:6px 12px;padding:7px 10px;background:var(--panel);border:1px solid var(--line-soft);border-radius:6px;font-size:12px}.rigsum span{flex:1;min-width:0}.rigsum .link{flex:none}#rigSel .ph{margin-top:4px}#rigSel .empty.small{padding:14px 12px;font-size:12px}.ochk{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line-soft)}.ochk>div{flex:1;min-width:0;display:flex;flex-direction:column}.ochk span{color:var(--muted);font-size:12px}.ochk.ok>.ic{color:var(--ok)}.ochk.warn>.ic{color:var(--warn)}.ochk.err>.ic{color:var(--err)}.outbtns{display:flex;flex-direction:column;gap:6px;padding:8px 12px}.outbtns button{height:32px;justify-content:flex-start;display:inline-flex;align-items:center;gap:6px}@media (max-width: 1280px){.steps button{padding:0 8px 0 5px}}.steps button span.s{display:none}@media (max-width: 1100px){.steps button span.l{display:none}.steps button span.s{display:inline}.steps button{padding:0 5px}}@media (max-width: 620px){.steps button span.s{display:none}}.hud{top:auto;bottom:36px}.bendchart{padding:0 12px}.bendchart svg{display:block}.bendinfo{display:flex;flex-direction:column;gap:1px;font-size:11px;margin-top:2px}.popover .ptitle{font-weight:600;border-top:1px solid var(--line-soft);padding-top:6px;margin-top:2px}.popover input.num.sm{width:64px;height:24px}.popover .small{font-size:11px}.stoptag{display:inline-block;margin-left:5px;padding:0 5px;border-radius:8px;color:#fff;font-size:10px;line-height:15px;vertical-align:1px}ol.seq{margin:0;padding:6px 12px 6px 30px;font-size:12px}ol.seq li{padding:3px 0;cursor:pointer}ol.seq li:hover{color:var(--accent-2)}ol.seq li.muted{cursor:default}ol.seq .dotn{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;vertical-align:1px}.rscroll{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column}.rscroll>*{flex:none}.rscroll>.verdict{order:0}.rscroll>.results{order:1;max-height:none;overflow:visible}.rscroll>.step{order:2;flex:1 0 auto}.rscroll.sel-first>#stepLoad{order:1;border-top:none}.rscroll.sel-first>.results{order:2;border-top:1px solid var(--line);padding-top:2px}.rscroll .props{overflow:visible;flex:none}#propForm .empty.small{padding:12px;font-size:12px;text-align:left}.verdict{margin:10px 10px 8px;padding:9px 10px;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--faint);border-radius:6px;box-shadow:0 1px 2px #141e280d}.verdict.vd-err{border-left-color:var(--err)}.verdict.vd-warn{border-left-color:var(--warn)}.verdict.vd-ok{border-left-color:var(--ok)}.vd-h{display:flex;gap:8px;align-items:flex-start}.vd-h>.ic{flex:none;margin-top:1px;color:var(--faint)}.vd-err .vd-h>.ic{color:var(--err)}.vd-warn .vd-h>.ic{color:var(--warn)}.vd-ok .vd-h>.ic{color:var(--ok)}.vd-t{display:flex;flex-direction:column;min-width:0}.vd-t b{font-size:14px;line-height:1.35}.vd-err .vd-t b{color:var(--err)}.vd-t span{color:var(--muted);font-size:12px;line-height:1.5;margin-top:1px}.vd-list{list-style:none;margin:8px 0 0;padding:0;border-top:1px solid var(--line-soft)}.vd-list li{display:flex;flex-wrap:wrap;align-items:flex-start;gap:2px 7px;padding:6px 4px;border-bottom:1px solid var(--line-soft);font-size:12px;line-height:1.5}.vd-list li:last-child{border-bottom:none}.vd-list li>.ic{flex:none;margin-top:2px}.vd-list li.err>.ic{color:var(--err)}.vd-list li.warn>.ic{color:var(--warn)}.vd-list li.ok>.ic{color:var(--ok)}.vd-list li.info>.ic{color:var(--info)}.vd-list li .tx{flex:1 1 0;min-width:0}.vd-list li .ic.sel{flex:none;margin-top:2px;color:var(--faint)}.vd-list li.click{cursor:pointer;border-radius:4px}.vd-list li.click:hover{background:var(--hover)}.vd-list li.click:hover .ic.sel{color:var(--accent)}.vd-list li .acts{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px;padding:3px 0 1px 21px}.vd-list li .acts button{height:24px;padding:0 9px;font-size:12px}.vd-more,.vd-itog{margin-top:4px;font-size:12px}.vd-info{margin-top:2px}.vd-itog{color:var(--muted)}.vd-info .vd-list{margin-top:4px}.vd-next{margin-top:9px}.vd-next button{width:100%;height:30px}.cgline{padding:2px 12px;font-size:12px}.results .pgroup.rmore{padding:0;margin-top:8px;border-top:1px solid var(--line-soft)}.results .pgroup.rmore>.gt{padding:8px 12px 4px}.results .pgroup.rmore>.axle-extra{padding-top:2px}.pgroup .gt .gsum{font-weight:400;letter-spacing:0;color:var(--faint);margin-left:8px;padding-right:16px}.sub-t2{font-size:11px;color:var(--muted);margin:4px 0}table.ltable .no{display:inline-block;min-width:18px;margin-right:5px;color:var(--muted);font-variant-numeric:tabular-nums}table.ltable tr.lrow.on td,table.ltable tr.lhow td,table.ltable tr.lnote td{background:var(--sel)}.dtop{padding:4px 12px 0}.form{grid-template-columns:var(--lab, 72px) minmax(0,1fr);gap:6px 10px}.form>label,.form>.lab{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.form>input:not([type=checkbox]):not([type=color]),.form>select,.form>.fld,.form>.stepper,.form>.ro{width:100%;min-width:0}.form>input:not([type=checkbox]):not([type=color]),.form>select,.fld,.stepper{height:28px}input.num{text-align:left}td input.num,th input.num{text-align:right}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.fld{display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--r);background:#fff;min-width:0}.fld:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #1f6fd126}.fld>input,.fld>select{flex:1;min-width:0;height:26px;border:none;background:transparent;box-shadow:none!important}.fld>.u{flex:none;padding:0 8px 0 4px;color:var(--faint);font-size:11.5px;white-space:nowrap}.fld>button.fa{flex:none;height:20px;margin:0 3px 0 0;padding:0 7px;border:none;border-radius:3px;background:var(--accent-soft);color:var(--accent);font-size:11.5px}.fld>button.fa:hover{background:#d3e3f8}.form>.ro{padding:4px 0 4px 7px;line-height:1.5;color:var(--text);display:flex;align-items:baseline;gap:8px}.form>.ro>.t{flex:1;min-width:0}.form>.ro>button.link{flex:none;height:20px}.form>.ro.mut{color:var(--muted)}.gbtns{grid-column:1 / -1;display:flex;gap:6px;margin-top:2px}.gbtns>button{flex:1 1 0;min-width:0;height:28px;padding:0 6px;overflow:hidden;text-overflow:ellipsis}.gbtns+.gbtns{margin-top:0}.stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--r);background:#fff;padding-left:7px;min-width:0}.stepper>.sv{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stepper>.sv b{font-variant-numeric:tabular-nums;margin-right:3px}.stepper>button{flex:none;width:28px;height:26px;border:none;border-left:1px solid var(--line);border-radius:0;background:none;font-weight:700;padding:0}.stepper>button:last-child{border-radius:0 var(--r) var(--r) 0}.stepper>button:hover{background:var(--hover)}.form>.gap{grid-column:1 / -1;height:2px}.form>input[type=color]{width:52px;height:28px}.menu{min-width:200px}.menu button.mrow{display:flex;align-items:center;gap:8px;height:30px;padding:0 10px 0 8px;text-align:left}.menu .mi{flex:none;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.menu button.mrow.on .mi,.menu button.mrow.on{color:var(--accent)}.menu button.mrow.danger .mi{color:var(--err)}.menu .ml{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu .ml small{margin-left:6px;color:var(--faint);font-size:11.5px}.menu kbd{flex:none;font:inherit;font-size:11px;color:var(--faint);margin-left:16px}.menu .head{padding:5px 10px 3px 32px}.menu .mseg{display:flex;align-items:center;gap:8px;height:32px;padding:0 6px 0 8px}.menu .mseg .seg{display:inline-flex;margin-left:auto}.menu .mseg .seg button{height:24px;padding:0 10px;font-size:12px}button.link.danger{color:var(--err)}button.link.danger:hover{background:var(--err-soft)}.form>.addgo{height:32px;margin-top:4px}.props .form.pfoot{padding:10px 12px 0}.menu .mseg .seg{box-shadow:none;background:var(--panel)}.popover .ptitle0,.popover .ptitle{font-weight:600;font-size:12px}.popover .ptitle{border-top:1px solid var(--line-soft);padding-top:8px}.form label.chk{min-height:24px}.form label.chk.span2{grid-column:1 / -1}.form{align-items:start}.form>label,.form>.lab{line-height:28px}.form>input[type=checkbox]{margin-top:7px}.form>.ro{padding:5px 0 5px 7px;line-height:18px;min-height:28px}.form>.gbtns,.form>.addgo,.form>.gap{align-self:center}.menu .mseg .seg button{color:var(--text)}.menu .mseg .seg button.on{color:#fff}.appbar .popover .fld{display:flex;gap:0;padding:0;color:var(--text)}.appbar .popover select{background:#fff;border-color:var(--line);color:var(--text)}.ask-form.form{--lab: 72px;grid-template-columns:var(--lab) minmax(0,1fr);gap:8px 10px}.ask-form .ask-hint{margin-top:-4px;font-size:11px;color:var(--faint);padding-left:7px}dialog.ask:has(.ask-form){width:400px}.fgrid2{gap:6px 10px}.fgrid2 label{text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fgrid2>input:not([type=checkbox]):not([type=color]),.fgrid2>.fld{width:100%;height:28px}.fgrid2>input[type=color]{height:28px}.batchbar{flex-direction:column;align-items:stretch}.batchbar .bb-h{display:flex;align-items:center;justify-content:space-between}.batchbar .bb-a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 64px;gap:6px}.batchbar .bb-a select,.batchbar .bb-a button{height:28px;width:100%}.dlg-note2{color:var(--info);font-size:12px;margin-left:6px;min-width:0}.login-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:16px}.login-card{width:380px;max-width:100%;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 30px #0f19231f;padding:22px 24px 18px;display:flex;flex-direction:column;gap:12px}.lg-brand{display:flex;align-items:center;gap:8px;color:var(--accent)}.lg-brand b{font-size:16px;color:var(--text)}.lg-title{font-size:15px;font-weight:700}.lg-msg{padding:7px 10px;border-radius:6px;background:var(--err-soft);color:var(--err);font-size:12px}.lg-msg.ok{background:var(--ok-soft);color:var(--ok)}.lg-invite{padding:7px 10px;border-radius:6px;background:var(--accent-soft);color:var(--accent-2);font-size:12px}.lg-form .lg-extra{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px}.lg-form .lg-extra:empty{display:none}.lg-st{font-size:12px;font-weight:600;color:var(--muted);margin-top:4px}.lg-go{height:34px!important;margin-top:4px}.lg-dev{font-size:12px;color:var(--warn);background:var(--warn-soft);padding:6px 10px;border-radius:6px}.lg-foot{font-size:11.5px;color:var(--muted);border-top:1px solid var(--line-soft);padding-top:10px}.lg-seats{display:flex;flex-direction:column;gap:6px}.lg-seat{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;cursor:pointer}.lg-seat:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.lg-seat span{display:flex;flex-direction:column}.lg-seat small{color:var(--muted);font-size:11.5px}.lg-btns{margin-top:4px}.appbar button.tb.acct{gap:6px;max-width:160px}.appbar button.tb.acct span{overflow:hidden;text-overflow:ellipsis}.acct-pill{font-size:11.5px;padding:2px 8px;border-radius:10px;white-space:nowrap;background:#c9820040;color:#ffd27a}.acct-pill.bad{background:#d23b3b4d;color:#ffb4b4}dialog.cdocs,dialog.cmembers{width:min(860px,94vw);background:var(--card)}.cd-top{padding:10px 14px 0}.cd-top .search{max-width:300px}.cd-body{padding:10px 14px;max-height:min(520px,62vh);overflow:auto}.cd-table td,.cm-table td{vertical-align:top;white-space:normal}.cd-table tbody tr[data-id]{cursor:pointer}.cd-table tbody tr[data-id]:hover td{background:var(--hover)}.cd-table tr.on td{background:var(--sel)}.cm-table tr.off td{color:var(--faint)}.cm-s{display:flex;align-items:center;gap:6px;color:var(--muted)}.cm-s.on{color:var(--ok)}.cm-acts{white-space:nowrap}.cm-inv{padding:0 14px 10px;display:flex;flex-direction:column;gap:6px}.login-wrap{align-items:flex-start;justify-content:flex-start;overflow:auto}.login-card{margin:auto}.login-wrap.connecting{align-items:center;justify-content:center}.lg-connecting{color:var(--muted);font-size:13px}
