.pt-wrap{max-width:900px;margin:0 auto}.pt-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}@media(max-width:700px){.pt-kpis{grid-template-columns:repeat(2,1fr)}}.pt-kpi{background:var(--surface,#fff);border:1px solid var(--border,#E6E6E0);border-radius:11px;padding:10px 14px;min-width:0}.pt-kpi .l{font-size:10.5px;color:var(--text-faint,#6C6C64);text-transform:uppercase;letter-spacing:.05em}.pt-kpi .v{font-size:18px;font-weight:700;color:var(--text,#1B1B19);margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.pt-kpi .v.warn{color:#854f0b}.pt-kpi .v.bad{color:#b3261e}.pt-kpi .s{font-size:10.5px;color:var(--text-muted,#6B6A65)}.pt-bar{height:4px;border-radius:2px;background:var(--bg,#F6F6F3);margin-top:6px;overflow:hidden}.pt-bar i{display:block;height:100%;background:var(--brand,#3C7538)}.pt-strip{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:thin}.pt-strip::-webkit-scrollbar{height:4px}.pt-pill{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 12px;font:600 11.5px ui-sans-serif,system-ui;cursor:pointer;border:1px solid var(--border-strong,#D6D6CE);white-space:nowrap;background:var(--surface,#fff);color:var(--text-faint,#6C6C64)}.pt-pill.done{background:var(--brand,#3C7538);border-color:var(--brand,#3C7538);color:#fff}.pt-pill.active{border-color:#e3c68b;color:#854f0b;background:#fff7ec}.pt-card{background:var(--surface,#fff);border:1px solid var(--border,#E6E6E0);border-left:4px solid var(--border-strong,#D6D6CE);border-radius:11px;padding:14px 16px;margin-bottom:14px}.pt-card.done{border-left-color:#0f6e56}.pt-card.active{border-left-color:#854f0b}.pt-card-head{display:flex;align-items:baseline;gap:8px;font-weight:700;margin-bottom:8px;flex-wrap:wrap;color:var(--text,#1B1B19)}.pt-card-head .ic{font-weight:400}.pt-card-head .opt{color:var(--text-faint,#6C6C64);font-weight:400;font-size:11px}.pt-card-head .meta{margin-left:auto;font-weight:400;font-size:12px;color:var(--text-faint,#6C6C64);white-space:nowrap}.pt-tablewrap{overflow-x:auto}.pt-table{width:100%;border-collapse:collapse}.pt-table th{font-size:11px;color:var(--text-faint,#6C6C64);text-align:left;padding:0 8px;font-weight:600}.pt-table td{padding:6px 8px;font-size:12px;border-top:1px solid var(--border,#E6E6E0);color:var(--text,#1B1B19);font-variant-numeric:tabular-nums}@media(hover:hover)and (pointer:fine){.pt-table tbody tr:hover{background:var(--bg,#F6F6F3)}}.pt-table tbody tr.pt-row-open{cursor:pointer;transition:background-color .14s cubic-bezier(.23,1,.32,1)}.pt-table tbody tr.pt-row-open:active{background:var(--bg,#F6F6F3)}.pt-td-id{font-weight:600}.pt-table tbody tr.pt-row-flash{animation:ptRowFlash 1.9s cubic-bezier(.2,.7,.3,1) 1}@keyframes ptRowFlash{0%,55%{background-color:#3c75382e;box-shadow:inset 3px 0 #3c7538}to{background-color:#3c753800;box-shadow:inset 3px 0 #3c753800}}@media(prefers-reduced-motion:reduce){.pt-table tbody tr.pt-row-flash{animation:none;background-color:#3c753824;box-shadow:inset 3px 0 #3c7538}}.pt-actions{text-align:right;white-space:nowrap}.pt-chip{display:inline-block;border-radius:999px;padding:2px 9px;font-size:10.5px;font-weight:600;border:1px solid transparent;vertical-align:middle}.pt-chip.grey{background:#f3f1e9;color:#6b6a65;border-color:#e3e0d3}.pt-chip.amber{background:#fff7ec;color:#854f0b;border-color:#f3dfc2}.pt-chip.green{background:#e8f0e5;color:#0f6e56;border-color:#cde3d2}.pt-chip.red{background:#fbeae8;color:#b3261e;border-color:#f1cfcb}.pt-chip.pink{background:#fbeaf3;color:#a4366e;border-color:#f2cfe2}.pt-inv{color:var(--brand,#3C7538);text-decoration:none;font-size:11.5px;white-space:nowrap}.pt-inv:hover{text-decoration:underline}.pt-inv-none{color:var(--text-faint,#6C6C64);font-size:11px;white-space:nowrap}.pt-add{margin-top:10px;font:600 12px ui-sans-serif,system-ui;cursor:pointer;border:0;background:var(--brand,#3C7538);color:#fff;border-radius:8px;padding:8px 16px}.pt-add:hover{filter:brightness(1.08)}.pt-add.ghost{background:var(--surface,#fff);color:var(--text-3,#6C6C64);border:1px solid var(--border-strong,#D6D6CE)}.pt-add.ghost:hover{filter:none;background:var(--surface-alt,#F7F7F3);border-color:var(--text-faint,#A8A69C);color:var(--text,#1B1B19)}.pt-add.brand-ghost{background:var(--surface,#fff);color:var(--brand,#3C7538);border:1px solid var(--brand,#3C7538)}.pt-add.brand-ghost:hover{filter:none;background:#f1f7ef}input[type=date]{accent-color:var(--brand,#3C7538);color-scheme:light}input[type=date]::-webkit-calendar-picker-indicator{width:16px;height:16px;padding:2px;margin-left:2px;cursor:pointer;border-radius:5px;opacity:.8;background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%233C7538" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="17" rx="3"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>') center/contain no-repeat;transition:background-color .13s cubic-bezier(.2,.7,.3,1),opacity .13s cubic-bezier(.2,.7,.3,1)}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1;background-color:#3c75381f}input[type=date]:focus-visible{outline:2px solid var(--brand,#3C7538);outline-offset:1px}.pt-edit,.pt-del{cursor:pointer;border:1px solid var(--border-strong,#D6D6CE);background:var(--surface,#fff);border-radius:6px;padding:3px 9px;font-size:11.5px;color:var(--text,#1B1B19)}.pt-edit{margin-right:5px}.pt-del{border-color:#f1cfcb;color:#b3261e}.pt-empty{color:var(--text-faint,#6C6C64);font-size:12px}.pt-shipped{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#e8f0e5;border:1px solid #CDE3D2;color:#0f6e56;border-radius:11px;padding:9px 13px;margin-bottom:12px}.pt-shipped-t{font-weight:700;font-size:13px}.pt-shipped-s{color:#4b7a62;font-size:11.5px}@media(max-width:640px){.pt-tablewrap{overflow-x:visible}.pt-table,.pt-table tbody{display:block;width:100%}.pt-table thead{display:none}.pt-table tbody tr{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:12px 2px;border-top:1px solid var(--border,#E6E6E0)}.pt-table tbody tr:first-child{border-top:0}.pt-table td{display:block;min-width:0;order:4;flex:0 0 auto;padding:0!important;border-bottom:0!important;border-top:0!important;text-align:left!important}.pt-table td.pt-c-lead{flex:1 1 100%;order:1;font-size:13.5px;line-height:1.35;font-weight:600}.pt-table td.pt-c-sub{flex:1 1 100%;order:2}.pt-table td.pt-c-wide{order:5;flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.pt-table td.pt-actions{order:6;margin-left:auto;flex:0 0 auto;text-align:right!important}.pt-table .pt-vend{display:inline-block;vertical-align:bottom;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pt-table td.pt-c-sub .pt-vend{font-size:12px;color:var(--text-muted,#6B6A65)}}@media(pointer:coarse){.pt-inv{display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 12px;border:1px solid var(--border,#E6E6E0);border-radius:9px;background:var(--surface,#fff);font-size:12.5px;font-weight:600}.pt-inv:active{transform:scale(.97)}}.pt-inv{transition:transform .14s cubic-bezier(.23,1,.32,1)}@media(prefers-reduced-motion:reduce){.pt-table tbody tr.pt-row-open,.pt-inv{transition:none}.pt-inv:active{transform:none}}.erp-ic{vertical-align:-2px;flex:none;display:inline-block}@media(pointer:coarse){.pt-edit,.pt-del{min-height:44px;min-width:44px;padding:10px 14px;font-size:13px}.pt-edit{margin-right:8px}.pt-add{min-height:44px;padding:12px 18px;font-size:13px}.pt-actions{white-space:normal}.pf-yrow,.pf-frow{grid-template-columns:1fr!important;gap:8px!important;padding:10px;border:1px solid var(--border,#E6E6E0);border-radius:10px;background:#fff;margin-bottom:8px}.pf-colhead{display:none!important}.pf-yrm,.pf-frm{min-height:44px}.pf-yadd,.pf-fadd{min-height:44px;padding:12px 16px}.pf-f,.pf-yk,.pf-fk{min-height:44px}.pf-f,.pf-yk,.pf-fk,#pbSearch,#pfBatchN,.pf-formgrid input,.pf-formgrid select,.pf-formgrid textarea,.pt-table input,.pt-table select,#prodTrackerOverlay input:not([type=checkbox]):not([type=radio]),#prodTrackerOverlay select,#prodTrackerOverlay textarea{font-size:16px!important}.pb-card-x{min-width:44px;min-height:44px}}@media(max-width:480px){.pf-formgrid{grid-template-columns:1fr!important}.pf-actions{flex-wrap:wrap}.pf-actions button{flex:1 1 auto}}.kb-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 10px}.kb-toolbar .lbl{font-size:11px;color:var(--text-faint,#6C6C64);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.kb-toolbar select{padding:6px 10px;border:1px solid var(--border-strong,#D6D6CE);border-radius:8px;font-size:12.5px;background:var(--surface,#fff);color:var(--text,#1B1B19)}.kb-seg{display:inline-flex;border:1px solid var(--border-strong,#D6D6CE);border-radius:8px;overflow:hidden}.kb-seg button{border:0;background:var(--surface,#fff);padding:6px 12px;font-size:12px;cursor:pointer;color:var(--text-muted,#6B6A65)}.kb-seg button.on{background:var(--brand,#3C7538);color:#fff}.kanban-card.kb-age-amber{border-left:3px solid var(--warning-fg,#854F0B)!important}.kanban-card.kb-age-red{border-left:4px solid var(--danger-fg,#A32D2D)!important}.kb-stuck{display:inline-block;background:#fbeae8;color:var(--danger-fg,#B23A34);border:1px solid #F1CFCB;border-radius:999px;padding:1px 7px;font-size:10.5px;font-weight:700;margin-right:5px;white-space:nowrap;vertical-align:middle}.kanban-card-detail{display:none;font-size:11px;color:var(--text-muted,#6B6A65);margin-top:3px}.kb-detailed .kanban-card-detail{display:block}.kb-compact .kanban-card-meta,.kb-compact .kanban-card-people{display:none}.kb-compact .kanban-card{min-height:0!important;padding:7px 10px!important}.kb-compact .kanban-lane-body{gap:5px}.kb-compact .kanban-card-brand{margin-top:1px}.kanban-board.kb-grouped{display:block;overflow-x:hidden;overflow-y:auto}.kanban-lane-head{cursor:pointer;gap:8px}.kanban-lane-caret{font-size:14px;color:var(--text-2,#54544E);font-weight:700;line-height:1}.kanban-lane.collapsed{flex:0 0 44px!important;max-width:44px!important;min-height:360px}.kanban-lane.collapsed .kanban-lane-body{display:none}.kanban-lane.collapsed .kanban-lane-head{flex-direction:column;gap:10px;padding:12px 6px;height:100%;justify-content:flex-start;align-items:center;border-bottom:0}.kanban-lane.collapsed .kanban-lane-title{writing-mode:vertical-rl;transform:rotate(180deg);gap:8px;flex:1}.kanban-lane.collapsed .kanban-lane-caret{transform:none}.kb-swimlane{margin:0 0 18px}.kb-swimlane-title{font-weight:700;font-size:13px;color:var(--text,#1B1B19);margin:0 0 8px;display:flex;align-items:center;gap:8px}.kb-swimlane-title .cnt{font-weight:400;font-size:11px;color:var(--text-faint,#6C6C64)}.kb-swimlane-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;align-items:flex-start}.blk-bar{position:sticky;bottom:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--surface,#fff);border-top:1px solid var(--border,#E6E6E0);padding:10px 12px;margin-top:8px;box-shadow:0 -4px 12px #0000000d}.blk-bar .cnt{font-weight:700;font-size:12.5px;color:var(--brand,#3C7538);white-space:nowrap}.blk-bar select{padding:6px 9px;border:1px solid var(--border-strong,#D6D6CE);border-radius:8px;font-size:12px;background:var(--surface,#fff);color:var(--text,#1B1B19);max-width:170px}.blk-bar .prog{font-size:12px;color:var(--text-muted,#6B6A65);margin-left:auto;white-space:nowrap}th.blk,td.blk{text-align:center}.qf-row{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 10px}.qf-pill{border:1px solid var(--border-strong,#D6D6CE);background:var(--surface,#fff);color:var(--text-muted,#6B6A65);border-radius:999px;padding:6px 14px;font-size:12px;cursor:pointer}.qf-pill:hover{border-color:var(--brand,#3C7538);color:var(--brand,#3C7538)}.sv-menu{position:fixed;z-index:9100;background:var(--surface,#fff);border:1px solid var(--border,#E6E6E0);border-radius:11px;box-shadow:0 10px 32px #00000029;min-width:230px;padding:6px}.erp-no-ai .ai-fab,.erp-no-ai .ai-top-btn,.erp-no-ai .ai-prof-btn{display:none!important}@media(max-width:768px){.sidebar-collapse-btn{display:none!important}.sidebar.collapsed{width:var(--sidebar-w,260px)!important}}.kbf-panel{position:fixed;z-index:9100;background:var(--surface,#fff);border:1px solid var(--border,#E6E6E0);border-radius:12px;box-shadow:0 12px 36px #0000002e;width:330px;max-height:min(560px,78vh);overflow:auto;padding:13px 14px 12px}.kbf-panel h5{margin:10px 0 6px;font-size:10.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--text-faint,#6C6C64)}.kbf-panel h5:first-child{margin-top:0}.kbf-chips{display:flex;flex-wrap:wrap;gap:5px}.kbf-chip{border:1px solid var(--border,#E6E6E0);background:var(--surface-alt,#FAF9F4);border-radius:999px;padding:3px 10px;font-size:11.5px;cursor:pointer;color:var(--text,#1B1B19)}.kbf-chip.on{background:#3c7538;border-color:#3c7538;color:#fff;font-weight:700}.kbf-row{display:flex;gap:7px;align-items:center}.kbf-row input{flex:1;min-width:0;border:1px solid var(--border,#E6E6E0);border-radius:8px;padding:6px 9px;font-size:12.5px;background:var(--surface,#fff);color:var(--text,#1B1B19)}.kbf-row input:focus{outline:none;border-color:#3c7538;box-shadow:0 0 0 2px #3c753824}.kbf-actions{display:flex;gap:8px;margin-top:13px;position:sticky;bottom:0;background:var(--surface,#fff);padding-top:9px;border-top:1px solid var(--border,#E6E6E0)}.kbf-actions .apply{flex:1;border:none;background:#3c7538;color:#fff;border-radius:9px;padding:8px 0;font-weight:700;cursor:pointer;font-size:12.5px}.kbf-actions .clear{border:1px solid var(--border,#E6E6E0);background:none;border-radius:9px;padding:8px 13px;cursor:pointer;font-size:12.5px;color:var(--text-muted,#6B6A65)}.qf-pill.kbf-on{background:#3c75381a;border-color:#3c7538;color:#3c7538;font-weight:700}.sv-row{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:8px;font-size:12.5px;color:var(--text,#1B1B19)}.sv-row:hover{background:var(--bg,#F6F6F3)}.sv-row .nm{flex:1;cursor:pointer}.sv-row button{border:0;background:transparent;cursor:pointer;font-size:12px}.sv-row button.del{color:var(--danger-fg,#A32D2D);font-weight:700}.sv-row.save{cursor:pointer;color:var(--brand,#3C7538);font-weight:600;border-top:1px solid var(--border,#E6E6E0);margin-top:4px}.sv-empty{padding:10px;color:var(--text-faint,#6C6C64);font-size:12px}.nav-item.sv-pin{padding-left:38px;font-size:12.5px;color:var(--text-muted,#6B6A65)}.nav-item.sv-pin .sv-pin-dot{margin-right:6px;color:var(--brand,#3C7538)}.tl-wrap{overflow-x:auto;padding:4px 0 8px}.tl-row{display:flex;align-items:center;gap:10px;margin:4px 0;min-width:560px}.tl-label{flex:0 0 120px;font-size:11px;color:var(--text-muted,#6B6A65);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-track{flex:1;position:relative;height:16px;background:var(--bg,#F6F6F3);border-radius:8px}.tl-bar{position:absolute;top:2px;bottom:2px;border-radius:7px;cursor:pointer;min-width:10px}.tl-bar.done{background:var(--brand,#3C7538)}.tl-bar.open{background:#e3a23c}.tl-bar.none{background:#cfcbbd}.tl-axis{display:flex;justify-content:space-between;font-size:10px;color:var(--text-faint,#6C6C64);margin:2px 0 6px 130px}.pt-vend{cursor:help;border-bottom:1px dotted var(--border-strong,#D6D6CE)}.vh-card{position:fixed;z-index:2147482050;width:250px;background:var(--surface,#fff);border:1px solid var(--border,#E6E6E0);border-radius:11px;box-shadow:0 10px 30px #0000002e;padding:12px 14px;font-size:12px;color:var(--text,#1B1B19)}.vh-card .nm{font-weight:700;margin-bottom:6px}.vh-card .st{display:flex;justify-content:space-between;margin:3px 0;color:var(--text-muted,#6B6A65)}.vh-card .st b{color:var(--text,#1B1B19)}.pt-card.pt-stuckring{border-color:#e5b8b3;box-shadow:0 0 0 2px #b3261e2e}.pt-stuckbadge{display:inline-block;background:#fbeae8;color:var(--danger-fg,#A32D2D);border:1px solid #F1CFCB;border-radius:999px;padding:1px 8px;font-size:10px;font-weight:700;margin-left:6px}.undo-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:9300;background:var(--text,#1B1B19);color:#fff;border-radius:11px;padding:10px 16px;display:flex;align-items:center;gap:12px;font-size:13px;box-shadow:0 8px 28px #0000004d}.undo-toast button{border:0;background:transparent;color:#9fd8a9;font-weight:700;cursor:pointer;font-size:13px}.undo-toast .bar{position:absolute;left:0;bottom:0;height:3px;background:var(--brand,#3C7538);border-radius:0 0 11px 11px;animation:undoDrain 5s linear forwards}@keyframes undoDrain{0%{width:100%}to{width:0}}@keyframes skShimmer{0%{background-position:-300px 0}to{background-position:300px 0}}.sk{background:linear-gradient(90deg,#efede5 25%,#f8f6ef,#efede5 75%);background-size:600px 100%;animation:skShimmer 1.2s infinite linear;border-radius:9px}.sk-card{height:78px;margin:8px 0}.sk-line{height:14px;margin:8px 0}.sk-block{height:64px;margin:10px 0;border-radius:12px}.kanban-card{content-visibility:auto;contain-intrinsic-size:auto 96px}.task-card{content-visibility:auto;contain-intrinsic-size:auto 88px}.approval-card{content-visibility:auto;contain-intrinsic-size:auto 120px}.notif-snz{border:0;background:transparent;cursor:pointer;font-size:13px;opacity:.55;margin-left:auto;flex:0 0 auto}.notif-snz:hover{opacity:1}
