:root{--bg:#f6f7f9;--card:#fff;--text:#1d2433;--muted:#6b7280;--line:#e5e7eb;--brand:#1f3a5f;--brand-2:#2f5d8f;--ok:#157347;--warn:#b45309;--bad:#b42318;color:var(--text);background:var(--bg);font-family:Segoe UI,system-ui,-apple-system,Roboto,Noto Sans Bengali,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:var(--brand-2);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0 0 .25rem;font-size:1.4rem}h2{margin:1.5rem 0 .5rem;font-size:1.1rem}.muted{color:var(--muted)}.error{color:var(--bad);margin:0}.ok{color:var(--ok);margin:0}.stack{gap:.8rem;display:grid}label{gap:.3rem;font-size:.9rem;font-weight:600;display:grid}input,select,textarea{font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;padding:.55rem .65rem;font-weight:400}textarea{min-height:10rem;font-family:ui-monospace,Consolas,monospace}button,.button{font:inherit;background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:6px;padding:.55rem 1rem;font-weight:600;display:inline-block}button.secondary,.button.secondary{color:var(--brand);border:1px solid var(--brand);background:#fff}button:disabled{opacity:.6;cursor:default}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:1.25rem}.login{place-items:center;min-height:100vh;padding:1rem;display:grid}.login-card{width:min(380px,100%)}.powered{color:var(--muted);text-align:center;margin:1.25rem 0 0;font-size:.75rem}.shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.side{background:var(--brand);color:#fff;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.side a{color:#dbe6f3;border-radius:6px;padding:.45rem .6rem}.side a:hover{background:#ffffff1a;text-decoration:none}.side .company{margin-bottom:.75rem;font-size:1.05rem;font-weight:700}.side .user{color:#c7d4e5;margin-top:auto;font-size:.8rem}.side form button{color:#fff;background:0 0;border:1px solid #c7d4e5;margin-top:.4rem;padding:.3rem .7rem}.content{max-width:1200px;padding:1.5rem 2rem}.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem;margin:1rem 0;display:grid}.kpi .v{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.3rem;font-weight:700}.kpi .l{color:var(--muted);font-size:.8rem}table{border-collapse:collapse;border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.5rem .65rem;font-size:.9rem}th{background:#f1f4f8;font-weight:600}td.n,th.n{text-align:right;font-variant-numeric:tabular-nums}.toolbar{flex-wrap:wrap;align-items:end;gap:.6rem;margin:1rem 0;display:flex}.badge{background:#eef2f7;border-radius:999px;padding:.1rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.badge.draft{background:#eef2f7}.badge.submitted{color:var(--warn);background:#fff4e5}.badge.approved{color:var(--brand-2);background:#e8f1fb}.badge.dispatched{color:#6b21a8;background:#f3e8ff}.badge.received{color:var(--ok);background:#e7f6ec}.badge.received_with_variance{color:var(--bad);background:#fdecea}.badge.consignment{color:var(--warn);background:#fff4e5}.row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.notice{color:var(--warn);background:#fff4e5;border-radius:6px;margin:.5rem 0;padding:.6rem .8rem}@media (max-width:760px){.shell{grid-template-columns:1fr}.side{flex-flow:wrap}.side .user{margin:0}.content{padding:1rem}}.navgroup{flex-direction:column;gap:.1rem;margin-bottom:.5rem;display:flex}.navlabel{text-transform:uppercase;letter-spacing:.05em;color:#9fb3cc;margin:.5rem .6rem .2rem;font-size:.7rem}.badge.pa-alert{color:var(--bad);background:#fdecea}.badge.pa-expired{color:var(--muted);background:#eef2f7}.pa-radio{flex-direction:row;align-items:center;gap:.35rem;font-weight:400;display:inline-flex}.badge.web-imported{background:#eef2f7}.badge.web-stock_short{color:var(--bad);background:#fdecea}.badge.web-reserved{color:var(--brand-2);background:#e8f1fb}.badge.web-dispatched{color:#6b21a8;background:#f3e8ff}.badge.web-delivered{color:var(--ok);background:#e7f6ec}.badge.web-cancelled{color:var(--muted);background:#f1f4f8}.badge.web-returned{color:var(--warn);background:#fff4e5}a.card.kpi{color:inherit}a.card.kpi:hover{border-color:var(--brand-2);text-decoration:none}details>summary{cursor:pointer;font-weight:600}.hr-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.8rem;display:grid}.hr-check{align-items:center;gap:.4rem;font-weight:400;display:flex}.hr-two{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;display:grid}.hr-checkin button{width:100%;padding:1rem;font-size:1.2rem}.badge.hr-flag{color:var(--bad);background:#fdecea}.badge.hr-draft{background:#eef2f7}.badge.hr-hr_approved{color:var(--warn);background:#fff4e5}.badge.hr-approved{color:var(--brand-2);background:#e8f1fb}.badge.hr-paid{color:var(--ok);background:#e7f6ec}.badge.hr-cancelled{color:var(--muted);background:#f3f4f6}.badge.pending{color:var(--warn);background:#fff4e5}.badge.rejected{color:var(--bad);background:#fdecea}.hr-payslip{max-width:820px}.hr-payslip table{margin:.5rem 0}.hr-net{font-size:1.2rem}@media print{.side,.hr-noprint{display:none!important}.shell{display:block}.content{padding:0}}.acc-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.2rem .9rem;margin:0 0 1rem;padding-bottom:.5rem;font-size:.85rem;display:flex}.acc-report tfoot td,tr.acc-total td{background:#f8fafc;font-weight:700}.badge.posted,.badge.finalised,.badge.open{color:var(--ok);background:#e7f6ec}.badge.paid{color:var(--brand-2);background:#e8f1fb}.badge.rejected,.badge.reversed,.badge.closed{color:var(--bad);background:#fdecea}.badge.not.prepared{background:#eef2f7}.proc-head>label{flex:180px}.proc-new{border:1px dashed var(--line);border-radius:8px;padding:.6rem .8rem}.proc-new legend{color:var(--muted);font-size:.85rem;font-weight:600}.proc-lines input,.proc-lines select{width:100%;min-width:5rem}.proc-lines td{vertical-align:top}input.num{text-align:right;max-width:8rem}.small{font-size:.8rem}button.small{padding:.25rem .6rem}.proc-inline{flex-wrap:nowrap;justify-content:flex-end}.proc-check{flex-direction:row;align-items:center;gap:.4rem;display:flex}.proc-details{margin:.8rem 0}.proc-details summary{cursor:pointer;color:var(--brand-2);margin-bottom:.6rem;font-weight:600}.proc-group td{background:#f8fafc}.proc-indent{padding-left:1.6rem!important}.proc-owed{color:var(--warn);font-weight:600}.badge.partial,.badge.open{color:var(--warn);background:#fff4e5}.badge.credit{color:var(--brand-2);background:#e8f1fb}.badge.cash{color:var(--ok);background:#e7f6ec}.proc-stickers{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem;display:grid}.proc-sticker{break-inside:avoid;background:#fff;border:1px dashed #333;padding:.6rem;font-size:.85rem}.proc-sticker .code{font-family:ui-monospace,Consolas,monospace;font-size:1.1rem;font-weight:700}@media print{.side,.no-print{display:none!important}.shell{display:block}.content{padding:0}}.badge.sample{color:var(--warn);background:#fff4e5}.badge.released,.badge.confirmed{color:var(--brand-2);background:#e8f1fb}.badge.in_progress,.badge.partially_delivered{color:#6b21a8;background:#f3e8ff}.badge.closed,.badge.delivered{color:var(--ok);background:#e7f6ec}.badge.cancelled{color:var(--bad);background:#fdecea}details>summary{cursor:pointer;color:var(--brand-2);margin:.5rem 0}.pos{min-height:100vh}.pos-center{place-items:center;min-height:100vh;padding:1rem;display:grid}.pos-narrow{width:min(460px,100%)}.pos-shell{flex-direction:column;min-height:100vh;display:flex}.pos-top{border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 1rem;font-size:.9rem;display:flex}.pos-top button,.pos-top .button{padding:.35rem .7rem;font-size:.85rem}.pos-status{flex-wrap:wrap;align-items:center;gap:.8rem;font-size:.85rem;display:flex}.badge.pos-on{color:var(--ok);background:#e7f6ec}.badge.pos-off{color:var(--bad);background:#fdecea}.pos-bad{color:var(--bad);font-weight:600}.pos-main{flex:1;grid-template-columns:1fr 360px;align-items:start;gap:1rem;padding:1rem;display:grid}.pos-scan input{border:2px solid var(--brand-2);width:100%;padding:.7rem .8rem;font-size:1.2rem}.pos-msg{margin:.5rem 0;font-weight:600}.pos-matches{flex-direction:column;gap:.3rem;margin:.4rem 0;display:flex}.pos-matches button{text-align:left}.pos-lines{margin-top:.6rem}.pos-lines input{text-align:right;width:6.5rem;padding:.3rem .4rem}.pos-lines input.pos-qty{width:4.5rem}.pos-sku{font-size:.75rem}.pos-member-badge{margin-left:.4rem;font-size:.7rem}.pos-member{font-size:.85rem;font-weight:600}.pos-req{color:#c0392b}.pos-missing{background:#fff7f6;border-color:#c0392b!important}.pos-cust{font-size:.85rem}.pr-points{border-top:1px dashed #000;margin-top:4px;padding-top:4px}.pos-x{padding:.2rem .5rem}.pos-tot{font-variant-numeric:tabular-nums;justify-content:space-between;display:flex}.pos-grand{font-size:1.35rem;font-weight:700}.pos-pay{background:var(--ok);padding:.8rem;font-size:1.15rem}.pos-modal{z-index:50;background:#0f172a73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.pos-paybox{width:min(620px,100%)}.pos-payrow input{width:9rem}.pos-payrow input.pay-ref{width:13rem}.pos-paym{min-width:9rem}.pos-methods{flex-wrap:wrap;gap:.4rem;display:flex}.pos-failed{gap:.3rem;margin:.5rem 1rem;display:grid}.pos-receipts,.pos-pin{margin:.5rem 1rem}.pos-print{margin-top:1rem}.pos-receipt{color:#000;max-width:300px;margin:.5rem auto 0;font-family:ui-monospace,Consolas,monospace;font-size:.8rem}.pos-receipt .pr-c{text-align:center}.pos-receipt .pr-b{font-weight:700}.pos-receipt .pr-big{font-size:1.1em}.pos-receipt .pr-row{justify-content:space-between;gap:.5rem;display:flex}.pos-receipt .pr-sub{font-size:.9em}.pos-receipt .pr-hr{border-top:1px dashed #000;margin:.3rem 0}.pos-receipt .pr-line{margin-bottom:.2rem}@media print{.pos-noprint{display:none!important}}@media (max-width:900px){.pos-main{grid-template-columns:1fr}}.lbl-sheet{grid-template-columns:repeat(5,38mm);gap:0;margin-top:1rem;display:grid}.lbl-thermal{grid-template-columns:repeat(auto-fill,38mm);gap:2mm}.lbl{box-sizing:border-box;color:#000;text-align:center;break-inside:avoid;background:#fff;border:1px dashed #cbd5e1;flex-direction:column;justify-content:space-between;align-items:center;width:38mm;height:25mm;padding:1mm 1.5mm;font-family:Arial,Helvetica,sans-serif;line-height:1.05;display:flex;overflow:hidden}.lbl-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:6.5pt;font-weight:700;overflow:hidden}.lbl-meta{white-space:nowrap;font-size:6pt}.lbl-code{width:100%;height:9mm}.lbl-code svg{width:100%;height:100%;display:block}.lbl-sku{letter-spacing:.3px;font-family:Courier New,monospace;font-size:7pt}.lbl-mrp{white-space:nowrap;font-size:6.5pt;font-weight:700}@media print{.lbl-sheet{margin:0}}.adm-set{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:.3rem 1.2rem;padding:.6rem .8rem;display:flex}.adm-set legend{color:var(--muted);text-transform:capitalize;font-size:.85rem;font-weight:600}.adm-check{flex-direction:row;align-items:center;gap:.4rem;font-weight:400;display:flex}.adm-groups{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.8rem;display:grid}.adm-groups .adm-set{flex-direction:column}.adm-temp{border-color:var(--brand-2);max-width:720px}.adm-pw{letter-spacing:.08em;-webkit-user-select:all;user-select:all;background:#f1f4f8;border-radius:6px;padding:.2rem .6rem;font-family:ui-monospace,Consolas,monospace;font-size:1.3rem}.pos-results{border:1px solid var(--line,#d9dee6);background:#fff;border-radius:8px;max-height:360px;margin:.4rem 0;overflow:auto}.pos-results table{border-collapse:collapse;width:100%}.pos-results th{text-align:left;background:#f3f5f8;padding:.35rem .5rem;font-size:.8rem;position:sticky;top:0}.pos-results td{cursor:pointer;border-top:1px solid #eef1f5;padding:.4rem .5rem}.pos-results tr.hi td{background:#e8f0fb}.pos-results tr.out td{color:#9aa3ad}.pos-results tr.out td[data-testid=stock-here]{color:#c0392b}.pos-results .n{text-align:right;font-variant-numeric:tabular-nums}.pos-results-foot{margin:.3rem .5rem;font-size:.8rem}.locate-box{width:100%;padding:.7rem .9rem;font-size:1.15rem}.locate-meta{min-height:1.2rem;margin:.4rem 0 .8rem}.locate-item{margin-bottom:1rem}.locate-head{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:.5rem;display:flex}.locate-total{text-align:right;flex-direction:column;display:flex}.locate-total strong{font-size:1.3rem}.locate-item table{width:100%}.locate-item tr.zero td{color:#9aa3ad}.locate-details{font-size:.85rem}.pa-return-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem;max-width:1100px;display:grid}.pa-summary{border-color:var(--brand-2)}.pa-sum-row{font-variant-numeric:tabular-nums;justify-content:space-between;gap:1rem;display:flex}.pa-sum-list{margin:0;padding-left:1.2rem;font-size:.9rem}.pa-sum-note{margin:0;font-size:.85rem}.pa-settle{margin:0;font-size:1.1rem;font-weight:700}.badge.pa-in{color:var(--ok);background:#e7f6ec}.badge.pa-out{color:var(--warn);background:#fff4e5}@media (max-width:900px){.pa-return-grid{grid-template-columns:1fr}}.pa-sales-wrap{overflow-x:auto}.pa-sales-wrap table{min-width:1150px}.pa-sales-wrap td{white-space:nowrap}.pa-sales-wrap td .badge{margin-right:.25rem}.pa-methods{max-width:520px;margin-bottom:1rem}.pa-kpis-sm .card{padding:.7rem .9rem}.pa-reprint{text-align:center;letter-spacing:.1em;font-family:ui-monospace,Consolas,monospace;font-size:12px;font-weight:700}.locate-attrs{gap:.35rem;margin-left:.5rem;display:inline-flex}.st-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:1rem;margin-bottom:1rem;display:grid}.st-grid table td.n{white-space:nowrap}.st-cash{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:.35rem;padding:.5rem .8rem;display:flex}.st-settle{gap:.8rem;margin-bottom:1rem;display:grid}.st-settle h3{margin:0 0 .3rem}tr.st-overdue td{background:#fff4e5}.st-sheet{max-width:186mm;margin:0 auto;font-size:12px}.st-sheet h3{border-bottom:1px solid #999;margin:10px 0 4px;font-size:13px}.st-sheet-head{border-bottom:2px solid #000;justify-content:space-between;padding-bottom:6px;display:flex}.st-big{font-size:18px}.st-right{text-align:right}.st-print-table{border-collapse:collapse;width:100%}.st-print-table td,.st-print-table th{border:1px solid #bbb;padding:3px 6px}.st-signs{grid-template-columns:1fr 1fr;gap:20mm;margin-top:22mm;display:grid}.st-sign-line{border-top:1px solid #000;margin-bottom:4px}.st-foot{color:#666;margin-top:8mm;font-size:10px}.cl-toolbar{margin-top:.5rem}.cl-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin:.75rem 0 .5rem;display:flex}.cl-state{align-items:center;gap:.6rem;margin:.25rem 0 .75rem;display:flex}.cl-wrap{overflow-x:auto}.cl-table td{vertical-align:top}.cl-table td.n{white-space:nowrap}.cl-table td.cl-type{color:var(--muted);font-size:.8rem}.cl-table td.cl-in{min-width:13rem}.cl-table tr.cl-quiet td{color:var(--muted)}.cl-table tr.cl-cash td{background:#fbfcfd}.cl-table tr.cl-petty td{background:#f8fafc}.cl-table tr.cl-busy{opacity:.75}.cl-form{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.cl-form input,.cl-form select{padding:.35rem .5rem;font-size:.88rem}.cl-form input[name=batch_no],.cl-form input[name=counted],.cl-form input[name=amount]{font-variant-numeric:tabular-nums;width:9rem}.cl-form input[name=note]{flex:12rem;min-width:10rem}.cl-more{gap:.35rem;display:inline-flex}.cl-form input[name=count],.cl-form input[name=slip_count]{width:4.5rem}.cl-form input[name=slip_amount]{width:7rem}.cl-pill{white-space:nowrap;border-radius:999px;padding:.12rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.cl-ok{color:var(--ok);background:#e7f6ec}.cl-warn{color:var(--warn);background:#fff4e5}.cl-grey{color:var(--muted);background:#f1f4f8}.cl-pending{color:var(--brand-2);background:#eef2f7}.cl-status{vertical-align:top;overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:.15rem;max-width:14rem;margin-right:.4rem;display:inline-flex}.cl-sub{color:var(--muted);font-size:.75rem}.cl-breakdown{white-space:normal;max-width:15rem;margin-left:auto;line-height:1.25}.cl-hint{color:var(--warn);font-size:.78rem;font-weight:600}.cl-err{color:var(--bad);margin-top:.25rem;font-size:.8rem}.cl-chips{flex-wrap:wrap;gap:.3rem;margin-bottom:.25rem;display:flex}.cl-chip{font-variant-numeric:tabular-nums;background:#f1f4f8;border-radius:6px;align-items:center;gap:.4rem;padding:.15rem .45rem;font-size:.82rem;display:inline-flex}button.cl-link{color:var(--brand-2);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;padding:0;font-size:.78rem;font-weight:400}button.cl-link:hover{text-decoration:underline}.cl-send{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:.8rem;margin:1rem 0;display:flex}.cl-float{font-size:.85rem;font-weight:400}.cl-float input{width:9rem}.cl-first{max-width:520px}.cl-till{margin-top:1rem}.cl-till summary,.cl-history summary{cursor:pointer;font-weight:600}.cl-history{margin-top:1.25rem}@media (max-width:1280px){.cl-table th,.cl-table td{padding:.45rem;font-size:.85rem}.cl-table td.cl-in{min-width:11rem}.cl-form input[name=batch_no],.cl-form input[name=counted],.cl-form input[name=amount]{width:7.5rem}}.ph-field{flex-direction:column;gap:.25rem;display:flex}.ph-field.ph-compact{flex-flow:wrap;align-items:center;gap:.4rem}.ph-field.ph-compact>label{font-size:.8rem}.ph-field input[type=file]{max-width:16rem;font-size:.85rem}.ph-status{color:var(--muted);align-items:center;gap:.45rem;font-size:.8rem;display:inline-flex}.ph-error{color:var(--bad);font-size:.8rem}.ph-preview{border:1px solid #dde3ea;border-radius:4px;width:auto;height:40px}button.ph-thumb{cursor:zoom-in;background:#fff;border:1px solid #dde3ea;border-radius:4px;padding:0;line-height:0}button.ph-thumb img{object-fit:cover;border-radius:3px;width:60px;height:44px}dialog.ph-viewer{border:0;border-radius:8px;max-width:96vw;max-height:96vh;padding:.6rem}dialog.ph-viewer::backdrop{background:#0f172aa6}.ph-viewer-bar{align-items:center;gap:.8rem;margin-bottom:.4rem;display:flex}.ph-viewer-bar strong{flex:1}.ph-full{width:auto;max-width:92vw;height:auto;max-height:84vh;margin:0 auto;display:block}.dp-form fieldset.dp-type{border:0;flex-wrap:wrap;gap:1.2rem;margin:0;padding:0;display:flex}.dp-form fieldset.dp-type legend{margin-bottom:.25rem;padding:0;font-weight:600}.dp-form fieldset.dp-type label{align-items:center;gap:.35rem;font-weight:400;display:inline-flex}.ba-edit{min-width:16rem;margin-top:.4rem}.vc-table td{vertical-align:top}.vc-verify summary{cursor:pointer;color:var(--brand-2);margin-top:.3rem;font-size:.8rem}.vc-verify form{min-width:12rem;margin-top:.3rem}.pos-points{background:#f7faf8}
