:root{--brand: #f26a21;--brand-d: #d9560f;--brand-l: #fff1e8;--ink: #1f2937;--ink2: #4b5563;--mute: #8a94a3;--line: #e3e7ee;--bg: #eef1f5;--card: #fff;--ok: #16a34a;--ok-l: #e7f7ec;--warn: #d97706;--warn-l: #fef4e2;--bad: #dc2626;--bad-l: #fdecec;--info: #2563eb;--info-l: #e8f0fe;--r: 6px;font-family:Segoe UI,system-ui,-apple-system,Roboto,Arial,sans-serif;font-size:13px;color:var(--ink)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg)}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}.mono{font-variant-numeric:tabular-nums;letter-spacing:.01em}.muted{color:var(--mute)}.small{font-size:11.5px}.center{text-align:center}.spacer{flex:1}.b{font-weight:600}.err{background:var(--bad-l);color:var(--bad);padding:7px 10px;border-radius:var(--r);font-size:12.5px}.center-screen{display:grid;place-items:center;height:100%;color:var(--mute)}.btn{border:1px solid var(--line);background:#fff;color:var(--ink);padding:6px 12px;border-radius:var(--r);font-weight:500;white-space:nowrap}.btn:hover{border-color:#c9cfd8;background:#f8f9fb}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-d)}.btn.ghost{background:transparent;border-color:transparent;color:var(--ink2)}.btn.ghost:hover{background:#eef0f4}.btn.danger{color:var(--bad)}.btn.sm{padding:3px 8px;font-size:12px}.btn.block{width:100%;padding:9px}.btn:disabled{opacity:.55;cursor:default}.icon-btn{border:0;background:transparent;color:var(--mute);padding:0 4px;border-radius:4px;line-height:1.4}.icon-btn:hover{background:#0000000f;color:var(--ink)}input:not([type=checkbox]),select,textarea{border:1px solid #d5dae2;border-radius:5px;padding:5px 8px;background:#fff;outline:none;min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px #f26a2126}input:disabled{background:#f3f4f6;color:var(--mute)}.login-wrap{min-height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#fff,#fff1e8 55%,#fde1cf)}.login-card{background:#fff;width:360px;padding:32px 30px;border-radius:12px;box-shadow:0 10px 40px #00000014;display:flex;flex-direction:column;gap:12px}.login-card img{width:220px;align-self:center;margin-bottom:4px}.login-card h2{margin:6px 0 0;font-size:18px;text-align:center}.login-card p{margin:0 0 6px;text-align:center}.login-card label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink2);font-weight:500}.login-card input{padding:8px 10px}.app{display:flex;flex-direction:column;height:100%}.topbar{height:46px;flex:none;display:flex;align-items:center;gap:10px;padding:0 12px;background:#fff;border-bottom:1px solid var(--line)}.logo{height:30px}.erp-tag{font-size:10px;font-weight:700;letter-spacing:1px;color:#fff;background:#6d6e71;padding:2px 6px;border-radius:4px;margin-right:10px}.nav{display:flex;gap:2px}.nav button{border:0;background:transparent;padding:7px 12px;border-radius:6px;color:var(--ink2);font-weight:500}.nav button:hover{background:#f3f4f6}.nav button.active{background:var(--brand-l);color:var(--brand-d)}.nav .ico{opacity:.8;margin-right:2px}.user-chip{position:relative;display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:6px}.user-chip:hover{background:#f3f4f6}.avatar{width:28px;height:28px;border-radius:50%;background:var(--brand);color:#fff;display:inline-grid;place-items:center;font-size:11px;font-weight:700}.avatar.sm{width:22px;height:22px;font-size:9.5px;margin-right:6px;vertical-align:middle}.uname{display:flex;flex-direction:column;line-height:1.15;font-weight:600}.uname small{color:var(--mute);font-weight:400;font-size:11px}.menu{position:absolute;right:0;top:100%;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #0000001a;min-width:210px;padding:6px;z-index:50}.menu-email{padding:6px 8px;color:var(--mute);font-size:12px;border-bottom:1px solid var(--line);margin-bottom:4px}.menu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:7px 8px;border-radius:5px}.menu button:hover{background:#f3f4f6}.menu button.active{background:var(--brand-l);color:var(--brand-d)}.main{flex:1;min-height:0;display:flex;flex-direction:column}.toolbar{flex:none;display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border-bottom:1px solid var(--line);flex-wrap:wrap}.toolbar select{padding:5px 6px}.search{position:relative}.search input{width:300px;padding-left:28px;background:#f6f7f9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%238a94a3' stroke-width='2'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath d='M9.5 9.5 13 13'/%3E%3C/svg%3E") 9px center no-repeat}.search .clear{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--mute);font-size:16px}.seg{display:inline-flex;border:1px solid #d5dae2;border-radius:6px;overflow:hidden}.seg button{border:0;background:#fff;padding:5px 9px;color:var(--ink2);font-size:12px;cursor:pointer}.seg button+button{border-left:1px solid #d5dae2}.seg button.on{background:#6d6e71;color:#fff}.kpis{display:flex;gap:6px}.kpis span{background:#f3f4f6;border-radius:5px;padding:4px 8px;color:var(--ink2);font-size:12px}.kpis b{color:var(--ink)}.kpis .warn{background:var(--warn-l)}.kpis .warn b{color:var(--warn)}.kpis .bad{background:var(--bad-l)}.kpis .bad b{color:var(--bad)}.page-title{margin:0 4px 0 0;padding-right:10px;border-right:1px solid var(--line);font-size:16px;font-weight:600;line-height:24px;color:var(--ink);white-space:nowrap;flex:none}.toolbar>.page-title:only-child{border-right:0;padding-right:0}@media (max-width: 1100px){.page-title{font-size:14px;padding-right:7px}}.board-page{flex:1;min-height:0;display:flex;flex-direction:column}.board{flex:1;min-height:0;display:flex;gap:6px;padding:6px;overflow-x:auto}.col{flex:1 1 0;min-width:196px;display:flex;flex-direction:column;background:#e4e8ee;border-radius:7px;border-top:3px solid var(--c);min-height:0;transition:background .15s}.col.over{background:#fbe3d4;outline:2px dashed var(--brand);outline-offset:-2px}.col.collapsed{flex:0 0 34px;min-width:34px}.col.collapsed .col-head{writing-mode:vertical-rl;flex-direction:row;height:100%;padding:8px 0;cursor:pointer}.col.collapsed .col-head .icon-btn{order:-1}.col-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;font-weight:600;font-size:12.5px;-webkit-user-select:none;user-select:none}.col-head .dot{width:8px;height:8px;border-radius:50%;background:var(--c);flex:none}.col-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-head .count{background:#fff;color:var(--ink2);border-radius:9px;padding:0 7px;font-size:11px}.col-val{margin-left:auto;color:var(--ink2);font-weight:500;font-size:11px}.col-head .icon-btn{margin-left:auto}.col-val+.icon-btn{margin-left:0}.resp-name{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:600;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resp-name i{font-style:normal;opacity:.55;font-size:9.5px}.col-head .resp-name.col-resp{flex:0 0 100%;margin-top:-2px;padding-left:14px}.col.collapsed .col-head .resp-name{display:none}.band-row .band .resp-name{margin-left:6px;font-weight:500;opacity:.85}.resp-help{margin-bottom:10px}.resp-grid{display:flex;flex-direction:column;gap:8px}.resp-row{display:grid;grid-template-columns:1fr 230px;align-items:center;gap:10px}.resp-row .resp-h{display:flex;align-items:center;gap:6px;font-weight:600;font-size:12.5px}.resp-row .resp-h .dot{width:8px;height:8px;border-radius:50%;background:var(--c);flex:none}.col-body{flex:1;overflow-y:auto;padding:0 5px 6px;display:flex;flex-direction:column;gap:4px}.col-body::-webkit-scrollbar,.board::-webkit-scrollbar{width:6px;height:8px}.col-body::-webkit-scrollbar-thumb,.board::-webkit-scrollbar-thumb{background:#c3cad4;border-radius:4px}.empty{color:var(--mute);font-size:11.5px;text-align:center;padding:14px 0;border:1px dashed #c6cdd6;border-radius:6px}.add-card{border:1px dashed #b9c1cc;background:transparent;color:var(--ink2);border-radius:6px;padding:5px;font-size:12px}.add-card:hover{background:#fff;color:var(--brand);border-color:var(--brand)}.card{flex:none;background:var(--card);border-radius:5px;padding:5px 7px;border-left:3px solid transparent;box-shadow:0 1px 1px #10182812;cursor:pointer;font-size:12px;line-height:1.3}.card:hover{box-shadow:0 2px 6px #10182824}.card .card-del{display:none;flex:none;width:20px;height:20px;border:0;background:transparent;padding:0;cursor:pointer;border-radius:4px;color:var(--mute);place-items:center}.card:hover .card-del{display:grid}.card .card-del:hover{background:var(--bad-l);color:var(--bad)}.card:active{cursor:grabbing}.card.pri-high{border-left-color:var(--warn)}.card.pri-urgent{border-left-color:var(--bad)}.card.pri-low{border-left-color:#cbd5e1}.card.overdue{background:#fff8f8}.card.in-warr{background:#fffbe6}.card.in-warr.overdue{background:#fff6e0}.card .row{display:flex;align-items:center;gap:5px;min-width:0}.card .no{font-variant-numeric:tabular-nums;font-size:11px;color:var(--ink2);font-weight:600;flex:none}.card .cust{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.card .age{margin-left:auto;color:var(--mute);font-size:10.5px}.card .av{flex:none;width:18px;height:18px;border-radius:50%;background:#6d6e71;color:#fff;font-size:8.5px;font-weight:700;display:grid;place-items:center}.card .pri{font-size:9.5px;text-transform:uppercase;font-weight:700;padding:0 4px;border-radius:3px;letter-spacing:.3px}.card .pri.high{background:var(--warn-l);color:var(--warn)}.card .pri.urgent{background:var(--bad-l);color:var(--bad)}.card .pri.low{background:#f1f5f9;color:var(--mute)}.card .subj{color:var(--ink2);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card .bottom{margin-top:2px}.card .bar{flex:1;height:4px;background:#eceff3;border-radius:3px;overflow:hidden;min-width:24px}.card .bar i{display:block;height:100%;background:var(--warn)}.card .bar i.ok{background:var(--ok)}.card .mp{font-size:10.5px;color:var(--warn);font-weight:600;flex:none}.card .mp.ok{color:var(--ok)}.card .val{font-size:10.5px;color:var(--ink);font-weight:600;flex:none}.card .due{font-size:10.5px;color:var(--mute);flex:none}.card .due.bad{color:var(--bad);font-weight:600}.card .parts{display:flex;flex-wrap:wrap;gap:3px;margin:3px 0 1px}.pn{font-variant-numeric:tabular-nums;font-size:10.5px;padding:0 4px;border-radius:3px;background:#f1f3f6;color:var(--ink2);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pn.m{background:var(--ok-l);color:#166534}.pn.u{background:var(--warn-l);color:#92400e}.pn.more{background:transparent}.d-mini .col-body{gap:2px}.d-mini .card{padding:3px 6px}.d-mini .card .no{font-size:10.5px}.card .no.qno{color:#7c3aed;background:#f3e8ff;border-radius:4px;padding:0 5px}.d-mini .card .cust{flex:1;font-weight:500}.d-mini .card .av{width:16px;height:16px;font-size:8px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a6b;display:grid;place-items:center;z-index:100;padding:16px;overflow:auto}.overlay.top{z-index:120}.modal{background:#fff;border-radius:10px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;max-height:calc(100vh - 32px);width:100%;min-height:0}.modal.small{max-width:400px}.modal.medium{max-width:760px}.modal.large{max-width:1500px;height:calc(100vh - 32px)}.modal-head{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);border-top:4px solid var(--c, var(--brand));border-radius:10px 10px 0 0;flex-wrap:wrap;row-gap:6px}.modal-head h3{margin:0;font-size:15px;min-width:0}.modal-head .sub{color:var(--ink2);font-weight:500}.modal-head .x{border:0;background:transparent;font-size:22px;line-height:1;color:var(--mute);padding:0 4px}.modal-head .x:hover{color:var(--ink)}.modal-body{padding:14px;overflow:auto;flex:1 1 auto;min-height:0}.modal-foot{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line);flex-wrap:wrap;row-gap:6px}.stage-sel{font-weight:600;border-color:var(--c, #d5dae2)}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 12px}.form-grid.one{grid-template-columns:1fr}.form-grid.tight{gap:7px}.form-grid label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--ink2);font-weight:500;min-width:0}.form-grid .span2{grid-column:span 2}.form-grid .span3{grid-column:span 3}.form-grid .span4{grid-column:span 4}.form-grid .two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.enq-body{flex:1;min-height:0;display:flex}.enq-side{width:320px;flex:none;border-right:1px solid var(--line);padding:12px;overflow-y:auto;background:#fafbfc}.enq-main{flex:1;min-width:0;display:flex;flex-direction:column}@media (max-width: 1400px){.enq-side{width:272px}}.tabs{display:flex;align-items:center;gap:4px;padding:6px 10px;border-bottom:1px solid var(--line);flex-wrap:wrap;row-gap:5px}.tabs>button:not(.btn){border:0;background:transparent;padding:6px 10px;border-radius:6px;font-weight:600;color:var(--ink2)}.tabs>button.on{background:var(--brand-l);color:var(--brand-d)}.tabs .count{background:#00000012;border-radius:8px;padding:0 6px;font-size:11px;margin-left:3px}.map-sum{font-size:12px;background:var(--warn-l);color:var(--warn);padding:3px 8px;border-radius:5px;font-weight:600}.map-sum.ok{background:var(--ok-l);color:var(--ok)}.map-sum+.map-sum{background:#f3f4f6;color:var(--ink)}.items-wrap{flex:1;overflow:auto;padding:0 0 10px}.tbl tfoot tr.add-row td{padding:6px 8px;background:#fff;border-top:1px solid var(--line)}.tbl tfoot tr.add-row .small{margin-left:8px}.items-help{padding:8px 12px}.dup-warn{display:flex;gap:9px;margin:8px 10px 10px;padding:9px 11px;background:var(--warn-l);border:1px solid #fcd34d;border-left:4px solid var(--warn);border-radius:7px;font-size:12px;color:#7c2d12}.dup-warn .dup-ic{font-size:15px;line-height:1.1}.dup-warn .dup-body{flex:1;min-width:0}.dup-warn .dup-head{font-weight:700;margin-bottom:5px}.dup-line{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:3px 0}.dup-line+.dup-line{border-top:1px dashed #fcd34d}.dup-pn{font-weight:600;margin-right:3px}.dup-sub{color:#92400e}.dup-tag{border:1px solid var(--brand);background:#fff;color:var(--brand-d);border-radius:5px;padding:1px 7px;font-size:11px;font-weight:600;cursor:pointer}.dup-tag:hover{background:var(--brand-l)}.dup-tag.qt{border-color:#0f766e;color:#0f766e}.dup-tag.qt:hover{background:#ccfbf1}.dup-more{color:#92400e;font-size:11px}.dup-flag{color:var(--warn);font-weight:700;margin-left:3px;cursor:help}tr.dup-row>td{background:#fffbeb}.tbl{width:100%;border-collapse:collapse}.tbl th{position:sticky;top:0;background:#f6f7f9;text-align:left;font-size:11px;font-weight:600;color:var(--ink2);padding:6px;border-bottom:1px solid var(--line);white-space:nowrap;z-index:1}.tbl th small{font-weight:400;color:var(--mute)}.tbl td{padding:4px 6px;border-bottom:1px solid #eef0f3;vertical-align:top}.tbl.hover tbody tr:hover{background:#fafbfc}.tbl .num{text-align:right;white-space:nowrap}.tbl tr.dim{opacity:.5}.tbl .actions{white-space:nowrap;text-align:right}.items-tbl td{padding:3px 4px}.items-tbl td input,.items-tbl td select{width:100%;padding:4px 6px}.items-tbl .num{padding-top:8px;font-weight:600}.c-n{width:28px;color:var(--mute);text-align:center;padding-top:8px!important}.items-tbl{table-layout:fixed}.cw-grip{position:fixed;width:9px;z-index:140;cursor:col-resize}.cw-grip:after{content:"";position:absolute;left:4px;top:0;bottom:0;width:2px;background:var(--brand);opacity:0;transition:opacity .12s}.cw-grip:hover:after{opacity:.5}body.cw-sizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.cw-sizing .cw-grip:after{opacity:.9}.cw-pill{position:fixed;z-index:150;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:#111827;color:#fff;border-radius:999px;padding:6px 8px 6px 14px;font-size:12px;box-shadow:0 8px 24px #0f172a4d}.cw-pill .btn{background:#fff;color:#111827;border-color:#fff}.cw-pill .btn.ghost{background:transparent;color:#e5e7eb;border-color:#4b5563}.cw-pill .btn:disabled{opacity:.6}.cw-x{background:none;border:0;color:#9ca3af;cursor:pointer;font-size:13px;padding:0 6px}.cw-x:hover{color:#fff}.c-pn{width:16%}.c-desc{width:17%}.c-qty{width:56px}.c-uom{width:70px}.c-make{width:96px}.c-make input{width:100%}.c-moq{width:66px;text-align:right!important}.items-tbl td.qq-up{color:var(--brand);font-weight:700}.c-map{width:17%}.c-st{width:76px}.c-src{width:100px}.c-cost{width:70px;text-align:right!important}.c-rate{width:96px}.c-amt{width:80px}.c-rem{width:9%}.c-x{width:26px;padding-top:7px!important}.c-pe{width:64px;text-align:center!important}.items-tbl td.c-pe{padding-top:7px}.items-tbl td.c-pe .icon-btn{font-size:14px}.items-tbl td.c-pe .tag{font-size:10px}.st{display:inline-block;font-size:10.5px;font-weight:600;padding:2px 6px;border-radius:4px;margin-top:4px;white-space:nowrap}.st-exact{background:var(--ok-l);color:var(--ok)}.st-mapped{background:var(--info-l);color:var(--info)}.st-unmapped{background:var(--warn-l);color:var(--warn)}.st-notfound{background:var(--bad-l);color:var(--bad)}.map-input{font-variant-numeric:tabular-nums}.map-input.st-unmapped{background:#fffaf1;border-color:#f3d9a6}.map-input.st-notfound{background:#fff6f6;border-color:#f3c0c0;color:var(--bad)}.map-input.st-exact,.map-input.st-mapped{background:#f6fdf8;border-color:#bfe5cb;font-weight:600}.map-desc{font-size:10.5px;color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1px 2px 0}.picker{position:relative}.picker-pop{position:fixed;z-index:200;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 32px #0000002e;display:flex;flex-direction:column;max-height:360px}.pp-head{padding:6px 10px;font-size:11.5px;color:var(--mute);border-bottom:1px solid var(--line)}.pp-list{overflow-y:auto;flex:1}.pp-item{padding:6px 10px;cursor:pointer;border-bottom:1px solid #f3f4f6}.pp-item.hi{background:var(--brand-l)}.pp-l1{display:flex;gap:6px;align-items:center;font-variant-numeric:tabular-nums}.pp-rate{margin-left:auto;font-family:Segoe UI,sans-serif;font-weight:600}.pp-l2{font-size:11.5px;color:var(--ink2)}.pp-l2 .brand{font-weight:600;color:var(--ink)}.pp-none{padding:12px;color:var(--mute);text-align:center}.pp-add{position:sticky;bottom:0;background:#fafbfc;border-top:1px solid var(--line);border-bottom:none}.pp-add .pp-l1 b{color:var(--brand-d)}.pp-actions{display:flex;gap:4px;padding:6px;border-top:1px solid var(--line);background:#fafbfc;border-radius:0 0 8px 8px}.pp-actions button{border:1px solid var(--line);background:#fff;border-radius:5px;padding:4px 8px;font-size:11.5px}.pp-actions button:hover{border-color:var(--brand);color:var(--brand-d)}.tag{font-family:Segoe UI,sans-serif;font-size:10px;font-weight:600;padding:0 5px;border-radius:3px}.tag.ok{background:var(--ok-l);color:var(--ok)}.tag.info{background:var(--info-l);color:var(--info)}.activity{padding:10px 14px;overflow-y:auto;flex:1}.comment-box{display:flex;gap:6px;margin-bottom:10px}.comment-box input{flex:1}.act{padding:5px 0;border-bottom:1px solid #f1f3f6;font-size:12.5px}.act .when{color:var(--mute);font-size:11px;display:inline-block;width:120px}.paste-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.paste-grid textarea{width:100%;height:300px;font-variant-numeric:tabular-nums;font-size:12px;resize:vertical}.paste-grid p{margin:0 0 6px}.paste-grid code{display:block;background:#f3f4f6;padding:3px 6px;border-radius:4px;margin-top:4px}.paste-prev{max-height:340px;overflow:auto}.page{flex:1;min-height:0;display:flex;flex-direction:column}.table-card{margin:10px 12px;background:#fff;border-radius:8px;border:1px solid var(--line);overflow:auto;flex:1}.table-card.narrow{max-width:900px;flex:0 1 auto;min-height:0}.aliases{display:flex;flex-wrap:wrap;gap:3px}.toasts{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;gap:6px;z-index:500}.toast{background:#1f2937;color:#fff;padding:9px 14px;border-radius:7px;box-shadow:0 6px 20px #0003;font-size:12.5px;animation:tin .2s ease}.toast.bad{background:var(--bad)}@keyframes tin{0%{transform:translateY(8px);opacity:0}}@media (max-width: 900px){.enq-body{flex-direction:column;overflow-y:auto}.enq-side{width:auto;border-right:0;border-bottom:1px solid var(--line)}.search input{width:200px}.kpis{display:none}}.toolbar .tabs.flat{border:0;padding:0}.toolbar.sub{background:#fafbfc;padding:6px 12px}.toolbar.sub .search input{width:380px}.pager{display:inline-flex;align-items:center;gap:2px;font-size:12px}.legend{display:inline-flex;align-items:center;gap:4px}.src{display:inline-block;font-size:10px;font-weight:700;padding:1px 6px;border-radius:3px;white-space:nowrap;font-family:Segoe UI,sans-serif}.src-i2o{background:#e7f0ff;color:#1d4ed8}.src-mq{background:#e8f7ee;color:#15803d}.src-lp{background:#fdf0e6;color:#c2410c}.cost-tbl{font-size:12px}.cost-tbl td{padding:3px 6px;white-space:nowrap;vertical-align:middle}.cost-tbl th{top:0}.cost-tbl tr.grp th{top:0;text-align:center;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;padding:3px;border-bottom:0}.cost-tbl tr+tr th{top:21px}.cost-tbl .g-lp{background:#fdf0e6;color:#c2410c}.cost-tbl .g-mq{background:#e8f7ee;color:#15803d}.cost-tbl .g-i2o{background:#e7f0ff;color:#1d4ed8}.cost-tbl .g-best{background:var(--brand-l);color:var(--brand-d)}.cost-tbl .g-sale{background:#f3eaff;color:#6d28d9}.cost-tbl td.calc{background:#f7f8fa;color:var(--ink2)}.cost-tbl td.desc{max-width:240px;overflow:hidden;text-overflow:ellipsis}.cost-tbl td.desc.sm{max-width:140px}.cost-tbl td.auto{color:var(--mute)}.cost-tbl td.ovr{color:var(--brand-d);font-weight:600}.cost-tbl td.expired{color:var(--bad);text-decoration:line-through}.cost-tbl .stick{position:sticky;left:0;background:#fff;z-index:2}.cost-tbl th.stick{z-index:3;background:#f6f7f9}.cost-tbl tbody tr:hover .stick{background:#fafbfc}.cost-tbl td.actions{position:sticky;right:0;z-index:2;background:#fff;box-shadow:-1px 0 0 var(--line)}.cost-tbl td.sr input{margin:0 5px 0 0;vertical-align:middle;accent-color:var(--brand);cursor:pointer}.bulk-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;margin:0 0 6px;background:#fff4ec;border:1px solid #fbd5bf;border-radius:8px;font-size:13px}.cost-tbl .star{color:var(--brand);margin-right:3px}.cost-tbl .qn{margin-left:4px;font-size:10px;color:var(--mute);font-weight:400}.cost-tbl .al{font-size:10px;color:var(--info);font-weight:400;max-width:180px;overflow:hidden;text-overflow:ellipsis}.empty-cell{padding:30px!important}.grid-tbl td{padding:1px 2px}.grid-tbl td input{width:100%;border-color:transparent;background:transparent;padding:4px 5px;font-size:12px}.grid-tbl td input:hover{border-color:var(--line)}.grid-tbl td input:focus{border-color:var(--brand);background:#fff}.grid-tbl td input:disabled{color:var(--ink)}.grid-tbl td.muted{padding:5px 6px}input.num{text-align:right}.data-tab{display:flex;gap:0;flex:1;min-height:0;align-items:flex-start}.data-tab .table-card{flex:none;max-height:calc(100% - 20px)}.pg-col{display:flex;flex-direction:column;flex:none;height:calc(100% - 20px);overflow:hidden}.data-tab .pg-col .pg-card{flex:1 1 auto;min-height:140px;max-height:none}.pg-card{width:700px}.pg-card td.mg-cell{min-width:150px}.pg-card td.mg-cell .sel{width:100%}.lists-card{flex:1!important;margin-left:0!important}.card-head{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:4;flex-wrap:wrap}.pad{padding:10px}.lists{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:10px}.lists label{display:flex;flex-direction:column;gap:4px;font-size:12px}.lists textarea{height:300px;font-size:12px;resize:vertical}.modal.wide{max-width:1100px}.form-grid.six{grid-template-columns:repeat(6,1fr)}.form-grid .span6{grid-column:span 6}.fs{border:1px solid var(--line);border-radius:8px;padding:8px 12px 12px;margin:12px 0 0}.fs legend{font-size:11.5px;font-weight:700;color:var(--ink2);padding:0 4px}.lbl-row{display:flex;justify-content:space-between;align-items:center}.auto-tg{display:inline-flex;align-items:center;gap:3px;font-weight:400;color:var(--mute);font-size:10.5px}.auto-tg input{margin:0}.calc-cell{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--ink2);font-weight:500}.calc-cell b{background:#f3f4f6;border-radius:var(--r);padding:6px 8px;text-align:right;font-weight:600;color:var(--ink);min-height:30px}.calc-row{display:flex;gap:10px}.calc-row>.calc-cell{flex:1 1 0;min-width:0}.calc-cur{font-weight:500;font-style:normal;color:var(--mute);font-size:10.5px;text-align:right}.best-bar{display:flex;align-items:center;gap:12px;margin:12px 0 4px;padding:8px 12px;background:var(--brand-l);border-radius:8px;font-size:13px;flex-wrap:wrap}.drop{border:2px dashed #d5dae2;border-radius:10px;padding:22px;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:4px;align-items:center}.drop:hover,.drop.has{border-color:var(--brand);background:var(--brand-l)}.drop-ico{font-size:28px}.sum-tbl{margin:12px 0 8px}.sum-tbl td:first-child{width:150px;color:var(--ink2);font-weight:600}.modes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.modes label{display:flex;gap:8px;border:1px solid var(--line);border-radius:8px;padding:10px;cursor:pointer;align-items:flex-start}.modes label.on{border-color:var(--brand);background:var(--brand-l)}.modes label.disabled{opacity:.55;cursor:default}.pp-cols{float:right;font-size:10.5px}.items-tbl td.cost{padding-top:8px;font-weight:400;color:var(--ink2)}.items-tbl td.cost.b{font-weight:600;color:var(--ink)}.items-tbl td.c-src{padding-top:7px}.margin{font-size:10.5px;color:var(--ok);text-align:right;padding:1px 2px 0}.margin.neg{color:var(--bad)}.sel{position:relative;display:inline-block;min-width:0}.form-grid .sel,.items-tbl .sel,.modal .sel{display:block;width:100%}.sel input{width:100%;padding-right:22px;cursor:pointer;text-overflow:ellipsis}.sel.open input{cursor:text;border-color:var(--brand);box-shadow:0 0 0 3px #f26a2126}.sel.disabled input{cursor:default}.sel-caret{position:absolute;right:7px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--mute);cursor:pointer;-webkit-user-select:none;user-select:none}.sel.open .sel-caret{transform:translateY(-50%) rotate(180deg);color:var(--brand)}.sel-pop{position:fixed;z-index:600;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #0f172a2e;overflow-y:auto;padding:4px;font-size:12.5px}.sel-opt{padding:6px 9px;border-radius:5px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sel-opt.hi{background:#f3f4f6}.sel-opt.cur{color:var(--brand);font-weight:600}.sel-opt.cur:after{content:" ✓"}.sel-opt mark{background:#ffe2cf;color:inherit;padding:0;border-radius:2px}.sel-none{padding:8px 9px;color:var(--mute);font-size:12px}.sel.stage-sel input{font-weight:600;border-color:var(--c, #d5dae2)}.sel.stage-sel{width:170px}.ofbar{flex-wrap:nowrap;overflow:hidden}.ofbar>:not(.spacer){flex:none;max-width:100%}.ofbar.ofbar-wrap{flex-wrap:wrap;overflow:visible;row-gap:5px}.ofbar-more{font-weight:600}.ofbar-more.on{background:var(--brand-l);color:var(--brand-d);border-color:var(--brand)}.ofbar-pop{display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:6px}.ofbar-pop>.btn,.ofbar-pop>button{width:100%;text-align:left;justify-content:flex-start}.ofbar-pop>label{padding:3px 4px;justify-content:space-between}.ofbar-pop>.map-sum{text-align:center}.items-tbl td .sel input{padding:4px 20px 4px 6px}.toolbar .sel input{padding:5px 22px 5px 8px}.w-130{width:130px}.w-140{width:140px}.w-160{width:160px}.w-190{width:190px}.tgl{display:inline-flex;align-items:center;gap:7px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:12px;color:var(--ink2);font-weight:500}.form-grid label.tgl,.form-grid .tgl{flex-direction:row}.tgl input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.tgl-track{position:relative;width:34px;height:19px;border-radius:19px;background:#cfd5dd;transition:background .15s;flex:none}.tgl-knob{position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .15s}.tgl input:checked+.tgl-track{background:var(--brand)}.tgl input:checked+.tgl-track .tgl-knob{transform:translate(15px)}.tgl input:focus-visible+.tgl-track{box-shadow:0 0 0 3px #f26a2140}.tgl.sm{font-size:10.5px;gap:5px}.tgl.sm .tgl-track{width:26px;height:15px}.tgl.sm .tgl-knob{width:11px;height:11px}.tgl.sm input:checked+.tgl-track .tgl-knob{transform:translate(11px)}.tgl.disabled{opacity:.5;cursor:default}.form-grid .fld{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--ink2);font-weight:500;min-width:0}.modes>div{display:flex;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px;cursor:pointer;align-items:flex-start}.modes>div.on{border-color:var(--brand);background:var(--brand-l)}.modes>div.disabled{opacity:.55;cursor:default}.overlay.confirm-layer{z-index:550}.overlay.tsi-layer{z-index:300}.confirm-box{max-width:420px}.confirm-body{display:flex;gap:14px;padding:20px 20px 8px;align-items:flex-start}.confirm-body h3{margin:0 0 4px;font-size:15px}.confirm-body p{margin:0;color:var(--ink2);font-size:13px;line-height:1.45}.confirm-ico{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:17px;background:var(--brand-l);color:var(--brand)}.confirm-box.danger .confirm-ico{background:#fde8e8;color:var(--bad)}.confirm-type{display:flex;flex-direction:column;gap:6px;font-size:13px;margin:12px 0 2px;color:var(--ink2)}.confirm-type input{letter-spacing:1px;text-transform:uppercase}.btn.danger-solid{background:var(--bad);border-color:var(--bad);color:#fff}.btn.danger-solid[disabled]{opacity:.5;cursor:not-allowed;filter:none}.btn.danger-solid:hover{filter:brightness(.93)}.delall-box{max-width:440px;--c: var(--bad)}.delall-box p{margin:0 0 10px;line-height:1.45}.delall-type{display:flex;flex-direction:column;gap:6px;font-size:13px}.delall-type input{letter-spacing:1px}.toast{display:flex;align-items:center;gap:10px}.toast-x{border:0;background:transparent;color:#ffffffbf;font-size:16px;line-height:1;padding:0 0 0 4px;cursor:pointer}.toast-x:hover{color:#fff}.w-110{width:110px}.nowrap{white-space:nowrap}.qs,.qbadge{display:inline-block;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600;white-space:nowrap;background:#f3f4f6;color:var(--ink2)}.qs-fu{background:#fff4e5;color:#b45309}.qs-won{background:var(--ok-l);color:var(--ok)}.qs-lost{background:#eef0f3;color:#64748b}.qbadge{font-variant-numeric:tabular-nums;font-size:10.5px;margin-top:3px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.qbadge b{margin-left:4px}.qbadge.lg{font-size:12px;padding:3px 8px;cursor:pointer;margin:0}.sel.qs-sel input{font-weight:600;font-size:12px;padding:3px 20px 3px 7px;border-color:transparent;background:inherit;color:inherit}.modal-head .sel.qs-sel{border-radius:6px}.qt-page .tbl tr.click{cursor:pointer}.qt-tbl td{vertical-align:middle;font-size:12.5px}.qt-tbl td.desc{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qt-tbl .sel.qs-sel{width:112px;border-radius:5px}.qt-tbl .parts-cell{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qt-tbl .qn{margin-left:4px;font-size:10px;color:var(--mute)}.warn-t{color:var(--warn);font-weight:600}.qk{cursor:pointer}.kpis .qk.qs-fu{background:#fff4e5}.kpis .qk.qs-won{background:var(--ok-l)}.kpis .qk.qs-lost{background:#eef0f3}.kpis .qk.on{outline:2px solid var(--brand)}.toolbar .dates{display:inline-flex;align-items:center;gap:4px}.toolbar .dates input{padding:4px 6px;width:132px}.sp-strip{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px}.sp-strip .sp{background:#fff;border:1px solid var(--line);border-radius:14px;padding:2px 10px;font-size:11.5px;cursor:pointer;color:var(--ink2)}.sp-strip .sp b{color:var(--ink);margin-right:3px}.sp-strip .sp.on{border-color:var(--brand);background:var(--brand-l)}button.link{border:0;background:transparent;color:var(--brand-d, #c2410c);padding:0;font-weight:600;cursor:pointer;font-family:inherit}button.link:hover{text-decoration:underline}.q-lines textarea{width:100%;resize:vertical;min-height:28px;font:inherit;padding:4px 6px;border:1px solid var(--line);border-radius:5px}.q-lines td input{width:100%}.q-lines tfoot td{border-top:2px solid var(--line);padding-top:8px;font-weight:600}.cost-view td{font-size:12px;white-space:nowrap}.cost-view td.neg{color:var(--bad)}.cost-edit td{vertical-align:top}.cost-edit td input{width:100%;font:inherit;font-size:12px;padding:4px 5px;border:1px solid var(--line);border-radius:5px;text-align:right}.cost-edit td input:disabled{background:#f3f4f6}.cost-edit input.mg-set{background:var(--brand-l);border-color:var(--brand);font-weight:600}.cost-edit input::placeholder{color:#9ca3af;font-style:italic}.cost-edit th.c-mg{width:72px}.cost-edit td .small,.cost-edit td .mdiff{white-space:normal}.cost-edit tfoot td{border-top:2px solid var(--line);padding-top:8px;font-weight:600}.i2o-draft{border:1px solid var(--line);border-radius:var(--r);background:var(--card)}.i2o-tbl td{vertical-align:top;font-size:12px}.i2o-tbl th{position:sticky;top:0;z-index:2}.i2o-tbl td .small{white-space:normal}.i2o-tbl tr.muted-row td{opacity:.45}.i2o-tbl tr.muted-row td:first-child{opacity:1}.i2o-files td:first-child{width:210px;font-weight:600;word-break:break-all}.i2o-file-btns{display:flex;flex-wrap:wrap;gap:4px;row-gap:4px}.i2o-past-file{display:flex;flex-wrap:wrap;align-items:center;gap:6px;row-gap:4px;margin-bottom:3px}.q-list tr.click{cursor:pointer}.q-list tr.click:hover td{background:#fafbfc}.q-sum{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:6px}.q-sum div{background:#fff;border:1px solid var(--line);border-radius:6px;padding:6px 8px;display:flex;flex-direction:column;font-size:11px;color:var(--ink2)}.q-sum b{font-size:13px;color:var(--ink)}.q-sum b.neg{color:var(--bad)}.terms-grid{padding:12px 16px;display:grid;gap:8px;max-width:900px;overflow:auto}.terms-grid label{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:10px;font-size:12.5px;font-weight:600;color:var(--ink2)}.terms-grid .sel{width:100%}.empty-state{margin:30px auto;max-width:520px;text-align:center;color:var(--mute);line-height:1.5}.modal-head .sel.qs-sel{width:130px;flex:none;border-radius:6px}.q-lines th.c-sl{width:46px}.q-lines th:nth-child(2){width:22%}.q-lines th:nth-child(3){width:22%}.cost-tbl tbody tr:nth-child(2n) td,.qt-tbl tbody tr:nth-child(2n) td{background:#f7f8fa}.cost-tbl tbody tr:hover td,.qt-tbl tbody tr:hover td,.cost-tbl tbody tr:hover .stick{background:#fff3ea}th.ch{padding-right:2px}.ch-in{display:inline-flex;align-items:center;gap:2px;width:100%}th.num .ch-in{justify-content:flex-end}.ch-l{cursor:pointer;-webkit-user-select:none;user-select:none}.ch-l:hover{color:var(--brand-d)}.ch-s{font-size:8px;margin-left:3px;color:var(--brand)}.ch-f{border:0;background:transparent;cursor:pointer;color:#9aa0a8;font-size:10px;padding:1px 3px;border-radius:3px;line-height:1}.ch-f:hover{background:#e5e7eb;color:var(--ink)}th.f-on .ch-f{color:#fff;background:var(--brand)}th.f-on,th.s-on{color:var(--brand-d)}.col-pop{padding:6px;display:flex;flex-direction:column;gap:2px;font-size:12px;overflow:hidden}.cp-sort{border:0;background:transparent;text-align:left;padding:6px 8px;border-radius:5px;cursor:pointer;font-size:12px}.cp-sort:hover{background:#f3f4f6}.cp-sort.on{color:var(--brand);font-weight:600}.cp-sep{height:1px;background:var(--line);margin:3px 0}.cp-search,.cp-field input{width:100%;padding:5px 7px;border:1px solid var(--line);border-radius:5px;font-size:12px}.cp-picked{display:flex;align-items:center;gap:6px;flex-wrap:wrap;row-gap:3px;margin-top:4px}.cp-picked .muted{flex:1}.cp-only{border:1px solid var(--line);background:#fff;border-radius:5px;padding:2px 7px;font-size:11px;color:var(--brand-d);cursor:pointer}.cp-only:hover{background:var(--brand-l);border-color:var(--brand)}.cp-list{overflow-y:auto;max-height:230px;min-height:40px;border:1px solid var(--line);border-radius:5px;margin-top:4px;padding:3px 0}.cp-item{display:flex;align-items:center;gap:6px;padding:3px 8px;cursor:pointer;white-space:nowrap}.cp-item:hover{background:#f3f4f6}.cp-item span{flex:1;overflow:hidden;text-overflow:ellipsis}.cp-item small{color:var(--mute);font-size:10.5px}.cp-item.all{font-weight:600;border-bottom:1px solid #eef0f3}.cols-pop .cp-head{padding:2px 4px 4px}.cols-pop .cp-list{max-height:330px}.cols-pop .cp-col .drag-h{flex:0 0 auto}.cp-lab{display:flex;align-items:center;gap:6px;flex:1;min-width:0;cursor:pointer}.cp-col[data-drag=from]{opacity:.45}.cp-col[data-drag=above]{box-shadow:inset 0 2px #2563eb}.cp-col[data-drag=below]{box-shadow:inset 0 -2px #2563eb}.cp-col.pinned span{color:var(--mute)}.drag-h.off{cursor:default;color:#cbd2dc}.drag-h.off:hover{color:#cbd2dc}.cp-ren-b{border:1px solid transparent;background:transparent;border-radius:4px;padding:1px 4px;cursor:pointer;color:#8b939e;font-size:12px;flex:0 0 auto}.cp-ren-b:hover{background:#e9ecf1;color:var(--ink2)}.cp-ren-b.on{background:var(--brand-l);border-color:var(--brand);color:var(--brand-d)}.cp-ren-b.off{display:inline-block;width:20px;pointer-events:none}.cp-ren{flex:1 1 90px;min-width:70px;max-width:150px;padding:2px 6px;border:1px solid var(--brand);border-radius:5px;font:inherit;font-size:12px}.cp-alrow .cp-ren{flex:0 1 150px}.cp-al{display:inline-flex;gap:1px;flex:0 0 auto}.cp-item .cp-al{flex:0 0 auto}.cp-al-b{border:1px solid transparent;background:transparent;border-radius:4px;padding:2px 3px;cursor:pointer;line-height:0}.cp-al-b:hover{background:#e9ecf1}.cp-al-b.on{background:var(--brand-l);border-color:var(--brand)}.al-i{display:inline-block;width:13px;height:14px;background-repeat:no-repeat;background-size:100% 2px,70% 2px,100% 2px,70% 2px;background-image:linear-gradient(#8b939e,#8b939e),linear-gradient(#8b939e,#8b939e),linear-gradient(#8b939e,#8b939e),linear-gradient(#8b939e,#8b939e)}.al-i-left{background-position:left 0,left 4px,left 8px,left 12px}.al-i-center{background-position:center 0,center 4px,center 8px,center 12px}.al-i-right{background-position:right 0,right 4px,right 8px,right 12px}.cp-al-b.on .al-i{background-image:linear-gradient(var(--brand-d),var(--brand-d)),linear-gradient(var(--brand-d),var(--brand-d)),linear-gradient(var(--brand-d),var(--brand-d)),linear-gradient(var(--brand-d),var(--brand-d))}.cp-alrow{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 8px}.cp-al-b .al-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}th.al-left,td.al-left{text-align:left!important}th.al-center,td.al-center{text-align:center!important}th.al-right,td.al-right{text-align:right!important}th.al-left .ch-in{justify-content:flex-start}th.al-center .ch-in{justify-content:center}th.al-right .ch-in{justify-content:flex-end}.tc-y{--tc: #fff3bf}.tc-g{--tc: #d8f5de}.tc-b{--tc: #dbeafe}.tc-o{--tc: #ffe6cc}.tc-r{--tc: #ffe1e1}.tc-p{--tc: #ebe1fb}.tc-m{--tc: #fde2ef}.tc-t{--tc: #d5f3f0}.tc-c{--tc: #e7ebf0}td.tc-fill,th.tc-fill,.tc-fill.stick{background:var(--tc)!important}tbody tr:hover td.tc-fill{box-shadow:inset 0 0 0 9999px #0000000b}th.tc-fill{box-shadow:inset 0 -2px #0000001f}.cp-sw{display:inline-flex;gap:3px;flex-wrap:wrap}.cp-sw-b{width:14px;height:14px;padding:0;border:1px solid rgba(0,0,0,.18);border-radius:3px;cursor:pointer;background:var(--tc, #fff);line-height:0;flex:none}.cp-sw-b:hover{transform:scale(1.15)}.cp-sw-b.on{outline:2px solid var(--brand-d);outline-offset:1px}.cp-sw-b.none{background:#fff;color:var(--ink2);font-size:11px;line-height:13px}.cp-sw-b .al-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.cp-col-c{padding:2px 0 4px}.cp-rule{display:flex;align-items:center;gap:6px;padding:2px 8px}.cp-rule select,.cp-rule input{font:inherit;font-size:12px;padding:2px 4px;border:1px solid var(--line);border-radius:4px;min-width:0}.cp-rule select{flex:0 0 auto}.cp-rule input{flex:1 1 auto}.cp-rule .btn{margin-left:auto;flex:none}.cp-rl{list-style:none;margin:4px 0 0;padding:0 8px;display:flex;flex-direction:column;gap:2px}.cp-rl li{display:flex;align-items:center;gap:6px;font-size:11.5px}.cp-rl-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink2)}.cp-rl-x{border:0;background:none;cursor:pointer;color:var(--ink2);font-size:14px;line-height:1;padding:0 2px}.cp-rl-x:hover{color:var(--bad)}.cp-paint{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:6px 8px 0;border-top:1px solid var(--line);margin-top:6px}.cp-paint .btn{margin-left:auto}.btn.on{border-color:var(--brand);color:var(--brand-d);background:var(--brand-l)}.cp-field{display:flex;flex-direction:column;gap:3px;color:var(--ink2);font-size:11px;margin-top:4px}.cp-range{display:flex;gap:6px}.cp-range .cp-field{flex:1;min-width:0}.cp-pad{padding:6px 8px}.cp-btns{display:flex;gap:6px;align-items:center;margin-top:8px}.cp-btns .spacer{flex:1}.cp-save{flex-wrap:wrap}.cp-save .spacer{flex:1 0 auto}.cp-note{padding:5px 4px 0}.cp-note.ok{color:#157347}.cp-note.bad{color:#b42318}.enq-side .side-head{display:flex;align-items:center;justify-content:space-between;margin:-2px 0 8px;font-size:12px;color:var(--ink2);flex-wrap:wrap;row-gap:4px}.enq-rail{width:30px;flex:none;border-right:1px solid var(--line);background:#fafbfc;cursor:pointer;display:flex;flex-direction:column;align-items:center;padding:8px 0;gap:10px;overflow:hidden}.enq-rail:hover{background:#fff3ea}.enq-rail .rail-btn{border:1px solid var(--line);background:#fff;border-radius:5px;width:22px;height:22px;cursor:pointer;color:var(--brand);font-weight:700;line-height:1;padding:0}.enq-rail .rail-txt{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:calc(100% - 40px)}@media (max-width: 900px){.enq-rail{width:auto;flex-direction:row;padding:6px 10px;border-right:0;border-bottom:1px solid var(--line)}.enq-rail .rail-txt{writing-mode:horizontal-tb;transform:none}}.modal.so-dialog{max-width:1180px;max-height:calc(100vh - 32px)}.so-dialog .modal-body{overflow:auto;display:flex;flex-direction:column;gap:12px}.so-po{display:grid;grid-template-columns:1.3fr .8fr .8fr 2fr;gap:12px;align-items:end}.so-po label,.so-notes{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#555;font-weight:600}.so-po em,.so-modal em{color:var(--bad);font-style:normal}.so-file{display:flex;flex-direction:column;gap:4px;min-width:0}.so-file .lbl{font-size:12px;color:#555;font-weight:600}.so-file .drop{flex-direction:row;padding:7px 10px;gap:8px;justify-content:flex-start;text-align:left;border-width:1.5px;border-radius:8px;min-height:36px;font-size:12.5px;overflow:hidden}.so-file .drop b,.so-file .drop button.link{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.so-file .drop .icon-btn{margin-left:auto}.so-file .drop.missing{border-color:#f3c58f;background:#fff8ef;color:var(--warn);cursor:pointer}.so-file .drop.gone{border-color:#f5a3a3;background:#fff5f5;color:var(--bad);cursor:pointer;font-weight:600}.so-file .drop.has{cursor:default}.so-dialog .so-file .drop.has{cursor:pointer}.so-file .row-btns{display:flex;gap:6px}.so-note{background:#fff4e5;color:#92400e;border-radius:8px;padding:7px 10px;font-size:12.5px}.so-items{border:1px solid var(--line, #e3e6eb);border-radius:8px;max-height:46vh;overflow:auto}.so-items thead th{position:sticky;top:0;z-index:1}.so-items tbody tr{cursor:pointer}.so-items tbody tr.off td{color:#9aa0a8;background:#fafbfc}.so-items tbody tr.on td{background:#fff}.so-items tbody tr.on:hover td{background:#fff3ea}.so-items td.desc,.so-modal td.desc{max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-items .c-chk,.so-items .c-chk input{width:30px;text-align:center;cursor:pointer}.so-items input[type=number],.so-modal .items-tbl input[type=number]{width:84px;text-align:right}input.over{border-color:var(--warn)!important;background:#fff8ef;color:var(--warn);font-weight:600}.ok-t{color:var(--ok);font-weight:600}.so-notes textarea{font-weight:400}.so-empty{padding:40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.so-tbl td{white-space:nowrap}.pill{display:inline-block;padding:2px 9px;border-radius:10px;font-size:11.5px;font-weight:600}.so-tbl-page tbody tr:nth-child(2n) td{background:#f7f8fa}.so-tbl-page tbody tr:hover td{background:#fff3ea}.so-tbl-page td.desc{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-tbl-page .po-f{font-family:inherit;font-weight:500}.qt-tbl .so-chip{display:inline-block;background:var(--ok-l);color:#166534;border-radius:5px;padding:1px 6px;font-size:11px;font-weight:600;white-space:nowrap}.so-po.so-head{grid-template-columns:2fr .8fr .8fr 1.3fr;margin-bottom:12px;align-items:start}.so-head .fx-in{display:flex;align-items:center;gap:4px;font-weight:500;color:var(--mute);font-size:11.5px}.so-head .fx-in input{width:80px;padding:3px 6px}@media (max-width: 900px){.so-po{grid-template-columns:1fr 1fr}}.so-items input[type=number],.so-modal .items-tbl input[type=number]{width:72px}.so-items td.c-uom,.so-modal td.c-uom{padding-left:10px}.so-items th.c-qty,.so-modal th.c-qty{width:84px}.so-modal .items-tbl td.desc{max-width:240px}.so-modal .items-tbl textarea{min-width:140px}.imp-note{background:#fffbeb;border:1px solid #fcd34d;color:#92400e;border-radius:6px;padding:7px 10px;font-size:12.5px;margin:4px 0 8px}.imp-kpis{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 10px}.imp-kpis span{background:#f3f4f6;border-radius:6px;padding:5px 10px;font-size:13px}.imp-kpis span.new{background:#fde1cf;color:#9a3d0c}.imp-kpis span.bad{background:#fee2e2;color:#991b1b}.imp-list{margin-top:10px;font-size:13px}.imp-list ul{margin:4px 0 0;padding-left:18px;max-height:150px;overflow:auto}.imp-list li{padding:1px 0}.imp-skip{margin-top:12px;border:1px solid var(--line);border-left:3px solid var(--bad);border-radius:8px;background:var(--bad-l);padding:8px 10px}.imp-skip-head{font-size:12.5px;line-height:1.5;margin-bottom:6px}.imp-skip .skip-scroll{max-height:240px;overflow:auto;background:var(--card);border-radius:6px}.imp-skip-tbl th{font-size:10.5px;white-space:nowrap}.imp-skip-tbl td{font-size:11.5px;padding:3px 7px;vertical-align:top}.imp-skip .btn{margin-top:6px}.qs-dorm{background:#ede9fe;color:#6d28d9}.kpis .qk.qs-dorm{background:#ede9fe}.c-mg{width:70px}.items-tbl input.mg-set{background:var(--brand-l);border-color:var(--brand);font-weight:600}.items-tbl input::placeholder{color:#9ca3af;font-style:italic}.mg-all{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink2)}.mg-all input{width:58px;padding:3px 6px;border:1px solid var(--line);border-radius:5px;font-size:12px}.ws-burger{width:32px;height:32px;border:0;background:transparent;border-radius:6px;display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0;flex:none}.ws-burger span{display:block;width:18px;height:2px;border-radius:2px;background:#6d6e71;transition:background .15s}.ws-burger:hover{background:var(--brand-l)}.ws-burger:hover span{background:var(--brand)}.ws-name{border:1px solid var(--line);background:#fafbfc;color:var(--ink);font-weight:600;padding:4px 10px;border-radius:6px;margin-right:8px;white-space:nowrap}.ws-name:hover{border-color:var(--brand);background:var(--brand-l)}.ws-name .caret{color:var(--mute);font-size:10px;margin-left:2px}.ws-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182759;opacity:0;pointer-events:none;transition:opacity .2s;z-index:900}.ws-overlay.open{opacity:1;pointer-events:auto}.ws-drawer{position:fixed;top:0;left:0;bottom:0;width:300px;background:#fff;box-shadow:4px 0 24px #00000026;transform:translate(-105%);transition:transform .25s ease;z-index:901;display:flex;flex-direction:column}.ws-drawer.open{transform:translate(0)}.ws-drawer-head{height:46px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid var(--line)}.ws-close{font-size:15px;padding:2px 8px}.ws-title{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--mute);padding:14px 16px 6px;display:flex;align-items:center;justify-content:space-between;gap:8px}.ws-title .btn{letter-spacing:0;text-transform:none;font-weight:600}.ws-hint{padding:0 16px 8px;line-height:1.35}.ws-list.arranging .ws-item{cursor:grab;background:#f8f9fb}.ws-list.arranging .ws-item:active{cursor:grabbing}.ws-item[data-drag=from]{opacity:.45}.ws-item[data-drag=above]{box-shadow:inset 0 2px 0 var(--brand)}.ws-item[data-drag=below]{box-shadow:inset 0 -2px 0 var(--brand)}.ws-arrange-btns{flex:none;display:flex;align-items:center;gap:6px;padding:8px 12px;border-top:1px solid var(--line)}.ws-list{flex:1;overflow:auto;padding:0 8px 12px;display:flex;flex-direction:column;gap:2px}.ws-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:transparent;padding:9px 10px;border-radius:8px;border-left:3px solid transparent}.ws-item:hover{background:#f4f5f7}.ws-item.active{background:var(--brand-l);border-left-color:var(--brand)}.ws-item.active b{color:var(--brand-d)}.ws-ico{width:32px;height:32px;flex:none;display:grid;place-items:center;font-size:17px;background:#f3f4f6;border-radius:8px}.ws-item.active .ws-ico{background:#fff}.ws-txt{flex:1;min-width:0;display:flex;flex-direction:column}.ws-txt b{font-weight:600;color:var(--ink)}.ws-txt small{color:var(--mute);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-badge{font-size:10px;font-weight:600;color:#6d6e71;background:#eef0f3;padding:2px 6px;border-radius:10px}.ws-soon{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px}.ws-soon h2{margin:6px 0 0}.ws-soon p{margin:2px 0}.ws-soon .btn{margin-top:12px}.ws-soon-ico{font-size:44px;width:84px;height:84px;display:grid;place-items:center;background:var(--brand-l);border-radius:20px}.login-wrap{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 10% 0%,#fff1e8 0%,transparent 60%),linear-gradient(135deg,#f7f8fa,#eef1f5)}.login-shell{width:min(960px,100%);min-height:560px;display:grid;grid-template-columns:1.05fr 1fr;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 60px #1118271f,0 2px 6px #1118270d}.login-hero{position:relative;padding:36px 38px;color:#fff;background:linear-gradient(150deg,#f26a21,#e2550c 55%,#b9440a);display:flex;flex-direction:column;overflow:hidden}.login-hero:after{content:"";position:absolute;right:-120px;bottom:-120px;width:340px;height:340px;border-radius:50%;border:46px solid rgba(255,255,255,.08)}.login-hero:before{content:"";position:absolute;right:60px;top:-80px;width:180px;height:180px;border-radius:50%;background:#ffffff0f}.lh-logo{align-self:flex-start;background:#fff;padding:9px 14px;border-radius:10px;box-shadow:0 6px 18px #0000001f}.lh-logo img{height:34px;display:block}.login-hero h1{margin:34px 0 10px;font-size:30px;line-height:1.15;font-weight:700}.login-hero h1 span{display:inline-block;margin-top:4px;font-size:13px;letter-spacing:3px;background:#0000002e;padding:3px 10px;border-radius:6px;vertical-align:middle}.login-hero p{margin:0 0 22px;opacity:.92;font-size:14px;max-width:340px;line-height:1.5}.lh-mods{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;position:relative;z-index:1}.lh-mods li{font-size:12.5px;padding:7px 10px;border-radius:8px;background:#ffffff1f;display:flex;align-items:center;justify-content:space-between;gap:6px}.lh-mods li.live{background:#fff;color:#b9440a;font-weight:600}.lh-mods em{font-style:normal;font-size:10px;font-weight:700;background:#16a34a;color:#fff;padding:1px 6px;border-radius:8px}.lh-foot{margin-top:auto;padding-top:24px;font-size:11.5px;opacity:.75;position:relative;z-index:1}.login-pane{display:grid;place-items:center;padding:36px 40px}.login-form{width:100%;max-width:340px;display:flex;flex-direction:column;gap:13px}.login-form .lf-logo{display:none;height:40px;align-self:center}.login-form h2{margin:0;font-size:22px}.login-form>p{margin:-6px 0 6px;line-height:1.45}.login-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--ink2);font-weight:600}.login-form input:not([type=checkbox]){padding:10px 12px;font-size:13.5px;border-radius:8px}.login-form .btn.block{padding:11px;font-size:14px;border-radius:8px;margin-top:4px}.login-form .lbl-row{display:flex;justify-content:space-between;align-items:center}.login-form label.chk{flex-direction:row;align-items:center;gap:7px;font-weight:500;cursor:pointer}.login-form button.link{font-family:inherit;font-size:12px}.login-form .link.center{align-self:center;margin-top:4px}.pw-wrap{position:relative;display:flex}.pw-wrap input{flex:1;padding-right:58px!important}.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:#f3f4f6;color:var(--ink2);font-size:11px;font-weight:600;padding:3px 8px;border-radius:5px}.pw-eye:hover{background:var(--brand-l);color:var(--brand-d)}.hint-warn{font-size:12px;color:var(--warn);background:var(--warn-l);padding:5px 9px;border-radius:6px;margin-top:-6px}.ok-msg{background:var(--ok-l);color:#15803d;padding:8px 11px;border-radius:6px;font-size:12.5px;line-height:1.4}.pw-meter{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--mute);margin-top:-6px}.pw-meter span{flex:1;height:5px;background:#eceef2;border-radius:3px;overflow:hidden}.pw-meter i{display:block;height:100%;width:8%;background:var(--bad);transition:width .2s}.pw-meter.s1 i{width:25%;background:var(--bad)}.pw-meter.s2 i{width:50%;background:var(--warn)}.pw-meter.s3 i{width:75%;background:#65a30d}.pw-meter.s4 i{width:100%;background:var(--ok)}@media (max-width: 780px){.login-shell{grid-template-columns:1fr;min-height:0}.login-hero{display:none}.login-form .lf-logo{display:block}}.settings-card{margin:14px 16px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 20px;max-width:760px;display:flex;flex-direction:column;gap:10px}.settings-card h4{margin:10px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--mute);border-top:1px solid var(--line);padding-top:14px}.form-grid.two{grid-template-columns:1fr 1fr}.sc-row.head{display:flex;align-items:center;justify-content:space-between}.sc-row .pill{background:#f3f4f6;color:var(--mute)}.sc-row .pill.ok{background:var(--ok-l);color:#15803d}.sc-test{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sc-test input{width:260px}.sc-foot{display:flex;justify-content:flex-end;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:14px;margin-top:6px}.page:has(>.settings-card){overflow:auto}.kpis button.kchip{border:0;background:#f3f4f6;border-radius:5px;padding:4px 8px;color:var(--ink2);font-size:12px;display:inline-flex;align-items:center;gap:4px}.kpis button.kchip:hover{filter:brightness(.96);box-shadow:0 0 0 1px #d5dae2 inset}.kpis button.kchip.warn{background:var(--warn-l)}.kpis button.kchip.warn b{color:var(--warn)}.kpis button.kchip.bad{background:var(--bad-l)}.kpis button.kchip.bad b{color:var(--bad)}.kpis button.kchip.on{outline:2px solid var(--brand);outline-offset:-1px;font-weight:600}.kpis button.kchip .x{font-style:normal;font-size:10px;opacity:.7}.quick-bar{flex:none;display:flex;align-items:center;gap:10px;padding:6px 14px;background:var(--brand-l);color:var(--brand-d);font-size:12.5px;border-bottom:1px solid #fbd5bf}.quick-bar .btn{margin-left:4px}.co-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #fbd5bf;background:var(--brand-l);color:var(--brand-d);padding:4px 10px;border-radius:6px;margin-right:8px;white-space:nowrap;max-width:260px;min-width:0}.co-chip b{font-size:12.5px;letter-spacing:.5px}.co-chip span{overflow:hidden;text-overflow:ellipsis;font-size:12.5px;font-weight:600}.co-chip:hover{border-color:var(--brand)}.co-layout{display:flex;gap:0;flex:1;min-height:0}.co-list{flex:none;width:290px;border-right:1px solid var(--line);background:#fff;overflow:auto;padding:8px;display:flex;flex-direction:column;gap:6px}.co-item{display:flex;gap:10px;align-items:flex-start;text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 10px;width:100%}.co-item:hover{border-color:#d5dae2;background:#fafbfc}.co-item.active{border-color:var(--brand);background:var(--brand-l)}.co-item.dim{opacity:.6}.co-code{flex:none;background:#6d6e71;color:#fff;font-weight:700;font-size:11px;letter-spacing:.5px;border-radius:5px;padding:4px 7px}.co-item.active .co-code{background:var(--brand)}.co-txt{display:flex;flex-direction:column;gap:4px;min-width:0}.co-txt b{font-size:13px;color:var(--ink)}.co-txt small{display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-size:11px;color:var(--mute)}.co-txt .pill{font-style:normal;padding:0 7px;font-size:10.5px;background:#f3f4f6;color:var(--mute)}.co-txt .pill.ok{background:var(--ok-l);color:#15803d}.co-txt .pill.info{background:#e0f2fe;color:#0369a1}.sync-ok{color:#15803d}.sync-bad{color:var(--bad)}.co-layout>.settings-card{flex:1;max-width:980px;overflow:auto;margin:0;border-radius:0;border-width:0 0 0 0}.co-layout{overflow:hidden}.page:has(.co-layout){overflow:hidden}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid textarea{resize:vertical;font:inherit;padding:6px 8px;border:1px solid #d5dae2;border-radius:6px}.form-grid .tgl-row{display:flex;align-items:center;min-height:34px;padding-top:14px}.lbl{font-size:11.5px;color:var(--ink2);font-weight:500;margin-bottom:4px}.lh-box{display:flex;gap:12px;align-items:center;border:1px dashed #d5dae2;border-radius:8px;padding:10px;background:#fafbfc}.lh-box img{max-height:90px;max-width:420px;border-radius:4px;background:#fff;box-shadow:0 1px 3px #0000001f}.lh-empty{color:var(--mute);font-size:12.5px;padding:18px 10px}.lh-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.sync-last{font-size:12.5px;padding:8px 10px;border-radius:6px}.sync-last.ok{background:var(--ok-l);color:#166534}.sync-last.bad{background:var(--bad-l);color:#991b1b}.co-pick{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid #d5dae2;background:#fff;border-radius:14px;padding:4px 10px;font-size:12px;color:var(--ink2)}.chip.on{border-color:var(--brand);background:var(--brand-l);color:var(--brand-d);font-weight:600}.co-pick .chip-head{width:100%;margin:6px 0 -2px}.page:has(.tb-hero),.page:has(.tb-counts){overflow:auto}.tb-hero{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:14px 16px 0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 18px}.tb-hero h3{margin:2px 0;font-size:18px}.tb-state{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--mute);padding:8px 14px;border-radius:8px;background:#f3f4f6}.tb-state b{font-size:14px;color:var(--ink)}.tb-state.ok{background:var(--ok-l)}.tb-state.ok b{color:#15803d}.tb-state.bad{background:var(--bad-l)}.tb-state.bad b{color:var(--bad)}.tb-state.run{background:var(--brand-l)}.tb-state.run b{color:var(--brand-d)}.tb-btns{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap;row-gap:8px}.page>.err{margin:10px 16px 0}.tb-counts{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin:12px 16px 0}.tb-count{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column}.tb-count b{font-size:20px;color:var(--ink)}.tb-count span{font-size:11.5px;color:var(--mute)}.tb-plan{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:12px 16px 0}.tb-plan-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;row-gap:4px}.tb-bar{height:6px;border-radius:4px;background:#eef1f5;margin:8px 0 10px;overflow:hidden}.tb-bar i{display:block;height:100%;background:var(--brand);transition:width .4s ease}.tb-blocks{display:flex;gap:6px;flex-wrap:wrap;row-gap:6px}.tb-block{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--mute);background:#f3f4f6;border-radius:999px;padding:3px 10px}.tb-block b{color:var(--ink)}.tb-block.done{background:var(--ok-l);color:#15803d}.tb-block.fail{background:var(--bad-l);color:var(--bad)}.page>p.small{margin:8px 16px 0}.tb-h{margin:16px 16px 6px;font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--mute)}.page>.tb-h+.table-card{margin:0 16px 16px}.tb-h-row{display:flex;align-items:center;gap:8px;margin-right:16px}.tb-h-row .tb-h{margin-bottom:0}.page>.tb-h-row+.table-card{margin:0 16px 16px}.tb-steps{max-width:520px;font-size:12px;color:var(--ink2)}.form-sec{margin:6px 0 0;font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--mute);border-top:1px solid var(--line);padding-top:9px}.form-grid>.form-sec:first-child,.modal-body>.form-sec:first-child{border-top:0;padding-top:0}.lg-opt{display:flex;align-items:center;gap:6px;margin-top:5px}.lg-opt input{flex:1;min-width:0}.lg-opt .small{white-space:nowrap}button.link.nm{font-family:inherit;text-align:left}.pill.bad{background:var(--bad-l);color:var(--bad)}.pill.ok{background:var(--ok-l);color:#15803d}label.inline{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink2)}label.inline input{padding:4px 6px}td.ellip{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tbl.compact{margin-top:10px}.tbl.compact td,.tbl.compact th{padding:5px 8px}.page>.pager{padding:8px 14px}@media (max-width: 1100px){.tb-counts{grid-template-columns:repeat(4,1fr)}}.co-form>h4:first-child{border-top:0;padding-top:0;margin-top:0}.page:has(.tcf-box){overflow:auto}.tcf-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 16px 0}.tcf-box{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin:14px 16px 16px}.tcf-box>h4{margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--mute)}.tcf-box .sc-test{margin-top:12px}.tcf-box .ok-msg,.tcf-box .err{margin-top:10px}.fx-note{font-size:11.5px;color:var(--mute);margin-top:-4px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.fx-note button{border:0;background:transparent;color:var(--brand-d);font-weight:600;padding:0;cursor:pointer;font-size:11.5px}th.c-del,td.c-del{min-width:150px;width:160px}td.c-del .sel{width:100%}.terms-wrap{overflow:auto;padding-bottom:12px}.terms-h{margin:6px 16px 0;font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--mute);display:flex;gap:8px;align-items:baseline}.terms-h .small{text-transform:none;letter-spacing:0;font-weight:400}.so-tc{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid var(--line);border-radius:8px;padding:6px 0}.so-tc .terms-h{margin:6px 12px 0}.so-tc .terms-grid{padding:8px 12px}.so-tc .terms-grid label{grid-template-columns:110px 1fr}@media (max-width: 900px){.so-tc{grid-template-columns:1fr}}.sm-tabs{border-bottom:1px solid var(--line);margin:0 16px;padding-left:0}.sm-wrap{padding:12px 16px 24px;max-width:980px;display:flex;flex-direction:column;gap:12px}.sm-help{margin:0;font-size:12.5px}.sm-cards{display:flex;flex-direction:column;gap:10px}.sm-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px;display:flex;flex-direction:column;gap:8px}.sm-card-head{display:flex;align-items:center;gap:10px}.sm-no{width:22px;height:22px;border-radius:50%;background:var(--brand-l);color:var(--brand-d);font-weight:700;font-size:12px;display:grid;place-items:center;flex:none}.sm-key{font-weight:700;font-size:14px;width:240px}.sm-chk{display:flex;align-items:center;gap:4px;font-size:12.5px;color:var(--ink2);white-space:nowrap}.sm-opts{display:flex;flex-direction:column;gap:6px;padding-left:32px}.sm-opt{display:flex;align-items:center;gap:8px}.sm-opt input:not([type]),.sm-opt input[type=text],.sm-opt select{flex:1}.sm-def{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--mute);width:78px;flex:none;white-space:nowrap}.sm-opt-add{display:flex;gap:6px}.sm-add{align-self:flex-start}.sm-card .terms-h{margin:6px 0 0 32px}.sm-foot{display:flex;align-items:center;gap:10px;justify-content:flex-end;position:sticky;bottom:0;background:var(--bg, #f6f7f9);padding:10px 0;border-top:1px solid var(--line)}.sm-cur{background:#fff;border:1px solid var(--line);border-radius:10px;max-width:760px}.sm-cur input{width:100%}.sm-cur .sm-code{width:70px;text-transform:uppercase;letter-spacing:.04em}.sm-cur .sm-sym{width:60px}.sm-cur .sm-rate{width:120px;text-align:right}.icon-btn.danger:hover{color:var(--bad)}.modal.sg-modal{max-width:940px;width:calc(100vw - 40px)}.sg-body{display:grid;grid-template-columns:1.15fr 1fr;gap:18px}.sg-help{margin:0 0 8px}.sg-imgs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.sg-img{display:flex;flex-direction:column;gap:5px}.sg-img .lbl,.sg-preview .lbl{font-size:12px;font-weight:600;color:#555}.sg-img .drop{height:120px;border:1.5px dashed #c9ced6;border-radius:8px;display:grid;place-items:center;text-align:center;padding:8px;cursor:pointer;background:#fafbfc}.sg-img .drop:hover{border-color:var(--brand)}.sg-img .drop.has{border-style:solid;background:#fff}.sg-img .drop img{max-width:100%;max-height:100px}.sg-img .row-btns{display:flex;gap:6px}.sg-preview{display:flex;flex-direction:column;gap:5px}.sg-paper{flex:1;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px 18px;font:11.5px/1.5 Segoe UI,Arial,sans-serif;color:#222;box-shadow:0 1px 3px #0000000f}.sg-close{margin-bottom:14px}.sg-block{text-align:left}.sg-block .sig-art{display:flex;justify-content:flex-start;align-items:center;gap:18px;height:84px;margin:4px 0 2px}.sg-block .stamp{max-height:84px;max-width:120px;opacity:.92;mix-blend-mode:multiply;flex:0 0 auto}.sg-block .sig{max-height:62px;max-width:190px;mix-blend-mode:multiply;flex:0 0 auto}.sg-block .who{font-size:12.5px;font-weight:700}.sg-block .det{color:#555;font-size:10.5px}@media (max-width: 860px){.sg-body{grid-template-columns:1fr}}.dnd-handle{cursor:grab;-webkit-user-select:none;user-select:none;color:#94a3b8;font-size:16px;line-height:1;padding:2px 3px;border-radius:4px;flex:none}.dnd-handle:hover{color:#334155;background:#eef2f7}.dnd-handle:active{cursor:grabbing}.dnd-src{opacity:.45}.sm-card.dnd-above,.sm-opt.dnd-above{box-shadow:0 -3px #2563eb}.sm-card.dnd-below,.sm-opt.dnd-below{box-shadow:0 3px #2563eb}.row-acts .btn.sm{padding:2px 7px;margin-left:2px}.so-items th.c-int,.so-modal th.c-int{width:150px}.so-items td.c-int input,.so-modal td.c-int input{width:140px}.so-items th.c-rate,.so-modal th.c-rate{width:100px;text-align:right}.so-items td.c-rate input,.so-modal td.c-rate input{width:94px!important;text-align:right}input.changed{border-color:var(--brand)!important;background:var(--brand-l);font-weight:600}.so-items tr.off td.c-int input,.so-items tr.off td.c-rate input{opacity:.5}textarea.so-notes{width:100%;resize:vertical;padding:6px 8px;font:inherit;font-size:12.5px;line-height:1.5}.so-docs{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.so-docs .tbl{width:100%}.so-docs td.so-doc-file{white-space:nowrap}.so-docs td.so-doc-file .btn{margin-left:6px}.so-doc-sum{font-size:12px;font-weight:600}.tabs .count.warn{background:#fff1e0;color:var(--warn)}.so-docs .tbl th.c-sl{width:34px}.so-docs .tbl th:nth-child(2){width:40%}.so-docs .tbl th.c-x{width:30px}.so-dialog .modal-body>*{flex-shrink:0}.so-dialog .so-items{flex:none;max-height:none;overflow:visible}.so-dialog .so-items thead th{position:static}.so-dialog .so-items .items-tbl{width:100%;table-layout:auto}.so-dialog .so-items td.desc{max-width:none;min-width:160px;white-space:normal;overflow:visible;text-overflow:clip}.so-dialog .so-items td.c-int input{width:100%;min-width:120px}.so-dialog .so-items th.c-int{width:auto}.so-dialog .so-items thead th{white-space:normal;line-height:1.2}.so-dialog .so-items td{white-space:normal;overflow-wrap:anywhere}.so-dialog .so-items td.desc{min-width:120px}.so-dialog .so-items td.c-sl,.so-dialog .so-items td.c-uom,.so-dialog .so-items td.num{white-space:nowrap;overflow-wrap:normal}.so-dialog .so-items th.c-sl,.so-dialog .so-items td.c-sl{min-width:34px;width:34px}.so-dialog .so-items td.c-sl *{display:inline}.kind-po{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;line-height:1.5;letter-spacing:.3px;background:#e8f0fe;color:#1a56c4;vertical-align:middle}.modal.po-dialog{max-width:620px;width:94vw}.po-dialog .modal-body{display:flex;flex-direction:column;gap:14px}.po-dialog .so-file .lbl,.po-dialog label>span:first-child{font-size:12px;color:var(--muted, #666)}.po-dialog .drop.big{min-height:84px;display:flex;align-items:center;justify-content:center;gap:6px}.po-dialog .po-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.po-dialog label{display:flex;flex-direction:column;gap:4px;font-size:12px}.po-dialog em,.so-modal label em{color:var(--bad);font-style:normal}.po-dialog textarea{width:100%;resize:vertical}.so-empty .row-btns{display:flex;gap:8px;justify-content:center}.modal.so-dialog{max-width:1480px;width:97vw}.so-items th.c-posr,.so-modal th.c-posr{width:62px}.so-items td.c-posr input,.so-modal td.c-posr input{width:56px}.so-items th.c-cpart,.so-modal th.c-cpart{width:140px}.so-items td.c-cpart input,.so-modal td.c-cpart input{width:100%;min-width:110px}.so-items th.c-mat,.so-modal th.c-mat{width:110px}.so-items td.c-mat input,.so-modal td.c-mat input{width:100%;min-width:90px}.so-items th.c-desc,.so-modal th.c-desc{width:auto}.so-items td.c-desc textarea,.so-modal td.c-desc textarea{width:100%;min-width:150px;min-height:30px;resize:vertical;field-sizing:content}.so-items th.c-pct,.so-modal th.c-pct{width:58px;text-align:right}.so-items td.c-pct input,.so-modal .items-tbl td.c-pct input{text-align:right}.so-items tr.off td input,.so-items tr.off td textarea{opacity:.5}th.c-del,td.c-del{min-width:214px;width:214px}.sched{display:flex;flex-direction:column;gap:3px}.sched-row{display:flex;gap:3px;align-items:center}.sched-row input[type=number]{width:56px!important;text-align:right}.sched-row input[type=date]{width:128px}.sched-row .icon-btn{padding:0 3px}.sched-foot{display:flex;gap:8px;align-items:center;font-size:11.5px}.sched-foot .link{font-size:11.5px}.so-dialog .so-items td.c-del,.so-modal td.c-del{white-space:nowrap;overflow-wrap:normal}.so-dialog .so-items td.c-int input,.so-dialog .so-items td.c-cpart input{min-width:90px}.so-dialog .so-items td.c-mat input{min-width:76px}.so-dialog .so-items td.c-desc textarea{min-width:120px}.so-dialog .so-items th.c-rate{width:74px}.so-dialog .so-items td.c-rate input{width:70px!important}.so-dialog .so-items th.c-chk,.so-dialog .so-items td.c-chk{width:28px;padding-left:4px;padding-right:4px}.so-dialog .so-items td.c-pct,.so-dialog .so-items td.c-rate,.so-dialog .so-items td.c-posr{padding-left:3px;padding-right:3px}.so-dialog th.c-del,.so-dialog td.c-del{min-width:196px;width:196px}.so-dialog .sched-row input[type=date]{width:116px}.so-dialog .sched-row input[type=number]{width:50px!important}textarea.pn-box{width:100%;min-height:30px;resize:none;field-sizing:content;overflow-wrap:anywhere;word-break:break-all;line-height:1.3}.so-dialog .so-items td.c-int textarea.pn-box,.so-dialog .so-items td.c-cpart textarea.pn-box{min-width:90px}.so-modal td.c-int textarea.pn-box,.so-modal td.c-cpart textarea.pn-box{min-width:110px}.so-modal .enq-side{width:250px}.so-modal .items-tbl{width:100%;table-layout:auto}.so-modal .items-tbl thead th{white-space:normal;line-height:1.2}.so-modal .items-tbl td{white-space:normal;overflow-wrap:anywhere}.so-modal .items-tbl td.c-sl,.so-modal .items-tbl td.c-uom,.so-modal .items-tbl td.num,.so-modal .items-tbl td.c-del{white-space:nowrap;overflow-wrap:normal}.so-modal .items-tbl th,.so-modal .items-tbl td{padding-left:3px;padding-right:3px}.so-modal th.c-sl,.so-modal td.c-sl{width:30px;min-width:30px}.so-modal th.c-posr{width:52px}.so-modal td.c-posr input{width:48px}.so-modal th.c-cpart,.so-modal th.c-int{width:auto}.so-modal td.c-int textarea.pn-box,.so-modal td.c-cpart textarea.pn-box{min-width:88px}.so-modal th.c-mat{width:auto}.so-modal td.c-mat input{min-width:72px}.so-modal td.c-desc textarea{min-width:130px}.so-modal td.c-desc textarea.rem-box{margin-top:3px;font-size:12px;background:#fffdf8}.so-modal th.c-qty{width:60px}.so-modal td.c-qty input{width:54px!important}.so-modal td.c-qty .small{font-size:10.5px;line-height:1.2;margin-top:2px;white-space:normal}.so-modal th.c-rate{width:70px}.so-modal td.c-rate input{width:66px!important}.so-modal th.c-del,.so-modal td.c-del{min-width:186px;width:186px}.so-modal .sched-row input[type=date]{width:114px}.so-modal .sched-row input[type=number]{width:48px!important}.bg-pair{display:flex;gap:8px;align-items:center}.bg-pair .bg-pct{display:inline-flex;align-items:center;gap:4px;flex:none}.bg-pair .bg-pct input{width:96px;text-align:right}.bg-pair .bg-pct b{font-weight:600;color:var(--ink2)}.bg-pair .sel{flex:1;min-width:0}.items-tbl tr.added td{background:#f3f8ff}.items-tbl .new-tag{display:inline-block;font-size:9.5px;font-weight:700;color:#2563eb;background:#e6efff;border-radius:4px;padding:0 4px;margin-left:2px}.add-line{margin:8px 0 0}.items-tbl input.sl-in{width:34px;padding-left:3px;padding-right:3px;text-align:center}.items-tbl tr.added td.c-uom .sel{min-width:54px}.so-dialog .items-tbl input.sl-in{width:30px}.so-modal .items-wrap .add-line{margin:8px 6px}.items-bar{display:flex;align-items:center;gap:8px;margin:4px 0 6px}.drag-h{cursor:grab;color:#9aa3b2;font-size:13px;padding:0 3px 0 0;-webkit-user-select:none;user-select:none;line-height:1}.drag-h:hover{color:#2563eb}.items-tbl tr[data-drag=from] td{opacity:.45}.items-tbl tr[data-drag=above] td{box-shadow:inset 0 3px #2563eb}.items-tbl tr[data-drag=below] td{box-shadow:inset 0 -3px #2563eb}.add-line-row{display:block;width:100%;margin:6px 0 0;padding:8px;border:1.5px dashed #9db8e8;border-radius:8px;background:#f5f9ff;color:#2563eb;font-weight:600;cursor:pointer}.add-line-row:hover{background:#e9f1ff;border-color:#2563eb}.add-line-row span{font-weight:400;color:#6b7a90;margin-left:4px;font-size:12px}.items-tbl td.c-sl{white-space:nowrap}.so-dialog .so-items td.c-chk .icon-btn{padding:0 2px;min-width:0;width:auto}.so-dialog .items-tbl input.sl-in{width:28px}.so-dialog .so-items .drag-h{padding-right:2px}.so-dialog .so-items .c-chk input{width:auto}.so-modal .items-tbl td.c-desc textarea{width:126px;min-width:0}.so-modal .items-tbl tr.added td.c-uom .sel{min-width:50px!important;padding-left:4px;padding-right:2px}.so-modal .items-tbl input.sl-in{width:26px}.adj{display:flex;align-items:stretch}.items-tbl .adj input{width:100%;min-width:0;border-top-right-radius:0;border-bottom-right-radius:0;padding-left:3px;padding-right:3px;text-align:right;-moz-appearance:textfield}.adj input::-webkit-outer-spin-button,.adj input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.adj .adj-t{flex:none;min-width:18px;padding:0 3px;border:1px solid var(--line, #d6dbe3);border-left:0;border-radius:0 6px 6px 0;background:#f3f5f9;color:#4b5565;font-size:11px;font-weight:700;cursor:pointer}.adj .adj-t:hover:not(:disabled){background:#e6efff;color:#2563eb}.adj.amt .adj-t{background:#fff4e6;color:#c2410c}.adj .adj-t:disabled{cursor:default;opacity:.6}.items-tbl th.c-pct,.items-tbl td.c-pct{width:60px;padding-left:3px;padding-right:3px}.items-tbl td.c-pct .adj input{width:38px}.modal.imp-wide{max-width:1150px}.imp-items{max-height:52vh;overflow:auto;border:1px solid var(--line);border-radius:6px}.imp-items .tbl{font-size:12.5px}.imp-items th{position:sticky;top:0;z-index:1}.imp-items td{vertical-align:top}.imp-items .num{text-align:right;white-space:nowrap}.imp-items tr.imp-bad td{background:#fff5f5}.imp-act{display:inline-block;border-radius:10px;padding:1px 8px;font-size:11.5px;white-space:nowrap;background:#f3f4f6}.imp-act.new{background:#dcfce7;color:#166534}.imp-act.upd{background:#fde1cf;color:#9a3d0c}.imp-act.none,.imp-act.bad{background:#fee2e2;color:#991b1b}.imp-margin{display:flex;align-items:center;gap:12px;margin-top:10px;flex-wrap:wrap}.imp-margin label{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px}.imp-margin input{width:90px}.imp-margin .small{flex:1;min-width:260px}.trk-pill{display:inline-block;padding:1px 7px;border-radius:10px;font-size:11px;font-weight:600;white-space:nowrap;background:#eef0f3;color:#4b5565}.trk-pill.st-ind{background:#fff4e5;color:#92400e}.trk-pill.st-po{background:#e7f0ff;color:#1d4ed8}.trk-pill.st-part{background:#e9f7ef;color:#0f7a3d}.trk-pill.st-done{background:#d9f2e3;color:#0b6b35}.qt-tbl input.trk-recv{width:125px;padding:2px 4px;font:inherit;border:1px solid #cfd6de;border-radius:4px;background:#fff}.qt-tbl input.trk-recv:disabled{border-color:transparent;background:transparent;color:#4b5565}.kpis .qk.ds-bad{background:var(--bad-l);color:var(--bad)}.kpis .qk.ds-warn{background:#fff4e5}.kpis .qk.ds-mute{background:#eef0f3}.ds-tbl tr.ds-row-overdue td:first-child{box-shadow:inset 3px 0 0 var(--bad)}.ds-tbl tr.ds-row-week td:first-child{box-shadow:inset 3px 0 0 var(--warn)}.ds-tbl td.desc{max-width:260px}.trk-roll thead th{position:sticky;top:0;z-index:3;background:var(--card)}.trk-roll tr.roll-row{cursor:pointer}.trk-roll tr.roll-row>td{font-weight:600}.trk-roll .roll-caret{display:inline-block;width:10px;color:#8a94a6;font-weight:400}.trk-roll tr.roll-sub>td{background:#fafbfc;font-weight:400;color:#4b5565}.trk-roll tr.roll-sub>td:first-child{box-shadow:inset 3px 0 #e3e7ee}.trk-roll .trk-pill.sm{font-size:10px;padding:0 6px}.ld-pair{flex-wrap:wrap}.ld-pair .sel.ld-on{flex:0 0 76px}.ld-pair .sel.ld-per{flex:0 0 120px}.ld-pair .bg-pct input{width:78px}.ld-pair .bg-pct:last-child input{width:120px}.so-po{grid-template-columns:1.3fr .8fr .8fr .8fr 2fr}.so-po.so-head{grid-template-columns:2fr .8fr 1.3fr}.so-items th.c-hsn,.so-modal th.c-hsn{width:80px}.so-items td.c-hsn input,.so-modal td.c-hsn input{width:100%;min-width:64px}.so-items th.c-pg,.so-modal th.c-pg{width:72px}.so-items td.c-pg,.so-modal td.c-pg{white-space:nowrap;font-size:11px}.so-items tr.off td.c-pg,.so-items tr.off td.c-hsn input{opacity:.5}.so-items th.c-make,.so-modal th.c-make{width:96px}.so-items td.c-make input,.so-modal td.c-make input{width:100%;min-width:72px}.so-items tr.off td.c-make input{opacity:.5}.cpi textarea.pn-box{width:100%}@media (max-width: 900px){.so-po,.so-po.so-head{grid-template-columns:1fr 1fr}}.adj span.adj-t{display:flex;align-items:center;cursor:default}.adj span.adj-t:hover{background:#f3f5f9;color:#4b5565}.party{display:flex;flex-direction:column;gap:4px}.party textarea{width:100%;resize:vertical;min-height:40px;font:inherit;font-size:12.5px;padding:5px 7px}.party-row{display:grid;grid-template-columns:1fr .8fr 1.1fr;gap:4px}.party-row input{min-width:0}.so-bill{margin:0 0 12px}.so-bill>span{display:block;font-size:12px;color:#555;font-weight:600;margin-bottom:4px}.enq-side .party-row{grid-template-columns:1fr}.enq-side .so-bill{margin:0}.so-bill-from{margin:0 0 4px;line-height:1.45}.so-bill-from button.link{font-size:inherit}.addr-pick{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;row-gap:4px;margin:0 0 5px}.addr-pick .sel{flex:1 1 260px;min-width:0}.addr-pick .sel input{font-size:12.5px}.addr-pick>span{flex:0 1 auto}.so-flag{display:flex;align-items:center;gap:7px;margin:0 0 12px;font-size:12.5px;cursor:pointer}.so-flag input{margin:0}.so-items th.c-tally,.so-modal th.c-tally{width:160px}.so-dialog .so-items th.c-tally,.so-modal th.c-tally{width:auto}.so-items td.c-tally textarea.pn-box,.so-modal td.c-tally textarea.pn-box{min-width:96px;width:100%}.tly-stk{line-height:1.3;margin-top:2px;white-space:nowrap}.tly-else{margin-top:6px;padding-top:6px;border-top:1px dashed #d7dde8;text-align:left;line-height:1.45}.tly-else b{font-weight:600}th.c-del,td.c-del{min-width:240px;width:240px}.so-dialog th.c-del,.so-dialog td.c-del{min-width:226px;width:226px}.so-modal th.c-del,.so-modal td.c-del{min-width:216px;width:216px}.sched-item.open{background:#f6f8fb;border:1px solid #e1e6ee;border-radius:6px;padding:3px}.ship-btn{border:1px solid #d5dbe3;background:#fff;border-radius:5px;padding:1px 3px;font-size:12px;line-height:1.3;cursor:pointer;opacity:.55;filter:grayscale(1)}.ship-btn:hover{opacity:1}.ship-btn.has{opacity:1;filter:none;border-color:var(--accent, #2b6cb0);background:#eef5ff}.ship-sum{white-space:normal;font-size:11px;color:var(--mute, #667);line-height:1.25;cursor:pointer;padding-left:2px;overflow-wrap:anywhere;max-width:100%}.ship-to{display:flex;flex-direction:column;gap:3px;margin-top:3px;white-space:normal}.ship-to textarea{width:100%;resize:vertical;min-height:36px;font:inherit;font-size:12px;padding:3px 5px}.ship-to input{width:100%;font-size:12px;padding:3px 5px}.ship-h{display:flex;gap:8px;align-items:baseline;font-size:11.5px;flex-wrap:wrap}.ship-h .link{font-size:11px}.ds-ship{max-width:220px;white-space:normal;line-height:1.3}.ds-ship .small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}.ship-same{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--mute, #667);font-weight:500;white-space:nowrap;cursor:pointer;margin:1px 0 2px}.ship-same input{width:auto!important;margin:0}.btn.orange{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.btn.orange:hover{background:var(--brand-d);border-color:var(--brand-d)}.items-tbl th.c-del{width:140px}td.need .sel input,td.need>input{border-color:var(--bad)!important;background:#fff5f5}td.need{box-shadow:inset 0 0 0 2px #dc262659}.del-all .sel{width:170px}.hist-tbl td{vertical-align:top;font-size:12px}.hist-ch{margin:2px 0 0;padding-left:16px}.hist-ch li{margin:1px 0}.hist-act{display:inline-block;padding:1px 7px;border-radius:10px;font-size:11px;font-weight:600;background:#eef2f7;color:var(--ink2)}.hist-act.ok{background:#e8f7ee;color:#15803d}.hist-act.info{background:#e7f0ff;color:#1d4ed8}.hist-act.bad{background:#fde8e8;color:#b91c1c}.hist-act.warn{background:#fdf0e6;color:#c2410c}.toast.warn{background:var(--warn)}.skip-box{margin-top:12px;border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:8px;padding:10px 12px;background:#fffaf3}.skip-box.check{border-left-color:#2563eb;background:#f3f7ff}.calc-auto{font-weight:400;color:var(--muted, #6b7280);font-size:10.5px}.pg-warn{margin-top:6px}.skip-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.skip-scroll{max-height:260px;overflow:auto;margin-top:8px;background:#fff;border-radius:6px}.skip-scroll .tbl td,.skip-scroll .tbl th{font-size:12px;padding:4px 8px}.w-180{width:180px}.w-220{width:220px;min-width:200px}.src-sp{background:#f5e8ff;color:#7e22ce}.vendor-tabs{margin:14px 0 0;padding:0 0 0 2px;border-bottom:2px solid var(--line)}.vendor-tabs>button:not(.btn){border-radius:6px 6px 0 0;padding:7px 14px}.vendor-tabs .count.sp,.vtag.sp{background:#f5e8ff;color:#7e22ce}.vendor-pane{border:1px solid var(--line);border-top:0;border-radius:0 0 8px 8px;padding:10px 12px 12px}.vendor-note{margin-bottom:8px}.fx-note{margin:6px 0 2px}.fx-hint{align-self:end;padding-bottom:7px;line-height:1.35}.cur-cell{font-size:11.5px;font-weight:600;white-space:nowrap}.cur-cell.fx{color:#b45309}.cur-cell.bad{color:#b91c1c}.vtag.from{background:#e6f6ed;color:#15803d}.vtag.bad{background:#fde8e8;color:#b91c1c}.warn-box{font-size:12px;line-height:1.7;color:var(--ink2);background:var(--warn-l);border:1px solid #f3dcae;border-left:3px solid var(--warn);border-radius:5px;padding:8px 10px;margin:6px 0 2px}.warn-box .btn{vertical-align:middle}.vendor-cell{white-space:nowrap}.vendor-cell.from{color:#15803d;font-weight:600}.cost-tbl tr.cont-row td{border-top:1px dotted #e3e7ee}.cost-tbl td.same-part{font-weight:500;opacity:.85}.cost-tbl td.same-part .cont{color:var(--mute);margin-right:3px}.vtag{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:600;padding:0 5px;border-radius:8px;background:#e7f0ff;color:#1d4ed8;vertical-align:middle}.sp-tbl{margin-top:8px}.sp-tbl input{min-width:0;width:100%}.sp-tbl td{padding:3px 4px}.expired-row td{opacity:.55}.sp-add{margin-top:8px}.vendor-card{width:1180px;max-width:100%}.vendor-card .grid-tbl{min-width:1120px}.vendor-card .pad{max-width:1100px}.vendor-card .grid-tbl th:last-child,.vendor-card .grid-tbl td.actions{position:sticky;right:0;background:#fff;box-shadow:-6px 0 6px -6px #0000002e}.vendor-card .grid-tbl th:last-child,.vendor-card .grid-tbl td.actions{min-width:190px}.vendor-card .grid-tbl tbody tr:hover td.actions{background:#f7f9fc}.line-vendor{display:flex;align-items:center;gap:4px;margin-top:3px}.line-vendor select{font-size:11px;padding:1px 4px;border:1px solid var(--line);border-radius:5px;background:#fff;max-width:110px}.vendor-card .grid-tbl td{padding:4px 6px}.vendor-card .grid-tbl input.num{width:90px;margin-left:auto;display:block}.qty-disc{margin-top:10px;padding-top:8px;border-top:1px dashed var(--line, #d5dae2)}.qd-tbl{width:auto;min-width:660px;margin:6px 0}.qd-tbl input{width:100px}.qd-tbl select{padding:3px 6px;border:1px solid var(--line, #d5dae2);border-radius:6px;background:#fff;font-size:12px}.qty-step{display:inline-block;font-size:11px;color:#7c3aed;background:#f3e8ff;border-radius:4px;padding:0 5px;margin-top:2px;white-space:nowrap}.items-tbl.enq-items{min-width:1700px}.mdiff{font-size:10.5px;line-height:1.2;margin-top:2px;color:#b45309;white-space:nowrap}.cm-flag{display:flex;align-items:flex-start;gap:4px;font-size:10.5px;line-height:1.25;margin-top:3px;padding:2px 5px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:5px;white-space:normal}.cm-flag b{font-weight:700}.cm-flag .cm-x{margin-left:auto;border:0;background:none;color:#b91c1c;font-size:12px;line-height:1;cursor:pointer;padding:0 1px}.cm-flag .cm-x:hover{color:#7f1d1d}.netair-hint{font-size:10.5px;line-height:1.2;margin-top:2px;color:#15803d;font-weight:600;white-space:nowrap}.sale-hint{display:inline-block;font-size:10.5px;line-height:1.3;margin-top:2px;padding:0 5px;border:1px solid #bbf7d0;background:#f0fdf4;color:#15803d;border-radius:4px;font-weight:600;white-space:nowrap;cursor:pointer}.sale-hint:hover{background:#dcfce7}.sale-hint:disabled{cursor:default}.wild-tip{font-size:11px;color:var(--mute);background:var(--brand-l);border:1px solid #c7d2fe;border-radius:6px;padding:2px 7px;white-space:nowrap}.mbox{display:flex;gap:4px;margin-top:3px}.mbox label{display:flex;flex-direction:column;font-size:10px;color:var(--mute);gap:1px}.items-tbl .mbox input[type=number]{width:46px!important;padding:2px 3px;font-size:11.5px;text-align:right}.seg.cat-seg{display:inline-flex;border:1px solid #c7d2fe;border-radius:8px;overflow:hidden;margin-right:10px}.seg.cat-seg button{border:0;background:#fff;padding:6px 14px;font-weight:600;color:#475569;cursor:pointer}.seg.cat-seg button+button{border-left:1px solid #c7d2fe}.seg.cat-seg button.on{background:#4f46e5;color:#fff}.src-pr{background:#e0f2fe;color:#0369a1}.src-cv{background:#fef3c7;color:#a16207}.sec-title{margin:16px 0 6px;font-size:14px}.bom-tbl{width:100%}.bom-tbl input{width:100%;box-sizing:border-box}.bom-tbl .w-30{width:30px}.bom-tbl .w-70{width:70px}.bom-tbl .w-80{width:80px}.bom-tbl .w-90{width:90px}.bom-tbl .w-110{width:110px}.bom-tbl .w-130{width:130px}.bom-tbl .w-200{width:200px}.bom-tbl .w-220{width:220px}.bom-tbl input.edited{background:#fffbeb;border-color:#f59e0b}.bom-tbl .master-note{display:block;border:0;background:none;padding:0;color:#b45309;cursor:pointer;font-size:11px;text-align:right;width:100%;font-family:inherit;white-space:nowrap}.bom-tbl tfoot td{border-top:2px solid #e2e8f0}.bom-actions{display:flex;gap:6px;align-items:center;margin:6px 0 4px}.built-total{margin-top:10px;padding:8px 12px;background:#f0f9ff;border-radius:6px}.conv-types{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.conv-type{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;text-align:left}.conv-type span{font-size:11px;color:#64748b}.conv-type.on{border-color:#4f46e5;background:#eef2ff;box-shadow:0 0 0 1px #4f46e5}.tag.conv-split{background:#e0f2fe;color:#0369a1}.tag.conv-join{background:#dcfce7;color:#15803d}.tag.conv-interchange{background:#f3e8ff;color:#7e22ce}.tag.conv-other{background:#f1f5f9;color:#475569}.bad-t{color:#dc2626}.imp-sum{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:12px 0 8px;font-size:13px}.imp-seg{margin-bottom:8px}.imp-list{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow:auto}.imp-card{border:1px solid #d5dae2;border-left:4px solid var(--ok);border-radius:8px;background:#fff}.imp-card.bad{border-left-color:#dc2626}.imp-card.warn{border-left-color:var(--warn)}.imp-head{display:flex;gap:8px;align-items:center;padding:7px 10px;cursor:pointer;font-size:13px}.imp-st{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;background:var(--ok)}.imp-card.bad .imp-st{background:#dc2626}.imp-card.warn .imp-st{background:var(--warn)}.imp-msg{margin:0 10px 4px;padding:4px 8px;border-radius:5px;font-size:12px}.imp-msg.bad{background:#fde8e8;color:#b91c1c}.imp-msg.warn{background:#fff4d6;color:#8a5a00}.imp-lines{margin:4px 10px 10px;width:calc(100% - 20px);font-size:12px}.imp-lines tr.bad-row td{background:#fde8e8}.imp-lines tr.warn-row td{background:#fff8e6}.op-card{overflow:auto;max-height:calc(100vh - 196px)}.op-tbl{font-size:11.5px;border-collapse:separate;border-spacing:0}.op-tbl th,.op-tbl td{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.op-tbl thead tr.band-row th,.trk-tbl thead tr.band-row th{position:sticky;top:0;z-index:4;font-size:11px;font-weight:700;padding:3px 6px;text-align:center;letter-spacing:.02em}.op-tbl thead tr.band-row th.band,.trk-tbl thead tr.band-row th.band{color:#1f2937}.op-tbl thead tr.band-row th.bd-cust,.trk-tbl thead tr.band-row th.bd-cust{background:#ddebf7}.op-tbl thead tr.band-row th.bd-int,.trk-tbl thead tr.band-row th.bd-int{background:#e2efda}.op-tbl thead tr.band-row th.bd-pur{background:#fff2cc}.op-tbl thead tr.band-row th.bd-ind,.trk-tbl thead tr.band-row th.bd-ind{background:#fce4d6}.op-tbl thead tr.band-row th.bd-po,.trk-tbl thead tr.band-row th.bd-po{background:#fff2cc}.trk-tbl thead tr.band-row th.bd-flw{background:#ede9fe}.op-tbl thead tr.band-row th:not(.band),.trk-tbl thead tr.band-row th:not(.band){background:var(--card)}.op-tbl thead tr:nth-child(2) th,.trk-tbl thead tr:nth-child(2) th{position:sticky;top:22px;z-index:3}.op-tbl td.calc.fs-cell{padding:0 2px 0 0}.op-tbl td{padding:0;vertical-align:middle}.op-tbl td.rn,.op-tbl td.rb{padding:0 4px;text-align:center}.op-tbl th.rn,.op-tbl th.rb{width:30px}.op-tbl td.ec{padding:0}.op-tbl .ce{width:100%;min-width:58px;border:0;background:transparent;font:inherit;color:inherit;padding:3px 5px;outline:none;resize:none;overflow:hidden}.op-tbl .ce:hover{background:#f8fafc}.op-tbl .ce:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--brand);border-radius:2px;position:relative;z-index:1}.op-tbl .ce.num{text-align:right;min-width:52px}.op-tbl .ce.dt{min-width:104px}.op-tbl .ce.mono{font-variant-numeric:tabular-nums}.op-tbl .ce.ed{background:#fffbe6;font-weight:600}.op-tbl .ce.w-xs{min-width:40px}.op-tbl .ce.w-sm{min-width:90px}.op-tbl .ce.w-cust{min-width:150px}.op-tbl .ce.w-desc{min-width:160px}.op-tbl .ce.w-rem{min-width:120px}.op-tbl .ce.w-loc{min-width:110px}.op-tbl select.ce{min-width:68px;max-width:170px}.op-tbl td.ec.ro{padding:3px 5px;background:#fafbfc;color:var(--ink2);cursor:help;white-space:nowrap}.op-tbl td.ec.ro.num{text-align:right}.op-tbl td.calc{background:#f1f5f9;font-style:italic;font-weight:600;padding:3px 6px;cursor:help}.op-tbl th.calc .ch-l{font-style:italic}.op-tbl td.dup .ce{background:#ffc7ce;color:#9c0006;font-weight:700}.op-tbl tr.row-ed td.rn{background:#fde68a;font-weight:700;color:#92400e}.op-tbl .x-row{border:0;background:transparent;color:var(--mute);cursor:pointer;font-size:14px;line-height:1;padding:2px 4px;border-radius:4px}.op-tbl .x-row:hover{background:#fde8e8;color:#b91c1c}.dirty-note{font-size:11.5px;font-weight:600;color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:2px 8px}.op-tbl .ce.dt.blank{color:transparent}.op-tbl .ce.dt.blank:hover,.op-tbl .ce.dt.blank:focus{color:inherit}.op-tbl .ce.look::placeholder{color:#0f766e;opacity:1;font-style:italic}.op-tbl .ce.look{background:#f0fdfa}.op-tbl .ce.look:hover{background:#e6fffb}.op-tbl td.fs-cell{padding:0 2px 0 0}.op-tbl .fs-wrap{display:flex;align-items:center;gap:2px}.op-tbl .fs-wrap .ce.num{min-width:44px}.op-tbl .fs-wrap .tally-stk{flex:1;min-width:44px;text-align:right;padding:3px 5px;cursor:help}.op-tbl td.pi-cell,.trk-tbl td.pi-cell{padding:0 2px 0 0}.op-tbl .pi-wrap,.trk-tbl .pi-wrap{display:flex;align-items:center;gap:2px}.op-tbl .pi-wrap .ce{min-width:86px}.op-tbl .eye,.trk-tbl .eye{border:0;background:transparent;cursor:pointer;font-size:12px;line-height:1;padding:2px 3px;border-radius:4px;opacity:.75}.op-tbl .eye:hover:not(:disabled),.trk-tbl .eye:hover:not(:disabled){background:#e0f2fe;opacity:1}.op-tbl .eye:disabled,.trk-tbl .eye:disabled{opacity:.18;cursor:default}.alloc-tbl{margin-top:10px}.alloc-tbl tfoot td{border-top:1px solid var(--line);border-bottom:0}.pi-tbl input{width:80px;padding:3px 5px;border:1px solid var(--line);border-radius:4px}.pi-tbl input.num{text-align:right}.pi-tbl tr.off{opacity:.45}.pi-charges{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;margin-top:12px;padding-top:10px;border-top:1px dashed var(--line)}.pi-charges label{display:flex;flex-direction:column;gap:3px;font-size:12px}.pi-charges label span{color:#555}.pi-charges label.wide{flex:1 1 240px}.pi-charges input{padding:4px 6px;border:1px solid var(--line);border-radius:4px}.pi-charges input.num{width:110px;text-align:right}.pi-charges .pi-total{margin-left:auto;display:flex;align-items:baseline;gap:8px;font-size:13px}.pi-charges .pi-total b{font-size:16px}.pi-charges .pi-total.soft{flex:0 0 100%;margin-left:0;justify-content:flex-end;color:#555;font-size:12px}.pi-charges .pi-total.soft b{font-size:13px;color:#222}.pi-basis{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:10px 0 2px}.pi-basis label{display:flex;align-items:center;gap:6px;font-size:12.5px;padding:4px 10px;border:1px solid var(--line);border-radius:20px;cursor:pointer}.pi-basis label.on{border-color:var(--brand, #c2410c);background:#fdf7f2;font-weight:600}.pi-basis label input{margin:0}.pi-basis .pi-pct{display:flex;align-items:baseline;gap:6px}.pi-basis .pi-pct input{width:70px;text-align:right;padding:4px 6px;border:1px solid var(--line);border-radius:4px}.pi-basis label.pi-flag{border-style:dashed}.pi-sec{margin-top:12px;border-top:1px dashed var(--line)}.pi-sec>summary{cursor:pointer;padding:8px 0 2px;font-size:12.5px;font-weight:600;color:#444}.pi-sec .pi-charges{border-top:0;margin-top:6px;padding-top:0}.pi-sec .pi-sec-h{flex:0 0 100%;font-size:11.5px;font-weight:600;color:var(--brand, #c2410c);text-transform:uppercase;letter-spacing:.4px}.pi-charges textarea,.pi-charges select{padding:4px 6px;border:1px solid var(--line);border-radius:4px;font:inherit}.pi-charges label.wide textarea{width:100%;resize:vertical}.ship-band{background:#fcfcfd;border:1px solid var(--line);border-radius:8px;padding:10px 12px 12px}.ship-band .pi-sec-h{flex:0 0 100%;font-size:11.5px;font-weight:600;color:var(--brand, #c2410c);text-transform:uppercase;letter-spacing:.4px}.ship-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.ship-row .chip{display:inline-flex;align-items:center;gap:4px}.ship-row .chip.bad{border-color:#e7b4b4;background:#fff6f6;color:#a33}.ship-row .chip .x{border:0;background:none;cursor:pointer;color:#999;font-size:14px;line-height:1;padding:0 2px}.ship-row .chip .x:hover{color:#c33}.ship-ask{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;background:#fff8ec;border:1px solid #f0d9ae;border-radius:6px;padding:8px 10px}.warn-line{color:#a9690a;font-weight:600}.op-tbl td.amd-cell{padding:0 2px 0 0}.op-tbl .amd-wrap{display:flex;align-items:center;gap:2px}.op-tbl td.ind-btn{padding:2px 5px;text-align:center;white-space:nowrap;background:#fff7f2}.op-tbl td.ind-btn .btn.sm{padding:2px 8px;font-size:11px}.op-tbl th.ind-btn{white-space:nowrap}.op-tbl td.rtd,.trk-tbl td.rtd{padding:2px 5px;text-align:center;white-space:nowrap}.op-tbl td.rtd .btn.sm,.trk-tbl td.rtd .btn.sm{padding:2px 8px;font-size:11px}.op-tbl th.rtd,.trk-tbl th.rtd{white-space:nowrap}.rtd-why{font-size:10px;line-height:1.2;margin-top:1px}.rtd-on{border:0;cursor:pointer;font-family:inherit}.rtd-on[disabled]{cursor:default}.trk-tbl .lnk{background:none;border:0;padding:0;color:var(--brand);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.trk-tbl td .pill{cursor:pointer;border:0;font:inherit;font-size:11px}.amd-head{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 4px}.amd-head label{display:flex;flex-direction:column;gap:3px;font-size:12px}.amd-head label span{color:var(--ink2);font-weight:600}.amd-head label.grow{flex:1;min-width:220px}.amd-tbl{margin-top:6px}.amd-tbl input{width:100%;max-width:150px;padding:3px 5px;border:1px solid var(--line);border-radius:4px;font:inherit}.amd-tbl td{vertical-align:middle}.amd-tbl input.num{max-width:110px;text-align:right}.amd-tbl td.num input{margin-left:auto;display:block}.amd-tbl tr.amd-ed td{background:#fffbeb}.amd-note{display:flex;flex-direction:column;gap:3px;margin-top:10px;font-size:12px}.amd-note span{color:var(--ink2);font-weight:600}.amd-h{margin:14px 0 6px;font-size:12.5px}.amd-trail{border-left:3px solid var(--line);padding:4px 0 4px 8px;margin-bottom:8px}.amd-trail-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:12px}.perm-grid{margin-top:10px}.perm-grid th{text-align:center}.perm-grid th:first-child{text-align:left}.perm-grid td{vertical-align:middle;text-align:center}.perm-grid td.perm-name{text-align:left;white-space:nowrap;font-size:12.5px}.perm-grid tr.perm-group td{background:#f6f7f9;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink2);text-align:left}.perm-grid .seg button{padding:4px 7px;font-size:11px}.perm-grid .actions{white-space:nowrap}.perm-grid .plvl{font-size:11.5px;font-weight:600;color:var(--ink2)}.perm-grid .plvl.none{color:var(--mute);font-weight:400}.perm-grid .plvl.self{color:#b45309}.perm-grid .plvl.all{color:#15803d}.wo-page .board{padding:6px 8px 8px}.wo-board .col{min-width:176px}.wo-board .card{padding:5px 7px 4px}.wo-card .cust{font-size:12px}.wo-card .qty{font-size:10.5px;font-weight:700;color:var(--ink);flex:none}.wo-card .trn{font-size:10px;color:var(--mute);flex:none}.wo-card .pri.hold{background:var(--bad-l);color:var(--bad)}.wo-card .pri.out{background:#f3e8ff;color:#7c3aed;text-transform:none}.wo-card .pri.cx{background:#f1f5f9;color:var(--mute)}.wo-card.s-hold{border-left-color:var(--bad);background:snow}.wo-card.s-done{border-left-color:var(--ok)}.wo-card.s-cx{border-left-color:#cbd5e1;opacity:.62}.wo-card.st-out{border-left-color:#a855f7}.wo-card .row.bottom{flex-wrap:wrap;row-gap:2px}.wo-card .trn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.wo-board .col-val{white-space:nowrap;font-size:10px}.wo-modal .modal-head .pill{margin-left:8px}.wo-card .wo-note{font-size:10.5px;color:var(--bad);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wo-card .wo-acts{display:none;gap:4px;margin-top:4px}.wo-card:hover .wo-acts{display:flex}.wo-card .wo-acts .btn{flex:1;padding:2px 4px;font-size:11px}.wo-card .wo-acts .btn.ok{background:var(--ok-l);border-color:#bbe7cb;color:#15803d;font-weight:600}.d-mini .wo-card .wo-acts{display:none}.bom-page .kchip b{font-variant-numeric:tabular-nums}.bom-modal{max-height:88vh}.bom-sec{margin:14px 0 6px;font-size:12.5px;font-weight:700;color:var(--ink);border-top:1px solid var(--line);padding-top:10px}.bom-sec:first-child{border-top:0;padding-top:0;margin-top:0}.bom-lines{margin-bottom:4px}.bomr-tbl{width:100%;table-layout:auto}.bomr-tbl th{font-size:11px;white-space:nowrap}.bomr-tbl td{padding:2px 4px;vertical-align:middle}.bomr-tbl input{width:100%;box-sizing:border-box;padding:3px 5px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11.5px;background:#fff}.bomr-tbl input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.bomr-tbl input:disabled{background:#f8fafc;color:var(--ink2)}.bomr-tbl input.num{text-align:right;font-variant-numeric:tabular-nums}.bomr-tbl td.actions{width:28px}.bomr-tbl td.actions .btn{padding:1px 6px;line-height:1.4}.bom-draws{display:flex;flex-wrap:wrap;gap:10px}.bom-draw{width:164px;display:flex;flex-direction:column;gap:4px;padding:8px;border:1px solid var(--line);border-radius:9px;background:#fff}.bom-draw .thumb{height:92px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:6px;background:#f8fafc;cursor:pointer;overflow:hidden}.bom-draw .thumb:hover{border-color:var(--brand)}.bom-draw .thumb img{max-width:100%;max-height:100%;object-fit:contain}.bom-draw .thumb .ic{font-size:30px}.bom-draw .ttl{width:100%;box-sizing:border-box;padding:3px 5px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11.5px}.bom-draw .ttl:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.bom-draw .fn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bom-draw .row-acts{display:flex;align-items:center;gap:4px}.bom-draw .row-acts .btn{padding:0 6px;line-height:1.6}.bom-draw-add{width:164px;min-height:148px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center}.bom-view .modal-body{display:flex;align-items:center;justify-content:center;min-height:60vh;background:#f1f5f9}.bom-view img{max-width:100%;max-height:72vh;object-fit:contain}.bom-view iframe{width:100%;height:72vh;border:0;background:#fff}.bom-cost{flex-wrap:wrap;row-gap:6px;margin-top:8px}.bom-foot{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.bom-off{color:var(--mute)}.valve-sheet{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px}.vs-top{display:flex;flex-wrap:wrap;gap:8px 10px;padding-bottom:10px;border-bottom:1px solid var(--line)}.vs-fld{display:flex;flex-direction:column;gap:2px;min-width:130px;flex:1 1 130px}.vs-fld.wide{flex:1 1 260px;min-width:200px}.vs-fld>span{font-size:10.5px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--mute)}.vs-fld>b{font-size:12.5px;min-height:18px;color:var(--ink);word-break:break-word}.vs-fld input{width:100%;box-sizing:border-box;padding:3px 6px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:12px;background:#fff}.vs-fld input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.vs-built{margin:6px 0 0}.vs-body{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px;margin-top:10px}.vs-draw{flex:1 1 400px;min-width:330px;max-width:560px}.vs-ports{display:grid;grid-template-columns:84px 1fr auto 1fr 118px;align-items:center;gap:4px;margin-bottom:6px}.vs-acc-h,.vs-act-h{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--mute);text-align:center}.vs-pa{text-align:right}.vs-pb{text-align:left}.vs-pa,.vs-pb{font-size:11px;font-weight:600;color:var(--ink2);white-space:nowrap}.vs-psize{text-align:center}input.vs-psize{width:92px;box-sizing:border-box;padding:2px 5px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11.5px}input.vs-psize:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}b.vs-psize{font-size:11.5px}.vs-band{display:grid;grid-template-columns:84px 1fr 118px;align-items:stretch;gap:4px;margin-bottom:4px}.vs-acc{display:flex;align-items:center;justify-content:flex-end;font-size:10.5px;color:var(--ink2);text-align:right;line-height:1.3}.vs-acc input{width:100%;box-sizing:border-box;padding:2px 4px;border:1px dashed var(--line);border-radius:5px;font:inherit;font-size:10.5px;text-align:right;background:transparent}.vs-acc input:focus{outline:0;border-style:solid;border-color:var(--brand);background:#fff}.vs-box{border:1.5px solid #94a3b8;border-radius:6px;background:#f8fafc;padding:4px 6px 5px;display:flex;flex-direction:column;gap:2px}.vs-band.end .vs-box{background:var(--brand-l);border-color:var(--brand)}.vs-band.off .vs-box{background:#fff;border-style:dashed;border-color:#cbd5e1}.vs-name{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--ink2)}.vs-fit{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--mute);cursor:pointer}.vs-fit input{margin:0}.vs-code input,.vs-port input,.vs-pn input{box-sizing:border-box;padding:2px 5px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11.5px;background:#fff}.vs-code input:focus,.vs-port input:focus,.vs-pn input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.vs-code{font-size:12.5px}.vs-code input{width:100%;font-weight:600}.vs-code b{font-size:12.5px;font-weight:700}.vs-port{display:flex;align-items:center;gap:5px;font-size:11px}.vs-port input{width:110px}.vs-o{width:13px;height:13px;flex:none;border:1.5px solid #64748b;border-radius:50%}.vs-pn{display:flex;align-items:center;gap:4px;font-size:11px}.vs-pn input{width:130px}.vs-x{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:#cbd5e1}.vs-x .btn{font-size:10.5px;padding:1px 6px;font-weight:500}.vs-act{display:flex;flex-direction:column;justify-content:center;gap:2px;font-size:11px;color:var(--ink2)}.vs-act input{width:100%;box-sizing:border-box;padding:2px 4px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11px;background:#fff}.vs-act input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.vs-bottom{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:2px}.vs-bottom input{width:110px;box-sizing:border-box;padding:2px 5px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11.5px;text-align:center}.vs-bottom input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.vs-boms{flex:1 1 440px;min-width:320px;display:flex;flex-direction:column;gap:10px}.vs-counts{display:flex;flex-wrap:wrap;gap:5px}.vs-counts .kchip{background:#f3f4f6;border-radius:5px;padding:3px 8px;font-size:11px;color:var(--ink2)}.vs-counts .kchip b{color:var(--ink);font-variant-numeric:tabular-nums}.vs-counts .kchip.warn{background:var(--warn-l)}.vs-counts .kchip.warn b{color:var(--warn)}.vs-bom>.lbl{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;row-gap:4px;margin:0 0 4px;font-size:12px}.vs-tbl{width:100%;table-layout:auto}.vs-tbl th{font-size:10.5px;white-space:nowrap}.vs-tbl td{padding:2px 4px;font-size:11.5px;vertical-align:middle}.vs-tbl input,.vs-tbl select{width:100%;box-sizing:border-box;padding:2px 4px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11.5px;background:#fff}.vs-tbl input:focus,.vs-tbl select:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.vs-tbl input.num,.vs-tbl td.num,.vs-tbl th.num{text-align:right;font-variant-numeric:tabular-nums}.vs-tbl td.actions{width:26px}.vs-tbl td.actions .btn{padding:1px 5px;line-height:1.4}.vs-tbl tr.vs-none td{color:var(--mute)}.vs-tbl tfoot tr.vs-sum td{background:#f8fafc;border-top:1px solid var(--line)}.vs-notes{margin-top:12px;border-top:1px solid var(--line);padding-top:8px}.vs-notes>.lbl{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin:0 0 6px;font-size:12px}.vs-note{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:12px}.vs-note .num{width:18px;flex:none;text-align:right;font-size:11px;color:var(--mute)}.vs-note input{flex:1;box-sizing:border-box;padding:3px 6px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:12px}.vs-note input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.wo-bom{margin:10px 0 4px;padding:8px 10px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:8px;background:var(--brand-l)}.wo-bom>.lbl{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;font-size:12px;color:var(--ink)}.wo-bom>.lbl .muted{flex:1}.wo-bom-tog{padding:1px 8px;font-size:11px;white-space:nowrap}.wo-bom-tbl{width:100%;margin-top:8px;background:#fff;border-radius:6px}.pill.warn{background:var(--warn-l);color:var(--warn)}.pill.sm{font-size:10px;padding:1px 6px;vertical-align:middle}.btn.ghost.danger{color:var(--bad)}.btn.ghost.danger:hover{border-color:var(--bad)}.wo-bom-note{margin:0 0 6px;padding:8px 10px;border-radius:8px;background:var(--brand-l);border-left:3px solid var(--brand);font-size:12px;color:var(--ink2);line-height:1.5}.wo-bom-note b{color:var(--ink)}.wo-bom-chg{color:var(--warn);font-weight:700}.wo-mat{margin-top:14px}.mat-bar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;row-gap:6px;margin:6px 0}.mat-head{padding:8px 10px;border-radius:8px;font-size:12.5px;line-height:1.5;border-left:3px solid var(--line);background:var(--bg)}.mat-head.ok{background:var(--ok-l);border-left-color:var(--ok)}.mat-head.warn{background:var(--warn-l);border-left-color:var(--warn)}.mat-head.bad{background:var(--bad-l);border-left-color:var(--bad)}.wo-mat .tbl th{font-size:10.5px;white-space:nowrap}.wo-mat .tbl td{font-size:11.5px;padding:4px 7px;vertical-align:top}.wo-mat tr.short-row td{background:var(--warn-l)}.wo-mat tr.muted-row td{background:var(--bg)}.exs-page .card{margin-bottom:12px}.exs-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;row-gap:8px;margin-top:10px}.exs-row-btns{display:flex;align-items:center;flex-wrap:wrap;gap:4px;row-gap:4px}.exs-page .tbl th{font-size:10.5px;white-space:nowrap}.exs-page .tbl td{font-size:11.5px;padding:4px 7px;vertical-align:top}.exs-page tr.short-row>td{background:var(--warn-l)}.exs-page tr.bad-row>td{background:var(--bad-l)}.exs-page tr.muted-row>td{background:var(--bg)}.exs-page tr.exs-sub>td{background:var(--bg);padding:6px 10px 10px}.exs-page tr.exs-sub .tbl{background:var(--card)}.exs-out .mat-head{margin-bottom:10px}.exs-out .bom-sec{margin-top:14px}.wo-draws{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px}.wo-draws .btn{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fff}.wo-bom-tbl th{font-size:10.5px;white-space:nowrap}.wo-bom-tbl td{font-size:11.5px;padding:3px 6px}.wo-bom-tbl td.num,.wo-bom-tbl th.num{text-align:right;font-variant-numeric:tabular-nums}.wo-mach{margin:8px 0 4px;padding:8px 10px;border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:8px;background:var(--warn-l)}.wo-mach>.lbl{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;font-size:12px;color:var(--ink)}.wo-mach>.lbl .muted{flex:1}.wo-dots{display:inline-flex;gap:2px;flex:none}.wo-dot{width:13px;height:13px;border-radius:50%;font-style:normal;font-size:8px;font-weight:700;display:grid;place-items:center;background:#e9edf2;color:#fff;border:1px solid #dde2e9}.wo-dot.tap{cursor:pointer}.wo-dot.tap:hover{outline:2px solid var(--c);outline-offset:1px}.wo-dot.d-done{background:var(--c);border-color:var(--c)}.wo-dot.d-wip{background:#fff;border-color:var(--c);color:var(--c);font-size:12px}.wo-dot.d-na{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8}.wo-dot.d-out{background:#f3e8ff;border-color:#d8b4fe;color:#7c3aed}.wo-dot.d-hold{background:var(--bad-l);border-color:#f6c9c9;color:var(--bad)}.tbl .wo-dots{vertical-align:middle}.pill.wo-st-wip{background:#e7f0ff;color:#1d4ed8}.pill.wo-st-hold{background:var(--bad-l);color:var(--bad)}.pill.wo-st-done{background:var(--ok-l);color:#15803d}.pill.wo-st-cx{background:#f1f5f9;color:var(--mute)}.tbl tr.wo-row{cursor:pointer}.tbl tr.wo-row.s-cx td{opacity:.6}.wo-modal .wo-steps{margin-top:14px}.wo-step-tbl td{padding:3px 6px;border-bottom:1px solid #f1f3f6;vertical-align:middle}.wo-step-tbl .wo-step-name{white-space:nowrap;font-weight:600;font-size:12px;width:120px}.wo-step-tbl .wo-step-name .dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.wo-step-tbl tr.is-done .wo-step-name{color:var(--ok)}.wo-step-tbl .seg button{padding:3px 7px;font-size:11px}.wo-step-tbl .seg button.on.s-done{background:var(--ok);color:#fff}.wo-step-tbl .seg button.on.s-hold{background:var(--bad);color:#fff}.wo-step-tbl .seg button.on.s-out{background:#7c3aed;color:#fff}.wo-step-tbl .seg button.on.s-wip{background:var(--brand);color:#fff}.wo-step-tbl .wo-step-who{width:23%}.wo-step-tbl .wo-step-who select{width:100%;font-size:11.5px;padding:3px 5px;border:1px solid #d5dae2;border-radius:5px;background:#fff;color:var(--ink);max-width:190px}.wo-step-tbl .wo-step-who select:disabled{background:#f6f7f9;color:var(--mute)}.wo-step-tbl .wo-step-extra{width:30%}.wo-step-tbl .wo-step-extra input{width:100%;font-size:11.5px;padding:3px 6px;border:1px solid #d5dae2;border-radius:5px}.wo-step-tbl .wo-step-when{white-space:nowrap;text-align:right}.wo-modal .wo-cancel{padding-top:6px}.wo-modal .wo-log{margin-top:12px;border-top:1px solid var(--line);padding-top:8px}.wo-modal .wo-log ul{list-style:none;margin:0;padding:0;max-height:150px;overflow:auto;font-size:11.5px}.wo-modal .wo-log li{padding:2px 0;border-bottom:1px dashed #f1f3f6}.wo-mini{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 8px}.wo-mini-chip{display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:4px 9px 4px 7px;border:1px solid var(--line);border-left:3px solid var(--c, var(--brand));border-radius:7px;background:#fff;font:inherit;font-size:11.5px;color:var(--ink);transition:background .12s,box-shadow .12s}.wo-mini-chip:hover{background:#f7f9fc}.wo-mini-chip.on{background:var(--brand-l);box-shadow:0 0 0 1px var(--c, var(--brand)) inset}.wo-mini-chip.nil{opacity:.5}.wo-mini-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--c, var(--brand))}.wo-mini-chip .nm{white-space:nowrap}.wo-mini-chip .qt{font-size:13px;font-variant-numeric:tabular-nums}.wo-mini-chip .ct{min-width:17px;text-align:center;padding:0 4px;border-radius:9px;background:#eef1f6;color:var(--mute);font-size:10.5px;line-height:15px}.wo-mini-tot{margin-left:auto;font-size:11.5px;color:var(--mute);white-space:nowrap}.wo-board .col.sel{box-shadow:0 0 0 2px var(--c) inset;border-radius:10px}.wrk-page .wrk-tag{display:inline-block;margin:0 4px 2px 0;padding:1px 7px;border-radius:9px;background:var(--brand-l);color:var(--brand-d);font-size:10.5px;font-weight:600;white-space:nowrap}.wrk-steps{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 4px}.wrk-step{display:inline-flex;align-items:center;gap:5px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 9px 4px 7px;border:1px solid var(--line);border-radius:14px;background:var(--card);font-size:11.5px;color:var(--ink2)}.wrk-step:hover{border-color:var(--brand)}.wrk-step.on{background:var(--brand-l);border-color:var(--brand);color:var(--ink);font-weight:600}.wrk-step input{margin:0}.wrk-step .dot{width:8px;height:8px;border-radius:50%;background:var(--c, var(--mute))}.wo-doneby .wo-who{display:inline-block;margin:0 4px 2px 0;padding:1px 7px;border-radius:9px;background:#eef1f6;color:var(--ink2);font-size:10.5px;white-space:nowrap}.wo-card .wo-who-last{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wo-mini .wo-only{border:1px solid var(--brand);background:var(--brand-l);color:var(--brand-d);border-radius:12px;padding:2px 10px;font-size:11.5px;cursor:pointer;white-space:nowrap}.wo-mini .wo-only:hover{background:#ffe3d2}.wo-card .wo-part{color:var(--ink);font-weight:600;font-size:11.5px}.wo-card .wo-model{color:var(--mute);font-size:10.5px}.wo-card.hot{border-left-width:3px}.wo-card.p-high{border-left-color:var(--warn)}.wo-card.p-urgent{border-left-color:var(--bad);box-shadow:0 1px 3px #dc26262e}.wo-card .pri.p-high{background:var(--warn-l);color:var(--warn)}.wo-card .pri.p-urgent{background:var(--bad-l);color:var(--bad);font-weight:700}.wo-card .pri.short{background:var(--info-l);color:var(--info)}.wo-card.p-urgent{background:#fff1f0}.wo-card.p-high{background:#fff8e9}.wo-card.p-low{background:#f4f7fb}.wo-card.p-urgent .cust{color:#b02a21}.sel.sel-pri.p-urgent input{background:#fff1f0;border-color:#f0b3ae;color:#b02a21;font-weight:600}.sel.sel-pri.p-high input{background:#fff8e9;border-color:#efd398;color:#9a6700;font-weight:600}.sel.sel-pri.p-normal input{background:#f4f6fa}.sel.sel-pri.p-low input{background:#f4f7fb;color:var(--ink2)}.sel-pop .sel-opt.p-any,.sel-pop .sel-opt.p-urgent,.sel-pop .sel-opt.p-high,.sel-pop .sel-opt.p-normal,.sel-pop .sel-opt.p-low{display:flex;align-items:center;gap:7px}.sel-pop .sel-opt.p-any:before,.sel-pop .sel-opt.p-urgent:before,.sel-pop .sel-opt.p-high:before,.sel-pop .sel-opt.p-normal:before,.sel-pop .sel-opt.p-low:before{content:"";width:9px;height:9px;border-radius:50%;flex:none;border:1px solid rgba(16,24,40,.14)}.sel-pop .sel-opt.p-any:before{background:transparent}.sel-pop .sel-opt.p-urgent:before{background:var(--bad)}.sel-pop .sel-opt.p-high:before{background:var(--warn)}.sel-pop .sel-opt.p-normal:before{background:#e2e8f0}.sel-pop .sel-opt.p-low:before{background:#cbd5e1}.sel.sel-st.st-done input{background:#e9f8ef;border-color:#9fd9b4;color:#156b37;font-weight:600}.sel-pop .sel-opt.st-done,td.st-cell.st-done{color:#156b37;font-weight:600}.req{color:var(--bad);font-weight:700}label.bad-f>input,label.bad-f .sel input{border-color:var(--bad);background:#fff7f7}.pill.wo-pri{font-weight:600}.pill.wo-pri.p-urgent{background:var(--bad-l);color:var(--bad)}.pill.wo-pri.p-high{background:var(--warn-l);color:var(--warn)}.pill.wo-pri.p-normal{background:#f1f3f7;color:var(--ink2)}.pill.wo-pri.p-low{background:#f1f3f7;color:var(--mute)}.wo-card .wo-trn-ref{margin-left:6px;font-size:10.5px;color:var(--mute)}.wo-card .wo-plate{color:var(--ink2);font-weight:600;font-size:11px}.wo-card .wo-dates{display:flex;gap:8px;flex-wrap:wrap;color:var(--ink2);margin-top:1px}.wo-card .wo-dates .late{color:var(--bad);font-weight:600}.wo-short{margin-top:10px}.wo-short-tbl{width:100%;table-layout:auto}.wo-short-tbl th{font-size:10.5px;white-space:nowrap}.wo-short-tbl td{padding:2px 3px;vertical-align:middle}.wo-short-tbl input:not([type=checkbox]){width:100%;min-width:60px;box-sizing:border-box;padding:3px 5px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:11.5px;background:#fff}.wo-short-tbl input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}.wo-short-tbl input:disabled{background:#f8fafc;color:var(--ink2)}.wo-short-tbl input.num{text-align:right;font-variant-numeric:tabular-nums}.wo-short-tbl tr.is-done{background:var(--ok-l)}.wo-short-tbl tr.is-done input{color:var(--ink2)}.wo-short-tbl td.actions{width:26px}.mach-tbl tbody.mach-block{border-top:1px solid var(--line)}.mach-tbl tbody.mach-block td{vertical-align:middle}.mach-tbl tr.mach-more td{border-top:1px dotted #eceff4}.mach-tbl td.mach-acts{width:52px;white-space:nowrap}.mach-tbl td.mach-acts .btn{padding:1px 5px;line-height:1.4}.shp-page .shp-vendors{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 2px}.shp-page .vchip{background:#fff;border:1px solid var(--line);border-radius:14px;padding:2px 10px;font-size:11.5px;cursor:pointer;color:var(--ink2)}.shp-page .vchip b{color:var(--brand);margin-left:3px}.shp-page .vchip.on{border-color:var(--brand);background:var(--brand-l)}.shp-tbl td{padding:3px 6px}.shp-tbl tr.shp-late td{background:var(--bad-l)}.shp-tbl .late{color:var(--bad);font-weight:600}.shp-tbl .shp-pend{color:var(--warn)}.shp-tbl .shp-await{color:var(--info)}.shp-tbl .lnk{background:none;border:0;padding:0;color:var(--brand);font:inherit;font-weight:600;text-decoration:underline}.shp-page .toolbar label.chk,.cnv-page .toolbar label.chk{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink2);white-space:nowrap;cursor:pointer}.wrk-page .bomr-tbl input{min-width:80px}.shp-tbl .wo-pri{margin-left:5px}.conv-page .conv-intro{display:flex;align-items:center;gap:14px;padding:10px 14px;margin-bottom:10px;background:var(--card);border:1px solid var(--line);border-radius:var(--r)}.conv-page .conv-intro-txt{display:flex;flex-direction:column;gap:2px;min-width:0}.conv-page .conv-intro-txt b{color:var(--ink)}.conv-page .conv-intro .btn{margin-left:auto;white-space:nowrap}.cnv-page .cnv-title{margin:0;display:flex;align-items:center;gap:8px;font-size:16px}.cnv-page .cnv-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;overflow:auto}.cnv-page .lnk{background:none;border:0;padding:0;color:var(--brand);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.cnv-page .cnv-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px 18px;padding-bottom:12px;border-bottom:1px solid var(--line)}.cnv-page .fact{display:flex;flex-direction:column;gap:2px;min-width:0}.cnv-page .fact-l{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--mute)}.cnv-page .fact-v{font-weight:600;color:var(--ink);overflow-wrap:anywhere}.cnv-tbl thead .cnv-sides th{text-align:center}.cnv-tbl thead th.cnv-issued{background:var(--info-l);border-bottom:2px solid var(--info)}.cnv-tbl thead th.cnv-recv{background:var(--ok-l);border-bottom:2px solid var(--ok)}.cnv-page .sec-title{margin:14px 0 8px}.cnv-stage{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;color:var(--ink2);white-space:nowrap}.cnv-stage .dot{width:8px;height:8px;border-radius:50%;background:var(--c, var(--mute));flex:none}.cnv-board .col{min-width:158px}.cnv-board .col-title{overflow:hidden;text-overflow:ellipsis}.cnv-board .card .subj{font-size:11px;color:var(--ink2)}.cnv-board .col-val{white-space:nowrap;font-size:10px}.cnv-job-card .pn-row{display:flex;align-items:center;gap:6px;margin-top:2px}.cnv-job-card .pn{font-size:11px;color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cnv-job-card .pn.awaited{color:var(--mute);font-style:italic}.cnv-job-card .qty{margin-left:auto;flex:none;font-size:10.5px;font-weight:600;color:var(--warn);white-space:nowrap}.cnv-job-card .qty.ok{color:var(--ok)}.cnv-job-card .shrt,.svc-board .card .shrt{flex:none;font-size:10px;font-weight:700;color:#b91c1c;background:#fee2e2;border-radius:999px;padding:0 5px;white-space:nowrap}.cnv-job-card.hot{border-left-width:3px}.cnv-job-card.p-high{border-left-color:var(--warn);background:#fff8e9}.cnv-job-card.p-urgent{border-left-color:var(--bad);background:#fff1f0;box-shadow:0 1px 3px #dc26262e}.cnv-job-card.p-urgent .cust{color:#b02a21}.cnv-job-card.p-low{background:#f4f7fb}.cnv-job-card .pri.p-high{background:var(--warn-l);color:var(--warn)}.ap-tag{display:inline-block;font-size:10.5px;font-weight:700;border-radius:999px;padding:1px 8px;white-space:nowrap}.ap-tag.ap-wait{background:#fff4e5;color:#b45309}.ap-tag.ap-ok{background:var(--ok-l);color:var(--ok)}.ap-tag.ap-no{background:var(--bad-l);color:var(--bad)}.ap-tag.ap-na{background:#eef0f3;color:#64748b}.kpis .qk.ap-wait{background:#fff4e5;color:#b45309}.kpis .qk.ap-no{background:var(--bad-l);color:var(--bad)}.ap-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 12px;border-bottom:1px solid var(--line);background:#fff8ef}.ap-bar.ap-ok{background:#f0fdf4}.ap-bar.ap-no{background:#fff1f0}.ap-bar .ap-rem{font-size:11.5px;color:var(--ink2);font-style:italic;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap-bar .ap-inp{width:240px;padding:4px 8px}.btn.is-off{opacity:.5}.cnv-job-card .pri.p-urgent{background:var(--bad-l);color:var(--bad);font-weight:700}.svc-board .col{min-width:182px}.svc-journey{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.svc-journey .jstep{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink2);font-size:11.5px;font-weight:600;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.svc-journey .jstep:hover{border-color:var(--c, var(--mute))}.svc-journey .jstep .dot{width:8px;height:8px;border-radius:50%;background:var(--c, var(--mute));flex:none}.svc-journey .jstep.past{opacity:.72}.svc-journey .jstep.now{border-color:var(--c, var(--mute));box-shadow:inset 0 0 0 1px var(--c, var(--mute));color:var(--ink)}.svc-ladder{width:320px;margin:10px 0 0 auto}.svc-ladder td{padding:3px 8px}.svc-ladder tr.b td{font-weight:700;border-top:1px solid var(--line)}.svc-pod{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.svc-pod .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--mute);font-weight:700}.svc-pod .pod-file{display:inline-flex;align-items:center;gap:4px;background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:2px 6px;font-size:12px}.svc-pod .pod-file .lnk{border:0;background:none;padding:0;color:var(--brand);cursor:pointer;font-size:12px}.svc-pod .pod-file .x{border:0;background:none;padding:0 2px;color:var(--mute);cursor:pointer;line-height:1}.svc-pod .pod-file .x:hover{color:var(--bad)}.svc-pod label.btn{cursor:pointer}.svc-shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:8px}.svc-shots figure{margin:0;border:1px solid var(--line);border-radius:6px;padding:6px;background:var(--card)}.svc-shots img{width:100%;height:160px;object-fit:contain;display:block;background:var(--bg);border-radius:4px}.svc-shots .ph{height:160px;display:flex;align-items:center;justify-content:center;background:var(--bg);border-radius:4px}.svc-shots figcaption{margin-top:6px;font-size:11.5px;line-height:1.4;color:var(--ink2)}.svc-shots .cap-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.svc-shots.edit textarea{width:100%;resize:vertical}.svc-docs{display:grid;gap:10px;margin:10px 0}.doc-pick{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--card)}.doc-pick>div:first-child{flex:1}.doc-pick .warn-text{color:var(--warn, #b45309);margin-top:3px}.pe-page .fld{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--ink2);font-weight:500;min-width:0}.pe-page .fld>span{font-weight:600}.pe-page .fld.sm{min-width:110px}.pe-page .fld input,.pe-page .fld textarea{font:inherit;font-size:12px;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:3px 6px;background:var(--card)}.pe-page label.chk{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink2);white-space:nowrap;cursor:pointer}.pe-page .tag.ok{background:var(--ok-l);color:var(--ok)}.pe-page .tag.info{background:var(--brand-l);color:var(--brand-d)}.pe-filters{flex-wrap:wrap;align-items:flex-end;gap:8px}.pe-page .empty-note{color:var(--mute);font-size:12px;text-align:center;padding:18px;border:1px dashed #c6cdd6;border-radius:6px;margin:10px 0;background:var(--card)}.pe-page .warn-note{font-size:12px;line-height:1.5;color:var(--ink2);background:var(--warn-l);border:1px solid #f3dcae;border-left:3px solid var(--warn);border-radius:5px;padding:8px 10px;margin:8px 0}.pe-page .warn-cell input{background:var(--warn-l)}.pe-unmatched{display:flex;flex-wrap:wrap;gap:4px;margin:5px 0}td.pe-edit{padding:1px 2px}td.pe-edit>input,td.pe-edit .sel input{width:100%;font:inherit;font-size:12px;color:var(--ink);border:1px solid transparent;border-radius:4px;background:transparent;padding:3px 5px}td.pe-edit:hover>input,td.pe-edit:hover .sel input{border-color:var(--line);background:var(--card)}td.pe-edit>input:focus,td.pe-edit .sel input:focus{border-color:var(--brand);background:#fff}td.pe-edit.num>input{text-align:right}td.pe-edit .sel{min-width:120px}td.pe-edit .sel .sel-caret{opacity:0}td.pe-edit:hover .sel .sel-caret,td.pe-edit .sel.open .sel-caret{opacity:1}.cb-btn{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;align-items:center;gap:7px;border:0;border-radius:24px;padding:10px 16px;cursor:pointer;font:inherit;font-size:13px;font-weight:600;color:#fff;background:var(--brand);box-shadow:0 6px 18px #0f172a38}.cb-btn:hover{filter:brightness(1.07)}.cb-btn.on{right:18px;bottom:18px;padding:9px 12px;background:var(--ink2, #475569)}.cb-btn .cb-ico{font-size:15px;line-height:1}.cb-pane{position:fixed;right:18px;bottom:72px;z-index:60;width:420px;max-width:calc(100vw - 32px);max-height:min(76vh,680px);display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 44px #0f172a42;overflow:hidden}.cb-head{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--brand-l);border-bottom:1px solid var(--line)}.cb-head>div{flex:1;display:flex;flex-direction:column;line-height:1.3}.cb-head b{font-size:13.5px;color:var(--brand-d)}.cb-head small{font-size:11px;color:var(--ink2)}.cb-head .x{border:0;background:none;font-size:18px;line-height:1;color:var(--mute);cursor:pointer;padding:0 2px}.cb-head .x:hover{color:var(--bad)}.cb-feed{flex:1;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}.cb-me{align-self:flex-end;max-width:85%;background:var(--brand);color:#fff;font-size:12.5px;line-height:1.45;padding:7px 11px;border-radius:12px 12px 3px;white-space:pre-wrap}.cb-bot{align-self:flex-start;max-width:96%;background:var(--card);border:1px solid var(--line);border-radius:12px 12px 12px 3px;padding:9px 11px;font-size:12.5px;line-height:1.5;color:var(--ink)}.cb-bot.bad{border-color:#f1c0c0;background:#fff6f6}.cb-bot.empty{border-style:dashed}.cb-bot p{margin:0}.cb-bot .cb-title{font-weight:700;margin-bottom:3px}.cb-wait{color:var(--mute);font-style:italic}.cb-facts{margin-top:8px;display:grid;gap:2px}.cb-fact{display:flex;gap:10px;align-items:baseline;border-bottom:1px dotted var(--line);padding:2px 0}.cb-fact span{flex:1;color:var(--ink2);font-size:11.5px}.cb-fact b{text-align:right;font-size:12px}.cb-tbl-wrap{margin-top:8px;overflow:auto;max-height:240px}.cb-tbl{width:100%;border-collapse:collapse;font-size:11.5px}.cb-tbl th{text-align:left;font-weight:600;color:var(--ink2);background:var(--bg);border-bottom:1px solid var(--line);padding:4px 6px;position:sticky;top:0;white-space:nowrap}.cb-tbl td{padding:3px 6px;border-bottom:1px solid var(--line);vertical-align:top}.cb-tbl td.num{text-align:right;white-space:nowrap}.cb-list{margin:8px 0 0;padding-left:0;list-style:none;display:grid;gap:3px}.cb-link{border:0;background:none;padding:0;font:inherit;font-size:12px;color:var(--brand-d);text-align:left;cursor:pointer}.cb-link:hover{text-decoration:underline}.cb-src{margin-top:7px}.cb-chips{display:flex;flex-wrap:wrap;gap:5px;padding:8px 12px 0}.cb-chip{border:1px solid var(--line);background:var(--card);border-radius:14px;padding:4px 10px;font:inherit;font-size:11.5px;color:var(--ink2);cursor:pointer}.cb-chip:hover{border-color:var(--brand);color:var(--brand-d)}.cb-ask{display:flex;gap:6px;padding:9px 12px 4px}.cb-ask input{flex:1;font:inherit;font-size:12.5px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:18px;padding:7px 12px}.cb-ask input:focus{border-color:var(--brand);outline:none}.cb-foot{padding:0 12px 9px}@media (max-width: 560px){.cb-pane{right:8px;left:8px;width:auto;bottom:66px}}.pe-draft{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:9px 11px;margin:9px 0;box-shadow:0 1px 2px #1018280f}.pe-draft.done{opacity:.72;border-left:3px solid var(--ok)}.pe-draft-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:7px}.pe-draft-head h3{margin:0;font-size:13px}.pe-draft .fld{flex-direction:row;align-items:center;gap:7px;margin-bottom:5px}.pe-draft .fld>span{flex:none;width:58px;text-align:right}.pe-draft .fld input{flex:1;min-width:0}.pe-body{width:100%;font-size:12px;line-height:1.45;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:7px 8px;resize:vertical;background:#fcfdfe}.pe-format{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:12px 14px;max-width:760px}.pe-format .fld{margin-bottom:9px}.pe-format .fld input,.pe-format .fld textarea{width:100%}.parker-pull{width:min(900px,94vw)}.parker-pull .small-tbl{width:100%;font-size:11.5px}.parker-pull .small-tbl th{white-space:nowrap}.parker-pull td.pe-edit>input{border-color:var(--line);background:#fff;min-width:130px}.parker-pull .search{display:block;margin:6px 0 8px}.kpis .ok{background:var(--ok-l)}.kpis .ok b{color:var(--ok)}.tag.warn{background:var(--warn-l);color:var(--warn)}.tag.bad{background:var(--bad-l);color:var(--bad)}.pur-page .tbl td.b{font-weight:600}.pur-page .row-acts{white-space:nowrap}.modal.wide.pur-modal{max-width:1480px;width:96vw}.pur-modal .pur-lines input,.pur-modal .pur-lines .pn-box{width:100%}.pur-modal .pur-lines td.num{font-variant-numeric:tabular-nums}.pur-modal .pur-sheet{overflow:auto;max-height:62vh;border:1px solid var(--line);border-radius:8px;background:#fff}.pur-modal .pur-sheet>.pur-lines{margin:0;border:0;min-width:100%}.pur-modal .pur-sheet>.pur-lines th{position:sticky;top:0;z-index:3;background:var(--card2, #f7f7f8)}.pur-modal .pur-lines th,.pur-modal .pur-lines td{white-space:nowrap;padding:3px 5px}.pur-modal .pur-lines th{font-size:11px;line-height:1.25}.pur-modal .pur-lines input,.pur-modal .pur-lines select{padding:3px 5px;font-size:12px;min-height:26px}.pur-modal .pur-sheet>.pur-lines>thead>tr>th:first-child{left:0;z-index:5}.pur-modal .pur-sheet>.pur-lines>tbody>tr:not(.pur-subrow)>td:first-child{position:sticky;left:0;z-index:2;background:#fff}.pur-modal .pur-sheet{border-color:#000}.pur-modal .pur-lines,.pur-modal .pur-subs>.tbl{border-collapse:separate;border-spacing:0}.pur-modal .pur-lines>thead>tr>th,.pur-modal .pur-lines>tbody>tr>td,.pur-modal .pur-lines>tfoot>tr>td,.pur-modal .pur-subs>.tbl>thead>tr>th,.pur-modal .pur-subs>.tbl>tbody>tr>td,.pur-modal .pur-subs>.tbl>tfoot>tr>td{border-right:1px solid #000;border-bottom:1px solid #000}.pur-modal .pur-lines>thead>tr>th:last-child,.pur-modal .pur-lines>tbody>tr>td:last-child,.pur-modal .pur-lines>tfoot>tr>td,.pur-modal .pur-lines>tfoot>tr>td:last-child{border-right:0}.pur-modal .pur-lines>tfoot>tr>td{border-bottom:0}.pur-modal .pur-lines>tbody>tr:last-child>td,.pur-modal .pur-subs>.tbl>tbody>tr:last-child>td{border-bottom:1px solid #000}.pur-modal .pur-subs>.tbl{border-top:1px solid #000;border-left:1px solid #000}.pur-head{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;align-items:start;margin-bottom:12px}.pur-head .pur-head-gap{height:8px}.pur-head textarea{resize:vertical}.pur-head textarea[readonly]{background:var(--card2, #f7f7f8);color:var(--ink2)}@media (max-width: 1100px){.pur-head{grid-template-columns:1fr}.pur-head .pur-head-gap{display:none}}.pur-modal .pur-parts-head{display:flex;align-items:center;flex-wrap:wrap;gap:10px;row-gap:6px}.pur-modal .pur-parts-head>.pur-colhint{margin-left:auto}.pur-modal .pur-samedates{display:inline-flex;align-items:center;gap:6px;font-weight:400;font-size:12px;cursor:pointer}.pur-modal .pur-samedates>input{margin:0}.pur-modal .pur-lines th.col-move{cursor:grab;-webkit-user-select:none;user-select:none}.pur-modal .pur-lines th.col-move:active{cursor:grabbing}.pur-modal .pur-lines th.col-move:hover{background:#eef2ff}.pur-modal .pur-lines th.col-dragging{opacity:.45}.pur-modal .pur-lines th.col-drop{box-shadow:inset 3px 0 0 0 var(--brand, #d6a53a);background:#fff7e6}.btn.add-part{font-weight:700;box-shadow:0 0 0 3px #d6a53a47;animation:addPartPulse 2.6s ease-in-out 3}.btn.add-part:hover{box-shadow:0 0 0 4px #d6a53a61}@keyframes addPartPulse{0%,to{box-shadow:0 0 0 3px #d6a53a47}50%{box-shadow:0 0 0 7px #d6a53a1a}}.pur-subrow>td{background:#f8fafc}.pur-subs{padding:8px 6px 10px}.pur-subs>.muted{margin-bottom:6px}.pur-subs .bad{color:var(--bad)}.pur-tot{display:flex;align-items:baseline;justify-content:flex-end;gap:18px;font-size:13px;color:var(--ink2)}.pur-tot b{color:var(--ink);font-variant-numeric:tabular-nums}.pur-tot .big{font-size:16px}.pur-trail{display:flex;flex-wrap:wrap;gap:6px}.pur-page .tbl td.rn,.pur-page .tbl th.rn{width:28px;padding:0 4px;text-align:center}.pur-page .tbl td.rn input{cursor:pointer}.pur-page .tbl td.rn input:disabled{cursor:not-allowed;opacity:.4}.pur-modal .tgl-row{display:flex;align-items:center;justify-content:flex-start;gap:4px;font-size:12.5px;color:var(--ink2)}.pur-steps{display:flex;align-items:stretch;gap:10px;margin:0 0 14px}.pur-steps .step{flex:1;display:flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:var(--card2, #fafafa);font-size:12.5px;font-weight:600;color:var(--ink2)}.pur-steps .step>span{display:flex;flex-direction:column;gap:2px;min-width:0}.pur-steps .step i{font-style:normal;font-weight:400;font-size:11.5px;color:var(--ink3, #8b8b8b)}.pur-steps .step b{flex:none;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;font-size:11.5px;background:var(--line);color:var(--ink2)}.pur-steps .step.now{border-color:#d6a53a;background:#fff8e8;color:#7a5600}.pur-steps .step.now b{background:#d6a53a;color:#fff}.pur-steps .step.ok{border-color:#3f9b55;background:#f0f9f1;color:#2b6b3b}.pur-steps .step.ok b{background:#3f9b55;color:#fff}.pur-steps .step.off{opacity:.6}.pur-steps .arrow{align-self:center;color:var(--ink3, #a0a0a0);font-weight:700}.ind-tbl tr.grp th{top:0}.ind-tbl tr.own th{top:21px;text-align:center;font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:2px 3px;border-bottom:0;background:#f6f7f9;color:var(--ink2);font-weight:700}.ind-tbl tr.own th.o-crm{background:#eaf1fb;color:#1d4ed8}.ind-tbl tr.own th.o-purchase{background:#fdf2e3;color:#b45309}.ind-tbl tr.own th.o-calc{background:#eef7f0;color:#15803d}.ind-tbl tr.own th.o-cost{background:#f4eefc;color:#6d28d9}.ind-tbl tr.own th.o-purhist{background:#f0f2f5;color:#475569}.ind-tbl tr.hd th{top:42px}.ind-tbl .empty-cell{position:sticky;left:0;text-align:left;padding-left:14px}.ind-tbl .g0{background:#eef2f7;color:#334155}.ind-tbl .g1{background:#fff7e6;color:#92400e}.ind-tbl .g2{background:#fdf0e6;color:#c2410c}.ind-tbl .g3{background:#e8f7ee;color:#15803d}.ind-tbl .g4{background:#e7f0ff;color:#1d4ed8}.ind-tbl .g5{background:#f3eaff;color:#6d28d9}.ind-tbl td.num{font-variant-numeric:tabular-nums}.toolbar.sub .chips{display:flex;flex-wrap:wrap;gap:5px}.ind-mast{display:flex;flex-wrap:wrap;gap:10px}.ind-mast-b{flex:1 1 180px;min-width:170px;background:#fafbfc;border:1px solid var(--line);border-radius:6px;padding:7px 9px}.ind-mast-b .lbl.sm{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}.ind-mast table.mini{width:100%;border-collapse:collapse;font-size:12px}.ind-mast table.mini td{padding:1px 0;border:0;white-space:nowrap}.ind-mast table.mini td.num{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.pill.sm{font-size:9.5px;padding:1px 6px;margin-left:5px;background:#f3f4f6;color:var(--mute)}.tbl.stock-sheet td{padding:2px 5px;white-space:nowrap}.tbl.stock-sheet input.cell{width:100%;min-width:86px;box-sizing:border-box;padding:2px 4px;font:inherit;border:1px solid transparent;border-radius:4px;background:transparent}.tbl.stock-sheet input.cell:hover{border-color:#cfd6de;background:#fff}.tbl.stock-sheet input.cell:focus{border-color:var(--brand);background:#fff;outline:none}.tbl.stock-sheet input.cell.num{min-width:72px;text-align:right;font-variant-numeric:tabular-nums}.tbl.stock-sheet td.wide input.cell{min-width:230px}.tbl.stock-sheet td.ours input.cell{background:#fffbeb;border-color:#f3dca6}.tm-btn{border:1px solid var(--line);background:#fff;color:var(--ink2);font:inherit;font-size:12.5px;padding:4px 10px;border-radius:6px;margin-right:8px;white-space:nowrap;cursor:pointer}.tm-btn:hover{background:#f6f7f9}.tm-btn.on{border-color:#fbd5bf;background:var(--brand-l);color:var(--brand-d);font-weight:600}.tm-pop .cp-pad{padding:2px 10px 8px;line-height:1.45}body.wrap-cells table.tbl th,body.wrap-cells table.tbl td{white-space:normal;overflow-wrap:anywhere;vertical-align:top}body.wrap-cells table.tbl td.num,body.wrap-cells table.tbl th.num,body.wrap-cells table.tbl td.rb,body.wrap-cells table.tbl td.rn,body.wrap-cells table.tbl td.actions{white-space:nowrap;overflow-wrap:normal}body.wrap-cells table.tbl td input,body.wrap-cells table.tbl td select{white-space:nowrap}body.wrap-heads table.tbl thead th{white-space:normal;overflow-wrap:break-word;vertical-align:bottom}body.wrap-heads table.tbl thead th .ch-in{align-items:flex-start}body.wrap-heads table.tbl thead th .ch-l{white-space:normal}.tm-wrap{display:flex;gap:4px;margin-top:4px}.tm-w-b{flex:1;border:1px solid var(--line);background:#fff;color:var(--ink2);font:inherit;font-size:12px;padding:4px 6px;border-radius:5px;cursor:pointer;white-space:nowrap}.tm-w-b:hover{background:#f6f7f9}.tm-w-b.on{border-color:var(--brand);background:var(--brand-l);color:var(--brand-d);font-weight:600}.tm-fl{list-style:none;margin:4px 0 0;padding:0;max-height:168px;overflow:auto}.tm-fl li{display:flex;gap:8px;align-items:baseline;padding:2px 0;border-bottom:1px dotted var(--line);font-size:12px}.tm-fl li:last-child{border-bottom:0}.tm-f-n{flex:1;min-width:0;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tm-f-v{max-width:54%;color:var(--ink);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tm-fl li.on .tm-f-v{color:var(--brand-d);font-weight:600}.tm-f-non{padding-top:4px}.tm-f-btns{display:flex;gap:6px;flex-wrap:wrap;padding:0 10px 6px}.qf-bar{display:contents}.qf-box{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:#fff;border-radius:6px;padding:1px 4px 1px 8px}.qf-cap{font-size:11.5px;color:var(--mute);white-space:nowrap}.sel.qf-sel{width:140px}.sel.qf-sel input{font-size:12px;color:var(--ink2);padding:2px 18px 2px 4px;border-color:transparent;background:none}.sel.qf-sel .sel-caret{right:3px}.sel.qf-sel.open input{border-color:var(--brand);background:#fff;box-shadow:none}.qf-x{border:0;background:none;color:var(--mute);font-size:13px;line-height:1;padding:2px 4px 3px;cursor:pointer}.qf-x:hover{color:#b42318}.qf-box.on{border-color:var(--brand);background:var(--brand-l)}.qf-box.on .qf-cap{color:var(--brand-d)}.qf-box.on .sel.qf-sel input{color:var(--brand-d);font-weight:600}.qf-clear{border:1px solid var(--line);background:#fff;font:inherit;font-size:12px;color:var(--ink2);padding:4px 10px;border-radius:6px;cursor:pointer}.qf-clear:hover{background:#f6f7f9}.cp-quick{padding:2px 4px 0;border-top:1px solid var(--line);margin-top:6px}.cp-qadd{width:100%;text-align:left;border:0;background:none;font:inherit;font-size:12px;color:var(--brand-d);padding:6px;border-radius:5px;cursor:pointer}.cp-qadd:hover{background:var(--brand-l)}.cp-qadd.on{color:var(--brand-d);font-weight:600}.cp-qrow{display:flex;gap:4px;align-items:center;padding:6px 2px 2px}.cp-qname{flex:1;min-width:0;padding:4px 6px;border:1px solid var(--line);border-radius:5px;font-size:12px}.tm-frz{display:flex;gap:8px;padding:2px 10px 4px}.tm-frz .cp-field{flex:1;min-width:0;margin-top:0}.tm-frz select{width:100%;padding:4px 6px;border:1px solid var(--line);border-radius:5px;font-size:12px;background:#fff}table.tbl [data-frz-edge=c]{box-shadow:1px 0 0 var(--line)}table.tbl [data-frz-edge=r]{box-shadow:0 1px 0 var(--line)}table.tbl [data-frz-edge=cr]{box-shadow:1px 0 0 var(--line),0 1px 0 var(--line)}.bell-wrap{position:relative;display:flex;align-items:center}.bell-btn{position:relative;background:transparent;border:1px solid transparent;border-radius:8px;padding:4px 6px;cursor:pointer;line-height:1}.bell-btn:hover{background:#ffffff24}.bell-ico{font-size:17px;filter:grayscale(.2)}.bell-btn.has .bell-ico{filter:none}.bell-dot{position:absolute;top:-2px;right:-2px;min-width:15px;height:15px;padding:0 3px;display:flex;align-items:center;justify-content:center;background:#dc2626;color:#fff;font-size:10px;font-weight:700;border-radius:9px;border:1px solid #fff}.bell-pop{position:absolute;top:100%;right:0;margin-top:6px;width:340px;max-width:86vw;z-index:60;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px #0000002e;overflow:hidden}.bell-head{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line);background:#f7f8fa}.bell-list{max-height:60vh;overflow:auto}.bell-empty{padding:14px 12px}.bell-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:8px 10px;background:#fff;border:0;border-bottom:1px solid var(--line);cursor:pointer;font:inherit}.bell-item:hover{background:#f1f5f9}.bell-item.new{background:#eff6ff}.bell-item.new:hover{background:#e0ecfd}.bell-txt{font-size:13px;line-height:1.35}.anx-wrap{padding:10px 12px;overflow:auto}.anx-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.anx-top .spacer{flex:1}.anx-wrap label.btn{cursor:pointer}.anx-wrap label.btn.off{opacity:.5;cursor:not-allowed}.anx-tbl{width:100%}.anx-tbl td{vertical-align:top}.anx-wrap .lnk{background:none;border:0;padding:0;color:var(--brand);font:inherit;font-weight:600;text-align:left;text-decoration:underline;cursor:pointer}.anx-acts{display:flex;gap:6px;justify-content:flex-end;white-space:nowrap}.anx-foot{margin-top:8px}.hose-page{display:flex;flex-direction:column;min-height:0;flex:1}.hose-tabs{display:flex;gap:6px;padding:0 12px 2px}.hose-tab{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:8px 8px 0 0;padding:7px 14px;font-weight:600;color:var(--ink2);cursor:pointer;border-bottom:2px solid transparent}.hose-tab:hover{background:#f7f9fc}.hose-tab.on{color:var(--c);border-bottom-color:var(--c);box-shadow:0 -2px 0 var(--c) inset}.hose-tab .dot{width:9px;height:9px;border-radius:50%;background:var(--c);flex:none}.hose-tab .ct{background:#f1f3f7;color:var(--mute);border-radius:9px;padding:0 7px;font-size:11px}.hose-tab.on .ct{background:var(--brand-l);color:var(--brand)}.hm-tbl td input,.hm-tbl th input{width:100%}.hm-calc{color:var(--mute);font-variant-numeric:tabular-nums}.hm-best{font-weight:700;color:#15803d;font-variant-numeric:tabular-nums}.hm-best .src{font-weight:500;font-size:10px;color:var(--mute);margin-left:4px}.hm-form{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 12px}.hm-calcs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding:8px 10px;background:#f7f9fc;border:1px solid var(--line);border-radius:8px}.hm-calcs span,.hm-calcs-one{font-size:11.5px;color:var(--mute)}.hm-calcs b{font-variant-numeric:tabular-nums;color:var(--ink);margin-left:4px}.hq-page .hq-no{margin:0 4px 0 2px;font-size:15px}.hq-wrap{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:10px;padding:0 12px 12px}.hq-main{min-width:0;display:flex;flex-direction:column;gap:10px;overflow:hidden}.hq-head{padding:10px 12px;flex:none}.hq-lines{margin:0;flex:1 1 auto;min-height:0;overflow:auto}.hq-tbl2 td input{width:100%;min-width:64px;border:0;background:transparent;padding:2px 3px;font:inherit}.hq-tbl2 td input:focus{background:#fff;outline:1px solid var(--brand);border-radius:3px}.hq-tbl2 td.wide input{min-width:150px}.hq-tbl2 tr.hq-at{background:var(--brand-l)}.hq-tbl2 tr.hq-at td:first-child{box-shadow:2px 0 0 var(--brand) inset}.hq-cost{color:var(--mute);font-variant-numeric:tabular-nums}.pill.hq-st{background:#f1f3f7;color:var(--ink2)}.pill.hq-st.s-sent{background:#e7f0ff;color:#1d4ed8}.pill.hq-st.s-won{background:var(--ok-l);color:#15803d}.pill.hq-st.s-lost{background:var(--bad-l);color:var(--bad)}.hq-board .col{min-width:210px}.hq-board .col-val{white-space:nowrap;font-size:10px}.hq-card{border-left-color:#cbd5e1}.hq-card.s-sent{border-left-color:#2563eb}.hq-card.s-won{border-left-color:var(--ok);background:#f3fbf5}.hq-card.s-lost{border-left-color:var(--bad);background:#fdf6f6}.hq-card .qty{margin-left:auto;font-variant-numeric:tabular-nums}.hq-card .bottom{gap:8px}.hq-work{min-width:0;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}.hq-work-head{display:flex;align-items:baseline;gap:8px}.hq-wrap.folded{grid-template-columns:minmax(0,1fr) 30px}.hq-rail{border-right:0;border-left:1px solid var(--line);border-radius:8px}.hq-work-note{margin:0;line-height:1.45}.hq-find{border:1px solid var(--line);border-radius:8px;overflow:hidden}.hq-find>header{display:flex;align-items:center;gap:7px;padding:7px 9px;cursor:pointer;background:#f7f9fc;font-size:12.5px}.hq-find.open>header{background:#fff;border-bottom:1px solid var(--line)}.hq-find>header .dot{width:8px;height:8px;border-radius:50%;background:var(--c);flex:none}.hq-find>header .caret{margin-left:auto;color:var(--mute)}.hq-picked{font-size:11px;background:var(--ok-l);color:#15803d;border-radius:9px;padding:1px 7px}.hq-find-body{padding:8px 9px;display:flex;flex-direction:column;gap:6px}.hq-crit{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:8px;font-size:11.5px;color:var(--ink2)}.hq-crit input,.hq-crit select{width:100%;padding:3px 6px;font-size:12px}.hq-find-acts{display:flex;gap:6px;margin-top:2px}.hq-hits{display:flex;flex-direction:column;gap:3px;margin-top:4px}.hq-hit{display:grid;grid-template-columns:1fr auto;gap:1px 8px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:6px;padding:4px 7px;cursor:pointer}.hq-hit:hover{border-color:var(--c);background:#f7f9fc}.hq-hit.on{border-color:#15803d;background:var(--ok-l)}.hq-hit .pn{font-size:11.5px;font-weight:700}.hq-hit .sp{grid-column:1 / -1;font-size:10.5px;color:var(--mute)}.hq-hit .pr{font-size:11.5px;font-weight:600;color:#15803d;font-variant-numeric:tabular-nums}.hwo-board .col{min-width:186px}.pill.hwo-st.s-wip{background:#e7f0ff;color:#1d4ed8}.pill.hwo-st.s-hold{background:var(--bad-l);color:var(--bad)}.pill.hwo-st.s-done{background:var(--ok-l);color:#15803d}.pill.hwo-st.s-cx{background:#f1f5f9;color:var(--mute)}.hwo-page .late{color:var(--bad);font-weight:600}.hwo-modal .modal-head .pill{margin-left:8px}.hwo-tabs,.hwo-head{margin-bottom:10px}.hwo-lines{margin:0 0 10px}.hwo-lines td input{width:100%;min-width:64px;border:0;background:transparent;padding:2px 3px;font:inherit}.hwo-lines td input:focus{background:#fff;outline:1px solid var(--brand);border-radius:3px}.hwo-lines td.wide input{min-width:150px}.hwo-lines .tot-row td{background:#f7f9fc}.hwo-steps{display:flex;flex-direction:column;gap:6px}.hwo-step{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;padding:7px 10px}.hwo-step .dot{width:9px;height:9px;border-radius:50%;background:var(--c);flex:none}.hwo-step .nm{min-width:130px;font-size:12.5px}.hwo-step .when{margin-left:auto}.hwo-step.d-done{background:#f3fbf5}.hwo-step.d-hold{background:#fff5f5}.hwo-step .states{display:inline-flex;border:1px solid #d5dae2;border-radius:6px;overflow:hidden}.hwo-step .states button{border:0;background:#fff;padding:3px 8px;font-size:11px;color:var(--ink2);cursor:pointer}.hwo-step .states button+button{border-left:1px solid #d5dae2}.hwo-step .states button.on{background:var(--c);color:#fff}.hwo-log .line{display:flex;gap:8px;align-items:baseline;padding:4px 0;border-bottom:1px dashed var(--line);font-size:12.5px}.hwo-log .line span:first-child{min-width:118px}@media (max-width: 1200px){.hq-wrap{grid-template-columns:1fr}}.overlay{overflow:hidden;align-content:center}.modal{max-height:calc(100vh - 32px);max-width:calc(100vw - 32px)}.modal-body:has(>.table-card),.modal-body:has(>.so-items),.modal-body:has(>.imp-items),.modal-body:has(>.imp-list),.modal-body:has(>.items-wrap),.modal-body:has(>.sheet-wrap){display:flex;flex-direction:column;gap:10px;overflow:hidden}.modal-body:has(>.table-card)>.table-card,.modal-body:has(>.so-items)>.so-items,.modal-body:has(>.imp-items)>.imp-items,.modal-body:has(>.imp-list)>.imp-list,.modal-body:has(>.items-wrap)>.items-wrap,.modal-body:has(>.sheet-wrap)>.sheet-wrap{flex:1 1 auto;min-height:0;max-height:none;margin:0;overflow:auto}.modal-body:has(>.table-card)>*:not(.table-card),.modal-body:has(>.so-items)>*:not(.so-items),.modal-body:has(>.imp-items)>*:not(.imp-items),.modal-body:has(>.imp-list)>*:not(.imp-list),.modal-body:has(>.items-wrap)>*:not(.items-wrap),.modal-body:has(>.sheet-wrap)>*:not(.sheet-wrap){flex:none}.modal-body .table-card,.modal-body .so-items,.modal-body .imp-items,.modal-body .imp-list,.modal-body .paste-prev,.modal-body .skip-scroll,.modal-body .cb-tbl-wrap{max-height:none}.modal-body .imp-list ul{max-height:none;overflow:visible}.modal-body .wo-log ul{max-height:none}.page{overflow:auto}.page:has(>.table-card){overflow:hidden}.page:has(>.table-card)>.table-card{flex:1 1 auto;min-height:0;max-height:none;overflow:auto}.page:has(>.settings-card),.page:has(.tb-hero),.page:has(.tb-counts),.page:has(.tcf-box){overflow:auto}.page:has(>.settings-card)>.table-card,.page:has(.tb-hero)>.table-card,.page:has(.tb-counts)>.table-card,.page:has(.tcf-box)>.table-card{flex:none;overflow-x:auto}*{scrollbar-width:thin;scrollbar-color:#c3cbd6 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#c9d1dc;border:2px solid transparent;background-clip:padding-box;border-radius:6px}*::-webkit-scrollbar-thumb:hover{background:#a9b4c4;background-clip:padding-box}*::-webkit-scrollbar-corner{background:transparent}.tbl{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums}.tbl th,.tbl td{border-bottom:1px solid var(--grid, #e8ecf1)}.tbl th+th,.tbl td+td{border-left:1px solid var(--grid, #eef1f5)}.op-tbl th+th,.op-tbl td+td{border-left:0}.tbl td{vertical-align:middle}.tbl thead th{background:#f4f6f9;border-bottom:1px solid #d9dfe7;color:var(--ink2);font-size:11px;letter-spacing:.01em;box-shadow:0 1px #d9dfe7}.tbl tbody tr:hover>td{background:#f5f9ff}.tbl tbody tr:last-child>td{border-bottom:0}.tbl .num,.tbl td.num input{font-variant-numeric:tabular-nums}.tbl td.b,.tbl td .b{font-weight:600}.tbl th.num+th:not(.num),.tbl td.num+td:not(.num){border-left-color:#e3e8ee}.tbl td.actions{border-left-color:transparent}.tbl td.ro-grip{width:44px;padding:0 2px;text-align:center;white-space:nowrap;border-left-color:transparent;cursor:grab;-webkit-user-select:none;user-select:none}.ro-dots{color:var(--mute);opacity:.35;font-size:13px}.tbl tbody tr:hover .ro-dots{opacity:1}.ro-b{display:none;border:0;background:none;padding:0 1px;margin:0;color:var(--mute);font-size:11px;line-height:1;cursor:pointer}.tbl tbody tr:hover .ro-b{display:inline}.ro-b:hover{color:var(--brand)}.tbl tbody tr.ro-over>td{box-shadow:inset 0 2px 0 0 var(--brand)}.tbl tbody tr.ro-under>td{box-shadow:inset 0 -2px 0 0 var(--brand)}.tbl tbody tr.ro-moving>td{opacity:.45}.ro-now{margin-top:3px}.ro-btns{flex-wrap:wrap;row-gap:6px}.tbl td .sub{display:block;font-size:10.5px;color:var(--mute);line-height:1.3}.tbl td>input:not([type=checkbox]):not([type=radio]),.tbl td>select,.tbl td>textarea{width:100%;border:1px solid transparent;background:transparent;font:inherit;color:inherit;padding:3px 5px;border-radius:4px;box-sizing:border-box}.tbl td>input:hover,.tbl td>select:hover,.tbl td>textarea:hover{border-color:#d3dae3;background:#fff}.tbl td>input:focus,.tbl td>select:focus,.tbl td>textarea:focus{border-color:var(--brand);background:#fff;outline:none;box-shadow:0 0 0 2px #f26a211f}.tbl td.num>input{text-align:right}.table-card+.add-card,.modal-body>.add-card{margin:0 0 4px;align-self:flex-start}.so-dialog .modal-body:has(>.so-items){overflow:auto}.so-dialog .modal-body:has(>.so-items)>.so-items{flex:none;overflow:visible}.cb-feed .cb-tbl-wrap{max-height:none;overflow-x:auto;overflow-y:visible}.modal-body .terms-wrap,.modal-body .anx-wrap{overflow:visible}.topbar>*{flex:none}.topbar>.spacer{flex:1 1 auto}.nav{flex:0 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{height:0}.nav button{flex:none;white-space:nowrap}.uname,.uname small{white-space:nowrap}@media (max-width: 1440px){.nav button{padding:7px 9px}}@media (max-width: 1280px){.nav .ico,.erp-tag{display:none}}@media (max-width: 1100px){.uname{display:none}.co-chip{margin-right:2px}}@media (max-width: 900px){.enq-side{overflow-y:visible}.enq-body .items-wrap{overflow:visible}}body,button,input,select,textarea,th,td{font-family:inherit}.tbl td,.tbl th,.cb-tbl td,.cb-tbl th,table.mini td,table.mini th{font-size:12px}.tbl thead th,.cb-tbl thead th{font-size:11px}.tbl td .sub,.tbl td .qn,.tbl td .al{font-size:10.5px}.tbl tbody tr:nth-child(2n),.cb-tbl tbody tr:nth-child(2n),table.mini tbody tr:nth-child(2n){background:#f7f8fa}.tbl tbody tr:nth-child(odd),.cb-tbl tbody tr:nth-child(odd),table.mini tbody tr:nth-child(odd){background:#fff}.cost-tbl tbody tr:nth-child(2n) td,.qt-tbl tbody tr:nth-child(2n) td,.so-tbl-page tbody tr:nth-child(2n) td{background:#f7f8fa}.cost-tbl tbody tr:nth-child(odd) td,.qt-tbl tbody tr:nth-child(odd) td,.so-tbl-page tbody tr:nth-child(odd) td{background:#fff}.cost-tbl tbody tr:nth-child(2n) td.calc{background:#eff1f4}.cost-tbl tbody tr:nth-child(2n) .stick{background:#f7f8fa}.cost-tbl tbody tr:nth-child(odd) .stick{background:#fff}.cost-tbl tbody tr.picked td,.cost-tbl tbody tr.picked .stick{background:#ffe9db!important}.tbl.virt tbody tr:nth-child(2n),.tbl.virt tbody tr:nth-child(odd){background:#fff}.tbl.virt tbody tr.vz-odd{background:#f7f8fa}.tbl tbody tr.vpad,.tbl.virt tbody tr.vpad{background:transparent}.tbl tbody tr.vpad>td{padding:0;border:0}.wo-short-tbl tbody tr.is-done{background:var(--ok-l)}.hq-tbl2 tbody tr.hq-at{background:var(--brand-l)}.tbl tbody tr:hover>td,.cb-tbl tbody tr:hover>td{background:#f5f9ff}.cost-tbl tbody tr:hover td,.qt-tbl tbody tr:hover td,.cost-tbl tbody tr:hover .stick,.so-tbl-page tbody tr:hover td{background:#fff3ea}.board .col,.wo-board .col,.cnv-board .col,.svc-board .col,.hwo-board .col{min-width:196px}.board .col.collapsed,.wo-board .col.collapsed,.cnv-board .col.collapsed,.svc-board .col.collapsed,.hwo-board .col.collapsed{min-width:34px}.tbl td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}.tbl td>input,.tbl td>select{text-overflow:ellipsis}.tbl td.actions,.tbl td.c-chk,.tbl td.c-sl,body.wrap-cells table.tbl td{overflow:visible}.clm-tbl .g6{background:#e6f6fb;color:#0e7490}.clm-tbl .g7{background:#fdeaf0;color:#9d174d}.clm-tbl tr.grp th.gx{background:#fff;color:transparent;border-bottom:0}.clm-tbl tr.grp th.gx,.clm-tbl th.actions{position:sticky;right:0;z-index:4}.clm-tbl th.actions{background:#f6f7f9}.clm-tbl tr.grp th.gx,.clm-tbl th.actions,.clm-tbl td.actions{min-width:112px;text-align:right;white-space:nowrap;box-shadow:-1px 0 0 var(--line)}.clm-tbl td.actions{padding-right:8px}.clm-tbl td.warn{color:var(--warn);font-weight:600}.clm-tbl td.bad{color:var(--bad);font-weight:700}.clm-lines{margin:2px 0 10px}.clm-lines input{width:100%}.clm-file{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:5px 0;border-bottom:1px dashed var(--line, #e5e7eb)}.clm-file .lbl-sm{font-size:11.5px;font-weight:600;color:var(--ink2);min-width:130px}.clm-file .vtag{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-btn{cursor:pointer}.pick-list{display:flex;flex-direction:column;gap:2px;max-height:200px;overflow:auto;border:1px solid var(--line, #e5e7eb);border-radius:4px;padding:5px 7px}.pick-list .pick{display:flex;align-items:center;gap:8px;flex-wrap:wrap;row-gap:2px;padding:3px 0;cursor:pointer}.pick-list .pick input{margin:0}.pick-list .pick .nm{font-size:11.5px;font-weight:600;color:var(--ink2);min-width:130px}.pick-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;row-gap:5px}.lists-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:8px}.lists-grid .list-box{display:flex;flex-direction:column;font-size:11.5px;font-weight:600;color:var(--ink2);gap:4px}.lists-grid .list-box textarea{font-weight:400;resize:vertical}.act-list{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:12px}.act-list li{padding:3px 0;border-bottom:1px dashed var(--line, #e5e7eb)}.ns-page{overflow:hidden}.ns-seg button b{font-weight:700;color:var(--ink);margin-left:3px}.ns-seg button.on b{color:#fff}.ns-pend{font-size:12px;color:var(--brand-d);background:var(--brand-l);border-radius:5px;padding:4px 8px;font-weight:600}.ns-wrap{flex:1;min-height:0;overflow:auto;padding:10px 12px;display:grid;gap:10px;align-content:start;grid-template-columns:repeat(auto-fill,minmax(468px,1fr))}.ns-card{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;align-self:start;--c: #6b7280}.ns-card[data-g=sales]{--c: #2563eb}.ns-card[data-g=purchase]{--c: #b45309}.ns-card[data-g=production]{--c: #15803d}.ns-card[data-g=jobwork]{--c: #7c3aed}.ns-card[data-g=service]{--c: #be123c}.ns-head{display:flex;align-items:center;gap:7px;padding:7px 10px;font-size:12.5px;font-weight:700;color:var(--ink);background:#f6f7f9;border-bottom:1px solid var(--line)}.ns-head .ns-dot{width:8px;height:8px;border-radius:50%;background:var(--c);flex:none}.ns-head i{margin-left:auto;font-style:normal;font-size:11px;font-weight:600;color:var(--ink2);background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 7px}.ns-row{display:grid;grid-template-columns:1fr 72px 66px 76px 112px;gap:7px;align-items:center;padding:4px 10px;border-bottom:1px solid #eef0f3;border-left:3px solid transparent}.ns-row:last-child{border-bottom:0}.ns-row:hover{background:#fafbfc}.ns-row.on{background:#fff8f3;border-left-color:var(--brand)}.ns-th{padding-top:5px;padding-bottom:5px;font-size:10.5px;font-weight:600;color:var(--mute);text-transform:uppercase;letter-spacing:.3px;background:#fcfcfd}.ns-th:hover{background:#fcfcfd}.ns-doc{min-width:0;display:flex;flex-direction:column;line-height:1.25}.ns-doc b{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-doc small{font-size:10.5px;color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-row input{width:100%;padding:3px 6px;font-size:12px}.ns-next{font-size:12px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#f3f4f6;border-radius:5px;padding:3px 7px;text-align:center}.ns-foot{flex:none;padding:6px 14px 8px;border-top:1px solid var(--line);background:#fff}.ns-card.ns-wide{grid-column:1 / -1;--c: #b45309}.ns-wide .ns-say{padding:6px 10px;font-size:11.5px;color:var(--ink2);background:#fffdf8;border-bottom:1px solid #eef0f3}.ns-wide .ns-bar{display:flex;flex-wrap:wrap;gap:6px;row-gap:6px;align-items:center;padding:6px 10px;border-bottom:1px solid #eef0f3}.ns-wide .ns-bar .grow{flex:1}.ns-led{display:grid;grid-template-columns:minmax(180px,2fr) 92px 96px 150px minmax(120px,1fr) 30px;gap:7px;align-items:center;padding:4px 10px;border-bottom:1px solid #eef0f3;border-left:3px solid transparent}.ns-led:hover{background:#fafbfc}.ns-led.on{background:#fff8f3;border-left-color:var(--brand)}.ns-led.ns-th{text-transform:uppercase}.ns-led.ns-new{background:#fbfdff}.ns-led input{width:100%;padding:3px 6px;font-size:12px}.ns-led .ns-sup{font-size:11px;color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-led .ns-x{border:0;background:transparent;color:var(--mute);cursor:pointer;border-radius:4px;font-size:13px}.ns-led .ns-x:hover{background:var(--bad-l);color:var(--bad)}@media (max-width: 1000px){.ns-wrap{grid-template-columns:1fr}.ns-led{grid-template-columns:1fr 1fr}}.overlay.print-layer{z-index:500}.print-prev{max-width:1600px}.prev-body{flex:1;min-height:0;display:flex}.prev-side{width:272px;flex:none;border-right:1px solid var(--line);background:#fafbfc;overflow-y:auto;padding:10px 12px}.ps-grp+.ps-grp{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.ps-lbl{font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--brand);margin-bottom:6px}.ps-pick{display:flex;align-items:center;gap:6px;flex-wrap:wrap;row-gap:5px}.ps-pick .btn.on{background:var(--brand-l);color:var(--brand-d);border-color:var(--brand);font-weight:600}.ps-note{margin-top:6px;line-height:1.4}.ps-tbl+.ps-tbl{margin-top:10px}.ps-tbl-h{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;margin-bottom:3px}.ps-col{display:flex;align-items:center;gap:6px;font-size:12px;padding:2px;cursor:pointer}.ps-col span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-col input:not(:checked)+span{color:var(--mute);text-decoration:line-through}.prev-pane{flex:1;min-width:0;overflow:auto;background:#eceef2;padding:18px;display:flex;justify-content:center;align-items:flex-start}.prev-paper{position:relative;flex:none;background:#fff;box-shadow:0 6px 24px #0f172a38}.prev-paper iframe{position:absolute;left:0;top:0;border:0;transform-origin:top left;background:#fff}.prev-wait{padding:40px}.prev-cut{position:absolute;left:0;right:0;border-top:1px dashed var(--brand);pointer-events:none}.prev-cut span{position:absolute;right:0;top:1px;background:var(--brand);color:#fff;font-size:9.5px;font-weight:600;padding:0 5px;border-radius:0 0 4px 4px}@media (max-width: 1000px){.prev-body{flex-direction:column;overflow-y:auto}.prev-side{width:auto;border-right:0;border-bottom:1px solid var(--line)}}
