:root{--primary:#1d4ed8;--dark:#0f172a;--muted:#64748b;--bg:#f4f7fb;--card:#fff;--border:#e5e7eb}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,Segoe UI,Arial,sans-serif;color:#111827}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#2563eb,#0f172a 45%,#020617);padding:18px}.login-card{width:1020px;max-width:100%;display:grid;grid-template-columns:1.08fr .92fr;background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.35)}.login-hero{padding:58px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;position:relative;overflow:hidden}.login-hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.12);right:-70px;bottom:-80px}.login-hero h1{font-size:44px;line-height:1.05;font-weight:900}.login-hero p{opacity:.92;font-size:17px}.feature-pills span{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);padding:10px 13px;border-radius:999px;margin:6px 5px 0 0}.login-form{padding:56px}.form-control,.form-select{border-radius:14px;padding:12px;border-color:#dbe3ef}.btn-primary{background:var(--primary);border:0;border-radius:14px;padding:12px 18px;font-weight:800}.btn-outline-primary,.btn-outline-danger,.btn-outline-secondary,.btn-success,.btn-danger,.btn-warning{border-radius:12px}.app{display:flex;min-height:100vh}.sidebar{width:282px;background:#0f172a;color:#fff;position:fixed;inset:0 auto 0 0;padding:20px;overflow:auto;z-index:20}.brand{display:flex;align-items:center;gap:12px;margin-bottom:22px}.brand .logo{min-width:48px;height:48px;border-radius:16px;background:#2563eb;display:grid;place-items:center;font-weight:900}.brand span{display:block;color:#94a3b8;font-size:13px}.sidebar a{display:block;color:#cbd5e1;text-decoration:none;padding:11px 13px;border-radius:14px;margin:3px 0;font-weight:600}.sidebar a:hover{background:#1e293b;color:#fff}.content{margin-left:282px;width:calc(100% - 282px);padding:24px}.topbar{background:#fff;border-radius:22px;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px;box-shadow:0 8px 25px rgba(15,23,42,.06)}.user-pill{background:#eef2ff;padding:10px 16px;border-radius:999px;color:#1d4ed8;font-weight:800;white-space:nowrap}.stat{background:#fff;border-radius:22px;padding:22px;box-shadow:0 8px 25px rgba(15,23,42,.06);height:100%;border:1px solid rgba(229,231,235,.7)}.stat h3{font-weight:900}.card{border:0;border-radius:22px;box-shadow:0 8px 25px rgba(15,23,42,.06)}.table{vertical-align:middle}.table-responsive{border-radius:18px}.badge-soft{background:#eff6ff;color:#1d4ed8;padding:8px 12px;border-radius:999px;font-weight:800}.invoice{max-width:900px;margin:auto;background:white;padding:35px;border-radius:20px}.mobile-top{display:none}.mini{font-size:12px;color:var(--muted)}.search-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.print-only{display:none}@media(max-width:1100px){.search-row,.form-grid{grid-template-columns:repeat(2,1fr)}.content{padding:16px}}@media(max-width:860px){.mobile-top{display:flex;position:sticky;top:0;background:#fff;z-index:30;align-items:center;justify-content:space-between;padding:12px 14px;box-shadow:0 6px 20px rgba(15,23,42,.08)}.mobile-top a{text-decoration:none}.menu-btn{border:0;background:#eef2ff;border-radius:12px;padding:8px 12px;color:#1d4ed8;font-weight:900}.sidebar{transform:translateX(-110%);transition:.25s;box-shadow:20px 0 60px rgba(0,0,0,.25)}body.nav-open .sidebar{transform:translateX(0)}.app{display:block}.content{margin-left:0;width:100%;padding:12px}.topbar{display:block}.user-pill{display:inline-block;margin-top:12px}.login-card{grid-template-columns:1fr}.login-hero{padding:36px}.login-hero h1{font-size:34px}.login-form{padding:32px}.table{min-width:760px}.form-grid,.search-row{grid-template-columns:1fr}}@media(max-width:520px){.login-hero{display:none}.login-form{padding:25px}.stat{padding:18px}.topbar h4{font-size:18px}.content{padding:10px}.card-body{padding:14px}.btn{width:100%;margin-top:6px}.btn-group .btn{width:auto}.invoice{padding:18px}}@media print{.sidebar,.topbar,.mobile-top,.no-print,.btn,.alert{display:none!important}.content{margin:0;width:100%;padding:0;background:white}.invoice{box-shadow:none;border-radius:0;max-width:100%;padding:0}.print-only{display:block}body{background:white}.table{min-width:auto}}
/* Sanitary Store POS Upgrade */
:root{--primary:#24346d;--dark:#111936;--bg:#f3f5fb}.sidebar{background:linear-gradient(180deg,#111936,#24346d)}.brand .logo{background:#fff;color:#24346d}.stat{position:relative;overflow:hidden}.stat:before{content:"";position:absolute;right:-32px;top:-32px;width:96px;height:96px;border-radius:50%;background:rgba(36,52,109,.08)}.stat h3{color:#24346d}.pos-wrap{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;align-items:start}.pos-search{max-width:320px}.cat-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:4px}.cat-btn{border:1px solid #dbe3ef;background:#fff;color:#24346d;border-radius:999px;padding:9px 14px;font-weight:800;white-space:nowrap}.cat-btn.active,.cat-btn:hover{background:#24346d;color:#fff}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:12px;max-height:70vh;overflow:auto;padding-right:4px}.product-card{text-align:left;border:1px solid #e4e8f2;background:#fff;border-radius:20px;padding:14px;min-height:178px;transition:.2s;box-shadow:0 8px 18px rgba(15,23,42,.04)}.product-card:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(36,52,109,.16);border-color:#24346d}.product-card .p-img{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#eef2ff,#dbeafe);display:grid;place-items:center;font-size:26px;font-weight:900;color:#24346d;margin-bottom:10px}.product-card b{display:block;font-size:14px;min-height:36px}.product-card small{display:block;color:#64748b;font-size:12px;margin:4px 0}.product-card strong{color:#24346d}.pos-cart{position:sticky;top:16px}.cart-lines{max-height:330px;overflow:auto}.empty-cart{text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:20px;color:#64748b}.cart-row{display:grid;grid-template-columns:1fr 70px 70px 34px;gap:7px;align-items:center;border-bottom:1px solid #edf1f7;padding:9px 0}.cart-row b{font-size:13px}.cart-row small{display:block;color:#64748b;font-size:11px}.cart-row input{width:100%;border:1px solid #dbe3ef;border-radius:10px;padding:7px}.cart-row button{border:0;background:#fee2e2;color:#991b1b;border-radius:10px;height:32px;font-weight:900}.bill-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:12px}.bill-box div{display:flex;justify-content:space-between;padding:6px 0}.bill-box .due{border-top:1px solid #e2e8f0;margin-top:5px;padding-top:10px;color:#b91c1c;font-size:17px}.a5-invoice{width:148mm;min-height:210mm;max-width:148mm;color:#24346d;border-radius:0;padding:6mm 7mm;font-family:Arial, sans-serif}.inv-head{display:grid;grid-template-columns:26mm 1fr 36mm;gap:4mm;align-items:start}.inv-logo b{font-size:28pt;line-height:.8;display:block}.inv-logo span{font-size:7pt;font-weight:800}.inv-title h1{font-size:22pt;line-height:1;margin:0;font-weight:900}.inv-title p{font-size:9pt;font-weight:800;margin:2mm 0}.owner-box{border:1.5px solid #24346d;padding:2mm;text-align:center;font-size:9pt;line-height:1.1}.owner-box span,.owner-box strong{display:block}.inv-meta{display:grid;grid-template-columns:1fr 30mm 33mm;gap:3mm;font-size:9pt;margin:2mm 0;border-top:1px solid #24346d;padding-top:1.5mm}.a5-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:8.2pt}.a5-table th{background:#24346d;color:#fff;border:1px solid #24346d;padding:2mm 1mm}.a5-table td{border:1px solid #8791b0;height:7.2mm;padding:1mm}.a5-table th:nth-child(1),.a5-table td:nth-child(1){width:14mm;text-align:center}.a5-table th:nth-child(3),.a5-table td:nth-child(3){width:17mm;text-align:center}.a5-table th:nth-child(4),.a5-table td:nth-child(4){width:19mm;text-align:right}.a5-table th:nth-child(5),.a5-table td:nth-child(5){width:24mm;text-align:right}.inv-bottom{display:grid;grid-template-columns:1fr 50mm;gap:5mm;margin-top:2mm;align-items:end}.sign{display:flex;align-items:end;gap:2mm;color:#24346d}.sign span{border-bottom:1px solid #24346d;display:inline-block;width:62mm;height:9mm}.inv-bottom table{width:100%;border-collapse:collapse;font-size:9pt}.inv-bottom th,.inv-bottom td{border:1px solid #24346d;padding:2mm;text-align:left}.address-bar{background:#24346d;color:#fff;text-align:center;font-size:11pt;font-weight:900;margin-top:2mm;padding:2mm}@page{size:A5 portrait;margin:0}@media(max-width:1180px){.pos-wrap{grid-template-columns:1fr}.pos-cart{position:static}.product-grid{max-height:none}}@media(max-width:560px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cart-row{grid-template-columns:1fr 56px 56px 30px}.pos-main .card-body,.pos-cart .card-body{padding:12px}.inv-title h1{font-size:18pt}}@media print{body{background:white}.a5-invoice{width:148mm;min-height:210mm;max-width:148mm;padding:6mm 7mm;margin:0}.a5-table td{height:7.2mm}.content{padding:0}.invoice{margin:0!important}}
/* Professional full-screen POS terminal */
.pos-fullscreen{background:#eef2f7;min-height:100vh;overflow-x:hidden}.pos-header{background:linear-gradient(135deg,#111936,#24346d);color:#fff;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:sticky;top:0;z-index:50;box-shadow:0 12px 35px rgba(17,25,54,.25)}.pos-header h3{margin:0;font-weight:900;font-size:22px}.pos-header p{margin:2px 0 0;color:#cbd5e1;font-size:13px}.back-btn{background:#fff;color:#24346d;text-decoration:none;font-weight:900;border-radius:14px;padding:11px 15px;white-space:nowrap}.pos-head-actions{display:flex;align-items:center;gap:10px;min-width:420px}.pos-head-actions .form-control{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.25)}.pos-head-actions .form-control::placeholder{color:#dbeafe}.pos-alert{margin:12px 16px 0}.pos-terminal-shell{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:16px;padding:16px;height:calc(100vh - 78px)}.pos-products-panel,.pos-cart-panel,.recent-pos{background:#fff;border-radius:24px;box-shadow:0 12px 35px rgba(15,23,42,.08);border:1px solid #e4e8f2}.pos-products-panel{padding:16px;min-width:0;display:flex;flex-direction:column;overflow:hidden}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-title h5,.cart-head h5,.recent-pos h5{margin:0;font-weight:900;color:#172554}.panel-title span{color:#64748b;font-size:13px}.pos-category-strip{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;margin-bottom:4px;border-bottom:1px solid #eef2f7}.product-grid-pro{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;overflow:auto;padding:12px 4px 4px}.product-card-pro{display:grid;grid-template-columns:58px 1fr;grid-template-rows:auto auto;gap:8px 10px;align-items:center;text-align:left;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:20px;padding:12px;min-height:126px;transition:.18s;box-shadow:0 8px 18px rgba(15,23,42,.04)}.product-card-pro:hover{transform:translateY(-2px);border-color:#24346d;box-shadow:0 16px 34px rgba(36,52,109,.15)}.product-photo{grid-row:1 / 3;width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#e0e7ff,#bfdbfe);display:grid;place-items:center;font-weight:900;font-size:25px;color:#24346d}.product-info b{font-size:14px;line-height:1.2;color:#0f172a;display:block}.product-info small{font-size:12px;color:#64748b}.product-meta{grid-column:2;display:flex;align-items:center;justify-content:space-between;gap:8px}.product-meta strong{color:#24346d;font-size:14px}.product-meta em{font-style:normal;background:#ecfdf5;color:#047857;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.pos-cart-panel{padding:16px;overflow:auto}.cart-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.cart-head button{border:0;background:#fee2e2;color:#991b1b;border-radius:12px;font-weight:900;padding:8px 12px}.cart-lines-pro{min-height:170px;max-height:34vh;overflow:auto;border:1px solid #edf1f7;border-radius:18px;padding:8px;background:#fbfdff}.cart-row-pro{display:grid;grid-template-columns:minmax(0,1fr) 58px 58px 78px 32px;gap:7px;align-items:center;padding:8px 0;border-bottom:1px solid #edf1f7}.cart-row-pro:last-child{border-bottom:0}.cart-row-pro b{font-size:13px}.cart-row-pro small{display:block;color:#64748b;font-size:11px}.cart-row-pro input,.cart-inputs input{border:1px solid #dbe3ef;border-radius:11px;padding:8px;width:100%}.cart-row-pro strong{font-size:12px;color:#172554;text-align:right}.cart-row-pro button{border:0;background:#fee2e2;color:#991b1b;border-radius:10px;height:32px;font-weight:900}.cart-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.cart-inputs input:last-child{grid-column:1 / 3}.bill-box-pro{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:13px;margin-top:12px}.bill-box-pro div{display:flex;justify-content:space-between;padding:6px 0}.bill-box-pro .due{border-top:1px solid #dbe3ef;margin-top:5px;padding-top:11px;color:#b91c1c;font-size:17px}.recent-pos{margin:0 16px 16px;padding:16px}.empty-cart{text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:24px;color:#64748b}@media(max-width:1200px){.pos-terminal-shell{grid-template-columns:1fr;height:auto}.pos-cart-panel{order:-1}.cart-lines-pro{max-height:none}.pos-head-actions{min-width:300px}.product-grid-pro{max-height:none}}@media(max-width:760px){.pos-header{position:static;display:block}.pos-header .d-flex{align-items:flex-start!important}.pos-head-actions{min-width:0;width:100%;margin-top:12px}.pos-terminal-shell{padding:10px;gap:10px}.product-grid-pro{grid-template-columns:1fr}.cart-row-pro{grid-template-columns:1fr 52px 52px 65px 30px}.product-meta{display:block}.recent-pos{margin:0 10px 10px}.back-btn{display:inline-block;margin-bottom:6px}}@media print{.pos-header,.pos-terminal-shell,.recent-pos{display:none!important}}
/* Netzonix black & white A5 invoice final */
.bw-invoice{width:148mm!important;max-width:148mm!important;min-height:auto!important;background:#fff!important;color:#000!important;border-radius:0!important;padding:5mm 6mm 4mm!important;font-family:Arial,Helvetica,sans-serif!important;box-shadow:none!important;overflow:hidden!important}.invoice-logo-row{text-align:center;margin:0 auto 1.5mm}.invoice-logo-row img{width:128mm;max-width:100%;height:26mm;object-fit:contain;filter:grayscale(1) contrast(1.2)}.invoice-line{border-top:1.3px solid #000;margin:0 0 1.8mm}.bw-meta{display:grid!important;grid-template-columns:1fr 28mm 30mm!important;gap:2mm!important;border:0!important;margin:0 0 2mm!important;padding:0!important;font-size:7.8pt!important;color:#000!important}.bw-table{width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;font-size:7.2pt!important;color:#000!important}.bw-table th{background:#000!important;color:#fff!important;border:1px solid #000!important;padding:1.1mm .8mm!important;font-weight:700!important}.bw-table td{border:1px solid #000!important;height:5.55mm!important;line-height:1.05!important;padding:.65mm .8mm!important;vertical-align:middle!important;overflow:hidden!important}.bw-table th:nth-child(1),.bw-table td:nth-child(1){width:11mm!important;text-align:center!important}.bw-table th:nth-child(3),.bw-table td:nth-child(3){width:17mm!important;text-align:center!important}.bw-table th:nth-child(4),.bw-table td:nth-child(4){width:18mm!important;text-align:right!important}.bw-table th:nth-child(5),.bw-table td:nth-child(5){width:21mm!important;text-align:right!important}.bw-bottom{display:flex!important;justify-content:flex-end!important;margin-top:2mm!important}.totals-table{width:48mm!important;border-collapse:collapse!important;font-size:7.6pt!important;color:#000!important}.totals-table th,.totals-table td{border:1px solid #000!important;padding:1.25mm!important;text-align:left!important}.totals-table td{text-align:right!important}.bw-address{background:#000!important;color:#fff!important;text-align:center!important;font-size:9pt!important;font-weight:900!important;margin-top:2mm!important;padding:1.5mm!important}.bw-invoice .sign,.bw-invoice .owner-box,.bw-invoice .inv-head,.bw-invoice .inv-logo,.bw-invoice .inv-title{display:none!important}@page{size:A5 portrait;margin:0}@media print{html,body{width:148mm;height:210mm;margin:0!important;background:#fff!important}.bw-invoice{margin:0!important;padding:5mm 6mm 4mm!important;width:148mm!important;max-width:148mm!important}.content{margin:0!important;width:100%!important;padding:0!important}.invoice-logo-row img{height:26mm!important}.no-print{display:none!important}}
.cart-inputs.no-tax{grid-template-columns:1fr 1fr}.cart-inputs.no-tax input:last-child{grid-column:1 / 3}

/* Invoice print fix: compact black & white A5 layout */
.bw-invoice{width:148mm!important;max-width:148mm!important;min-height:0!important;background:#fff!important;color:#000!important;padding:5mm 6mm 4mm!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
.invoice-logo-row{height:24mm!important;margin:0 0 1.2mm!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;background:#fff!important}
.invoice-logo-row img{display:block!important;width:122mm!important;max-width:122mm!important;height:auto!important;max-height:23mm!important;object-fit:contain!important;object-position:center center!important;filter:grayscale(1) contrast(1.25)!important}
.invoice-line{border-top:1px solid #000!important;margin:0 0 1.5mm!important}
.bw-meta{grid-template-columns:1fr 28mm 28mm!important;gap:2mm!important;font-size:7.2pt!important;line-height:1.1!important;margin:0 0 1.5mm!important;color:#000!important}
.bw-table{font-size:6.8pt!important;color:#000!important;line-height:1!important}
.bw-table th{background:#000!important;color:#fff!important;border:1px solid #000!important;padding:.9mm .7mm!important}
.bw-table td{border:1px solid #000!important;height:4.85mm!important;min-height:4.85mm!important;padding:.45mm .65mm!important;line-height:1.05!important;color:#000!important;background:#fff!important}
.bw-table th:nth-child(1),.bw-table td:nth-child(1){width:10mm!important;text-align:center!important}.bw-table th:nth-child(3),.bw-table td:nth-child(3){width:16mm!important;text-align:center!important}.bw-table th:nth-child(4),.bw-table td:nth-child(4){width:17mm!important;text-align:right!important}.bw-table th:nth-child(5),.bw-table td:nth-child(5){width:20mm!important;text-align:right!important}
.bw-bottom{display:flex!important;justify-content:flex-end!important;margin-top:1.5mm!important}.totals-table{width:46mm!important;border-collapse:collapse!important;font-size:7.2pt!important;color:#000!important;background:#fff!important}.totals-table th,.totals-table td{border:1px solid #000!important;padding:1mm!important;color:#000!important;background:#fff!important}.totals-table td{text-align:right!important}
.bw-address{border:1px solid #000!important;background:#000!important;color:#fff!important;text-align:center!important;font-size:8.6pt!important;font-weight:900!important;margin-top:1.7mm!important;padding:1.25mm!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
@media print{html,body{width:148mm!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important}.bw-invoice{margin:0!important;padding:5mm 6mm 4mm!important;width:148mm!important;max-width:148mm!important;page-break-inside:avoid!important}.invoice-logo-row{height:24mm!important}.invoice-logo-row img{width:122mm!important;max-height:23mm!important}.bw-table td{height:4.85mm!important}.content{margin:0!important;width:100%!important;padding:0!important}.app{display:block!important}.no-print,.sidebar,.topbar,.mobile-top{display:none!important}}

/* ==== FINAL INVOICE OVERRIDE (logo small + black/white print) ==== */
.invoice.a5-invoice.bw-invoice{width:148mm!important;max-width:148mm!important;min-height:auto!important;background:#fff!important;color:#000!important;border-radius:0!important;box-shadow:none!important;padding:6mm 7mm 5mm!important;font-family:Arial,Helvetica,sans-serif!important;overflow:hidden!important}.bw-logo-wrap{height:22mm!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;margin:0 0 2mm!important;background:#fff!important}.bw-logo-wrap img{display:block!important;width:82mm!important;max-width:82mm!important;height:auto!important;max-height:20mm!important;object-fit:contain!important;filter:grayscale(1) contrast(1.35)!important}.bw-rule{border:0!important;border-top:1px solid #000!important;margin:0 0 2mm!important;height:0!important}.bw-address{border:1px solid #000!important;background:#000!important;color:#fff!important;text-align:center!important;font-size:9pt!important;font-weight:900!important;margin-top:2.5mm!important;padding:1.6mm!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.bw-address strong,.bw-address span{color:#fff!important}@page{size:A5 portrait;margin:0}@media print{html,body{width:148mm!important;min-height:210mm!important;margin:0!important;padding:0!important;background:#fff!important;color:#000!important}.sidebar,.topbar,.mobile-top,.no-print,.btn,.alert{display:none!important}.app{display:block!important}.content{margin:0!important;width:148mm!important;padding:0!important;background:#fff!important}.invoice.a5-invoice.bw-invoice{margin:0!important;width:148mm!important;max-width:148mm!important;padding:6mm 7mm 5mm!important;page-break-inside:avoid!important}.bw-logo-wrap{height:22mm!important}.bw-logo-wrap img{width:82mm!important;max-width:82mm!important;max-height:20mm!important}}

/* Proprietor header override for A5 invoice */
.bw-header{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5mm!important;margin:0 0 3mm!important;padding:0 0 3mm!important;border-bottom:1px solid #000!important;background:#fff!important;overflow:hidden!important}.bw-header .bw-logo-wrap{flex:1 1 auto!important;height:24mm!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;overflow:hidden!important;margin:0!important;background:#fff!important}.bw-header .bw-logo-wrap img{display:block!important;width:92mm!important;max-width:92mm!important;height:auto!important;max-height:23mm!important;object-fit:contain!important;object-position:left center!important;filter:grayscale(1) contrast(1.35)!important}.bw-owner-box{flex:0 0 32mm!important;width:32mm!important;min-height:18mm!important;border:1px solid #000!important;border-radius:2mm!important;padding:2mm 1.5mm!important;text-align:center!important;font-size:7.3pt!important;line-height:1.25!important;font-weight:600!important;background:#fff!important;color:#000!important;overflow:hidden!important}.bw-owner-box .label{font-size:7pt!important;font-weight:800!important;display:block!important;margin-bottom:.6mm!important}.bw-owner-box .name{font-size:8pt!important;font-weight:900!important;display:block!important;margin-bottom:.5mm!important}.bw-owner-box .phone{font-size:7.5pt!important;font-weight:900!important;display:block!important}@media print{.bw-header{height:27mm!important;margin-bottom:2.5mm!important;padding-bottom:2.5mm!important}.bw-owner-box{border:1px solid #000!important;color:#000!important;background:#fff!important}}


/* Desktop/PWA install button */
.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.mobile-actions{display:flex;align-items:center;gap:8px}.install-app-btn{border:0;background:#0f172a;color:#fff;border-radius:999px;padding:9px 14px;font-weight:800;box-shadow:0 8px 18px rgba(15,23,42,.16);white-space:nowrap}.install-app-btn:hover{background:#24346d;color:#fff}@media(max-width:860px){.top-actions{justify-content:flex-start;margin-top:12px}.install-app-btn{padding:8px 11px;font-size:12px}}@media print{.install-app-btn,.top-actions .install-app-btn,.mobile-actions .install-app-btn{display:none!important}}


/* ===== ZamZam Traders Brand Theme ===== */
:root{--primary:#d30b18;--dark:#071d3c;--ct-navy:#071d3c;--ct-red:#d30b18;--ct-soft:#f6f8fc}.sidebar{background:linear-gradient(180deg,#061a36 0%,#0a2d59 65%,#071d3c 100%)}.brand{padding:7px 4px 17px;border-bottom:1px solid rgba(255,255,255,.12)}.brand .ct-side-logo{min-width:58px;width:58px;height:58px;background:#fff;border-radius:15px;padding:4px;overflow:hidden}.brand .ct-side-logo img{width:100%;height:100%;object-fit:contain}.brand b{font-size:16px;line-height:1.15}.sidebar a:hover{background:linear-gradient(90deg,rgba(211,11,24,.95),rgba(185,7,20,.88));color:#fff}.btn-primary{background:linear-gradient(135deg,#d30b18,#a8000d)}.user-pill{background:#fff1f2;color:#b50917}.stat h3,.product-card strong{color:#0a2d59}.badge-soft{background:#fff1f2;color:#b50917}.topbar{border-top:3px solid #d30b18}
.ct-login-page{min-height:100vh;margin:0;padding:28px;display:grid;place-items:center;background:radial-gradient(circle at 15% 15%,rgba(211,11,24,.2),transparent 30%),radial-gradient(circle at 85% 80%,rgba(27,75,128,.35),transparent 34%),linear-gradient(135deg,#031126,#071d3c 54%,#0b315f);font-family:Inter,Segoe UI,Arial,sans-serif}.ct-login-shell{width:min(1120px,100%);min-height:650px;display:grid;grid-template-columns:1.12fr .88fr;background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 35px 100px rgba(0,0,0,.45);position:relative}.ct-login-brand{position:relative;overflow:hidden;padding:56px;background:linear-gradient(145deg,#f8fbff,#eef3fa);display:flex;flex-direction:column;justify-content:center}.ct-login-brand:before{content:"";position:absolute;left:0;top:0;width:100%;height:7px;background:linear-gradient(90deg,#071d3c 0 55%,#d30b18 55%)}.ct-brand-glow{position:absolute;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(211,11,24,.12),transparent 68%);right:-120px;top:-120px}.ct-login-logo{width:min(520px,100%);height:auto;object-fit:contain;margin-bottom:28px;position:relative}.ct-login-brand h1{font-size:36px;font-weight:900;color:#071d3c;letter-spacing:-1px}.ct-login-brand p{font-size:16px;color:#526172;line-height:1.75;max-width:630px}.ct-features{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.ct-features span{border:1px solid #d8e0eb;background:#fff;color:#0b315f;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:800;box-shadow:0 7px 18px rgba(7,29,60,.06)}.ct-login-form{padding:64px 55px;display:flex;flex-direction:column;justify-content:center}.ct-kicker{display:inline-block;color:#d30b18;font-size:12px;font-weight:900;letter-spacing:1.8px;margin-bottom:8px}.ct-login-head h2{font-size:35px;font-weight:900;color:#071d3c;margin:0}.ct-login-head p{color:#748195;margin:8px 0 30px}.ct-login-form label{font-weight:800;color:#243449;font-size:13px;margin:0 0 7px}.ct-input{position:relative;margin-bottom:20px}.ct-input span{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#d30b18;font-size:13px;z-index:2}.ct-input .form-control{padding:14px 15px 14px 44px;border-radius:13px;border:1px solid #d9e1eb;background:#f9fbfd}.ct-input .form-control:focus{border-color:#d30b18;box-shadow:0 0 0 .2rem rgba(211,11,24,.12);background:#fff}.ct-login-btn{margin-top:8px;background:linear-gradient(135deg,#d30b18,#a9000d);color:#fff;border:0;border-radius:13px;padding:14px;font-weight:900;box-shadow:0 12px 28px rgba(211,11,24,.28)}.ct-login-btn:hover{color:#fff;transform:translateY(-1px)}.ct-login-foot{text-align:center;color:#8390a1;font-size:12px;margin-top:26px}.ct-login-foot b{color:#071d3c}@media(max-width:850px){.ct-login-page{padding:15px}.ct-login-shell{grid-template-columns:1fr}.ct-login-brand{padding:30px}.ct-login-logo{width:390px;margin:0 auto 12px}.ct-login-brand h1{font-size:26px}.ct-login-brand p,.ct-features{display:none}.ct-login-form{padding:36px 28px}.ct-login-head h2{font-size:29px}}@media(max-width:520px){.ct-login-brand{padding:22px}.ct-login-form{padding:30px 22px}.ct-login-shell{border-radius:22px}}

/* Professional categorized sidebar */
.sidebar{width:300px;padding:18px 16px 16px;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(180deg,#0d1838 0%,#13265a 100%)}
.sidebar .brand{flex:0 0 auto;margin-bottom:10px;padding:5px 4px 16px}
.sidebar-nav{display:flex;flex-direction:column;min-height:0;height:100%;overflow-y:auto;padding:2px 4px 0 2px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent}
.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:999px}
.sidebar-section{margin-bottom:14px}.sidebar-section-title{padding:8px 14px 7px;color:#8faeef;font-size:12px;font-weight:900;letter-spacing:1.15px;text-transform:uppercase}
.sidebar .sidebar-link{display:flex;align-items:center;gap:13px;min-height:50px;margin:4px 0;padding:11px 14px;color:#f4f7ff;border-radius:15px;font-size:14px;font-weight:750;border:1px solid transparent;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.sidebar .sidebar-link:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.08);transform:translateX(2px)}
.sidebar .sidebar-link.active{background:linear-gradient(90deg,rgba(91,120,184,.47),rgba(255,255,255,.12));border-color:rgba(255,255,255,.12);box-shadow:inset 4px 0 0 #56b1ff,0 8px 22px rgba(0,0,0,.16);color:#fff}
.sidebar-icon{width:25px;height:25px;display:grid;place-items:center;flex:0 0 25px;color:#fff}.sidebar-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-link.active .sidebar-icon{color:#fff}.sidebar-label{line-height:1.2}
.sidebar-logout-wrap{margin-top:auto;padding-top:12px;position:sticky;bottom:0;background:linear-gradient(180deg,rgba(19,38,90,0),#13265a 28%)}
.sidebar .sidebar-logout{background:rgba(113,36,75,.32);border-color:rgba(255,255,255,.04);margin-bottom:0}.sidebar .sidebar-logout:hover{background:rgba(150,45,91,.45)}
.content{margin-left:300px;width:calc(100% - 300px)}
@media(max-width:860px){.sidebar{width:290px}.content{margin-left:0;width:100%}.sidebar-nav{padding-bottom:8px}}

/* ===== Full-screen module mode ===== */
body.module-fullscreen{background:#f4f7fb}
body.module-fullscreen .sidebar,
body.module-fullscreen .mobile-top{display:none!important}
body.module-fullscreen .content{margin-left:0!important;width:100%!important;max-width:none!important;padding:18px 22px 28px!important}
.module-fullscreen-bar{min-height:70px;background:#fff;border-radius:18px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 8px 25px rgba(15,23,42,.07);border-top:3px solid var(--ct-red,#d30b18);position:sticky;top:0;z-index:19}
.module-fullscreen-left{display:flex;align-items:center;gap:14px;min-width:0}
.module-back-btn{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;background:#0d1838;color:#fff;text-decoration:none;border-radius:12px;padding:10px 14px;font-weight:900;box-shadow:0 7px 18px rgba(13,24,56,.18);transition:transform .18s ease,background .18s ease}
.module-back-btn:hover{background:#24346d;color:#fff;transform:translateX(-2px)}
.module-back-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.module-heading{min-width:0}.module-heading h4{font-weight:900;color:#0d1838;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-heading small{color:#64748b;font-weight:650}
@media(max-width:700px){body.module-fullscreen .content{padding:10px!important}.module-fullscreen-bar{border-radius:14px;min-height:62px;padding:9px 10px}.module-back-btn{padding:9px 11px}.module-heading h4{font-size:17px}.module-heading small{font-size:11px}.module-fullscreen-bar .user-pill{display:none}}
@media print{.module-fullscreen-bar{display:none!important}body.module-fullscreen .content{padding:0!important}}


/* ===== ZamZam Traders Sanitary Store Theme ===== */
:root{--primary:#e31b23;--dark:#090909;--muted:#6b7280;--bg:#f4f4f5;--card:#fff;--border:#e5e7eb}
body{background:linear-gradient(180deg,#fafafa,#f0f0f1);color:#18181b}
.sidebar{background:linear-gradient(180deg,#090909 0%,#171717 58%,#2a090b 100%);border-right:1px solid rgba(227,27,35,.32)}
.brand .logo{background:#090909;border:1px solid rgba(255,255,255,.14);overflow:hidden;padding:3px}
.brand .logo img,.ct-side-logo img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.sidebar a:hover,.sidebar a.active{background:linear-gradient(90deg,rgba(227,27,35,.28),rgba(227,27,35,.08));color:#fff;border-left:3px solid #e31b23}
.btn-primary,.ct-login-btn{background:linear-gradient(135deg,#f2262e,#b7070d)!important;color:#fff!important;box-shadow:0 10px 24px rgba(227,27,35,.25)}
.btn-primary:hover,.ct-login-btn:hover{background:linear-gradient(135deg,#b7070d,#790006)!important}
.stat h3,.badge-soft,.product-card strong{color:#c40d14}.badge-soft{background:#fff0f1}.user-pill{background:#fff0f1;color:#c40d14}
.cat-btn{color:#b7070d;border-color:#f2b7ba}.cat-btn.active,.cat-btn:hover{background:#d71920;color:#fff}
.product-card:hover{border-color:#d71920;box-shadow:0 16px 35px rgba(215,25,32,.14)}
.product-card .p-img{background:linear-gradient(135deg,#fff1f2,#e5e5e5);color:#c40d14}
.pos-header{background:linear-gradient(135deg,#080808,#2a2a2a 65%,#760006)}
.back-btn{color:#b7070d}.address-bar,.a5-table th{background:#111;color:#fff}.a5-table th,.owner-box,.inv-bottom th,.inv-bottom td{border-color:#d71920}.a5-invoice,.sign{color:#111}
.ct-login-page{min-height:100vh;background:radial-gradient(circle at 18% 12%,rgba(227,27,35,.24),transparent 31%),linear-gradient(135deg,#050505,#121212 58%,#350306);padding:28px}
.ct-login-shell{max-width:1120px;margin:auto;min-height:680px;display:grid;grid-template-columns:1.12fr .88fr;background:#0b0b0c;border:1px solid rgba(255,255,255,.1);border-radius:34px;overflow:hidden;box-shadow:0 35px 100px rgba(0,0,0,.55)}
.ct-login-brand{position:relative;padding:54px;display:flex;flex-direction:column;justify-content:center;color:#fff;background:radial-gradient(circle at 50% 34%,rgba(227,27,35,.21),transparent 34%),linear-gradient(145deg,#080808,#151515)}
.ct-login-logo{width:min(440px,92%);max-height:390px;object-fit:contain;align-self:center;filter:drop-shadow(0 22px 36px rgba(0,0,0,.7));border-radius:22px}
.ct-login-brand h1{font-size:34px;font-weight:900;margin:22px 0 10px;text-align:center}.ct-login-brand p{color:#d4d4d8;text-align:center;line-height:1.7}
.ct-features{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:18px}.ct-features span{border:1px solid rgba(227,27,35,.45);background:rgba(227,27,35,.1);padding:9px 12px;border-radius:999px;font-size:12px}
.ct-login-form{background:#fff;padding:62px 52px;display:flex;flex-direction:column;justify-content:center}.ct-kicker{color:#d71920;font-weight:900;letter-spacing:.14em;font-size:12px}.ct-login-head h2{font-weight:900;font-size:38px;margin:8px 0}.ct-login-head p{color:#71717a}.ct-input{display:flex;align-items:center;border:1px solid #dedee2;border-radius:15px;margin:7px 0 18px;padding:0 12px;background:#fafafa}.ct-input span{color:#d71920}.ct-input input{border:0!important;box-shadow:none!important;background:transparent}.ct-login-form label{font-weight:800}.ct-login-foot{text-align:center;color:#71717a;margin-top:25px;font-size:12px}.ct-login-foot b{color:#111}
@media(max-width:860px){.ct-login-shell{grid-template-columns:1fr}.ct-login-brand{padding:30px}.ct-login-logo{max-height:260px}.ct-login-form{padding:38px 28px}.ct-login-brand h1{font-size:27px}}
@media(max-width:520px){.ct-login-page{padding:0}.ct-login-shell{border-radius:0;min-height:100vh}.ct-login-brand{display:flex}.ct-login-logo{max-height:190px}.ct-login-brand p,.ct-features{display:none}.ct-login-brand h1{margin-bottom:0}.ct-login-form{padding:30px 22px}}
