@import url("https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;600;700;800&display=swap");:root{--bg:oklch(97% 0.008 258);--surface:#fff;--text:oklch(24% 0.03 258);--muted:oklch(50% 0.02 258);--border:oklch(92% 0.012 258);--brand:oklch(32% 0.09 258);--brand-2:oklch(42% 0.10 262);--brand-soft:oklch(95% 0.02 258);--gold:oklch(66% 0.12 80);--gold-2:oklch(74% 0.13 85);--gold-soft:oklch(94% 0.05 85);--ok:oklch(52% 0.13 150);--warn:oklch(55% 0.14 40)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{font-family:Tajawal,system-ui,sans-serif;direction:rtl;background:var(--bg);color:var(--text);font-weight:500}a{color:inherit;text-decoration:none}.shell{display:flex;min-height:100vh}.side{width:230px;background:linear-gradient(160deg,var(--brand),var(--brand-2));color:#fff;padding:20px 14px;flex-shrink:0}.brand{font-size:20px;font-weight:800;margin:6px 8px 22px;color:var(--gold-2);border-bottom:2px solid oklch(74% .13 85/.35);padding-bottom:12px}.nav a{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:12px;font-weight:600;font-size:15px;margin-bottom:4px;color:oklch(96% .02 293/.9)}.nav a:hover{background:oklch(100% 0 0/.12)}.nav a.active{background:oklch(100% 0 0/.18);color:#fff}.nav-group{display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;border-radius:12px;margin-bottom:4px;background:transparent;border:0;cursor:pointer;font-family:inherit;font-weight:700;font-size:15px;color:oklch(96% .02 293/.9)}.nav-group:hover{background:oklch(100% 0 0/.12)}.nav-group.has-active{color:var(--gold-2)}.nav-caret{font-size:14px;opacity:.7;transition:transform .18s}.nav-caret.up{transform:rotate(180deg)}.nav-sub{margin:0 6px 6px;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-border-start:2px solid oklch(100% 0 0/.15);border-inline-start:2px solid oklch(100% 0 0/.15)}.nav-sub a{font-size:14px;padding:9px 12px}.main{flex:1 1;padding:26px 30px}.h1{font-size:22px;font-weight:800;margin:0 0 18px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:14px;gap:14px;margin-bottom:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px}.card .k{font-size:13px;color:var(--muted);font-weight:600}.card .v{font-size:28px;font-weight:800;margin-top:6px}table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:14px;overflow:hidden}thead th{background:var(--brand-soft);color:var(--brand);text-align:right;font-size:13px;font-weight:800;padding:13px 14px}tbody td{padding:13px 14px;border-top:1px solid var(--border);font-size:14.5px;font-weight:600}tbody tr:hover{background:oklch(98% .01 290)}.pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700;background:var(--brand-soft);color:var(--brand)}.notice{background:var(--surface);border:1px dashed var(--warn);color:var(--warn);border-radius:12px;padding:14px 16px;font-weight:600}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.toolbar .grow{flex:1 1 220px}.records-filters{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(220px,1.2fr) auto;align-items:end;grid-gap:12px;gap:12px;margin-bottom:22px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.records-filter-field{display:grid;grid-gap:7px;gap:7px;min-width:0}.records-filter-field span{font-size:13px;font-weight:800;color:var(--muted)}.records-filter-field input,.records-filter-field select{width:100%;min-width:0}.records-refresh{min-height:42px}@media (max-width:820px){.records-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.records-refresh{justify-self:start}}@media (max-width:520px){.records-filters{grid-template-columns:minmax(0,1fr)}.records-refresh{width:100%}}input,select,textarea{font-family:inherit;font-size:14.5px;font-weight:600;color:var(--text);background:#fbfcff;border:1.5px solid #c3ccde;border-radius:10px;padding:10px 12px;outline:none;width:100%;transition:border-color .12s,box-shadow .12s,background .12s}input:hover,select:hover,textarea:hover{border-color:#9aa6c2}input:focus,select:focus,textarea:focus{border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px var(--brand-soft)}input::placeholder,textarea::placeholder{color:#98a2b6;font-weight:500}input.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:left}.purchase-cart,.sell-cart{overflow:visible}.purchase-cart tbody td,.sell-cart tbody td{padding:1px 8px;vertical-align:middle;line-height:1.2}.purchase-cart tbody td select,.sell-cart tbody td select{padding:3px 8px;font-size:12.5px}.purchase-cart .cell-num,.sell-cart .cell-num{font-size:16px;font-weight:800;text-align:center;padding:1px 6px;border:2px solid var(--brand);border-radius:8px;background:#fff;color:var(--text);height:30px}.purchase-cart .cell-num::placeholder,.sell-cart .cell-num::placeholder{color:transparent}.purchase-cart .cell-num:focus,.sell-cart .cell-num:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.to-top-btn{position:fixed;inset-inline-start:18px;bottom:18px;z-index:40;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:20px;line-height:1;font-weight:800;border:1px solid var(--brand);background:#fff;color:var(--brand);box-shadow:0 3px 10px rgba(0,0,0,.18);cursor:pointer}.to-top-btn:hover{background:var(--brand);color:#fff}@media print{.to-top-btn{display:none}}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.btn{font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;background:var(--brand);color:#fff;border:0;border-radius:10px;padding:9px 16px;white-space:nowrap}.btn:hover{background:var(--brand-2)}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:var(--surface);color:var(--brand);border:1px solid var(--brand-soft)}.btn.ghost:hover{background:var(--brand-soft)}.btn.sm{padding:6px 12px;font-size:13px;border-radius:8px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px;margin-bottom:20px}.panel h2{font-size:16px;font-weight:800;margin:0 0 14px}.row-actions{display:flex;gap:8px}.muted{color:var(--muted)}.flash{border-radius:10px;padding:10px 14px;font-weight:600;font-size:14px;margin-bottom:12px}.flash.ok{background:oklch(95% .05 150);color:var(--ok);border:1px solid oklch(85% .08 150)}.flash.err{background:oklch(96% .04 30);color:var(--warn);border:1px solid oklch(88% .07 30)}.price-cell{cursor:pointer}.price-cell:hover{color:var(--brand);-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.stock-log-tabs{display:flex;width:-moz-fit-content;width:fit-content;max-width:100%;overflow:hidden;margin-bottom:18px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.stock-log-tabs button{border:0;-webkit-border-start:1px solid var(--border);border-inline-start:1px solid var(--border);background:var(--surface);color:var(--muted);padding:10px 16px;font:inherit;font-weight:800;cursor:pointer;white-space:nowrap}.stock-log-tabs button:first-child{-webkit-border-start:0;border-inline-start:0}.stock-log-tabs button.active{background:var(--brand);color:#fff}.stock-log-toolbar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.stock-log-search{display:grid;grid-gap:7px;gap:7px;flex:1 1 360px;min-width:0}.stock-log-search label{font-size:13px;font-weight:800;color:var(--muted)}.stock-log-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 18px 12px}.stock-log-heading h2{margin:0}.stock-log-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}.stock-log-empty{padding:28px 18px}.stock-log-row{cursor:pointer;outline:none}.stock-log-row:focus-visible{box-shadow:inset 0 0 0 2px var(--brand)}.stock-movement,.stock-quantity{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:800}.stock-movement{display:inline-block;border-radius:999px;padding:3px 9px;background:var(--brand-soft);color:var(--brand);font-size:12px}.stock-detail-delta.in,.stock-quantity.in{color:var(--ok)}.stock-detail-delta.out,.stock-quantity.out{color:var(--warn)}.stock-quantity.neutral{color:var(--muted)}.stock-detail-backdrop{position:fixed;inset:0;z-index:1000;background:oklch(18% .03 258/.42);display:grid;place-items:center;padding:20px}.stock-detail-modal{width:min(720px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;background:var(--surface);border-radius:12px;border:1px solid var(--border);box-shadow:0 18px 50px oklch(18% .03 258/.28)}.stock-detail-header{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px 14px;background:var(--surface);border-bottom:1px solid var(--border)}.stock-detail-header h2{margin:0;font-size:18px}.stock-detail-header p{margin:5px 0 0;color:var(--muted);font-size:13px}.stock-detail-close{width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--brand);font-size:25px;line-height:1;cursor:pointer}.stock-detail-lines{padding:10px 20px 20px}.stock-detail-intro{margin:0;color:var(--muted);font-weight:700}.stock-detail-line{padding:14px 0;border-bottom:1px solid var(--border)}.stock-detail-line:last-child{border-bottom:0}.stock-detail-item{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.stock-detail-item span{color:var(--muted);font-size:12px}.stock-detail-delta,.stock-detail-transfer{margin-top:8px;font-size:14px;font-weight:800}.stock-detail-direction{margin-top:5px;color:var(--muted);font-size:13px;font-weight:700}.stock-detail-transfer{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.stock-detail-transfer span{background:var(--brand-soft);color:var(--brand);border-radius:7px;padding:5px 8px}.stock-detail-transfer b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stock-detail-transfer em{color:#80500d;font-style:normal}.stock-detail-total{margin-top:7px;color:var(--muted);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:640px){.stock-log-tabs{width:100%}.stock-log-tabs button{flex:1 1;padding-inline:8px}.stock-log-toolbar .btn{flex:1 1 auto}.stock-activity-table td:nth-child(4),.stock-activity-table th:nth-child(4){display:none}.stock-detail-backdrop{padding:10px}.stock-detail-header,.stock-detail-lines{padding-inline:14px}}.confirm-backdrop{position:fixed;inset:0;z-index:1100;background:oklch(18% .03 258/.5);display:grid;place-items:center;padding:20px}.confirm-modal{width:min(420px,100%);background:var(--surface);border-radius:12px;border:1px solid var(--border);box-shadow:0 18px 50px oklch(18% .03 258/.28);padding:20px}.confirm-modal h2{margin:0 0 8px;font-size:17px}.confirm-modal p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.btn.danger{background:var(--warn);color:#fff;border:1px solid var(--warn)}.btn.danger:hover{filter:brightness(.92)}@media (max-width:480px){.confirm-backdrop{padding:14px}.confirm-actions{flex-direction:column-reverse}.confirm-actions .btn{width:100%}}thead button.head-filter{background:transparent;border:0;color:var(--brand);font-weight:700;font-size:12px;cursor:pointer;padding:0;width:auto;font-family:inherit;white-space:nowrap}thead button.head-filter:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.print-only{display:none}@media print{.side{display:none!important}.shell{display:block!important;min-height:0!important}.main{padding:0!important;margin:0!important}.no-print{display:none!important}.print-only{display:block!important}body{background:#fff!important}@page{margin:12mm}}.invoice-sheet{color:#1a1a1a;font-size:15.5px;max-width:800px;margin:0 auto;padding:0 10px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-sheet .inv-head{position:relative;background:#fff;color:#1f3358;padding:3px 4px 6px 252px;border-bottom:3px solid #c8973a}.invoice-sheet .inv-head-top{text-align:center;margin-left:-252px;margin-right:-4px}.invoice-sheet .inv-head-row{display:flex;justify-content:flex-start;align-items:center;margin-top:2px}.invoice-sheet .inv-brand-text{flex:1 1 auto;text-align:right}.invoice-sheet .inv-logo{position:absolute;left:0;top:0;bottom:0;width:244px;display:flex;align-items:center;justify-content:flex-start;direction:ltr}.invoice-sheet .logo-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:left center;display:block}.invoice-sheet .logo-badge{height:64px;width:64px;border-radius:14px;background:#fff;color:#1f3358;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;border:2px solid #c8973a;letter-spacing:1px}.invoice-sheet .basmala{font-size:12px;font-weight:700;color:#1a1a1a;margin:0;line-height:1.25}.invoice-sheet .shop-name{font-size:23px;font-weight:800;color:#1f3358;line-height:1.2}.invoice-sheet .shop-sub{font-size:12.5px;color:#555;margin-top:1px;line-height:1.35;text-align:right}.invoice-sheet .inv-title{font-size:15px;font-weight:700;color:#1f3358;margin:2px 0 0;line-height:1.2;letter-spacing:normal}.invoice-sheet .inv-meta-row{display:flex;justify-content:space-between;align-items:center;margin:14px 2px 0;font-size:15px;font-weight:800;color:#1f3358}.invoice-sheet .inv-meta-extra{display:flex;gap:16px;margin:4px 2px 0;font-size:12.5px;color:#444}.invoice-sheet .cust-row{margin:16px 2px 8px;font-size:16.5px;font-weight:800;color:#1f3358;border-right:4px solid #c8973a;padding-right:10px}.invoice-sheet table{width:100%;border-collapse:collapse;margin:6px 0}.invoice-sheet td,.invoice-sheet th{border:1px solid #cfd6e4;padding:9px 10px}.invoice-sheet thead th{background:#eef1f6;color:#1f3358;font-weight:800;font-size:15px;text-align:center;border-bottom:2px solid #c8973a}.invoice-sheet tbody td{font-size:15.5px;font-weight:700;color:#1a1a1a}.invoice-sheet tbody tr:nth-child(2n) td{background:#f6f8fc}.invoice-sheet .totals{margin-top:14px;display:flex;justify-content:flex-end}.invoice-sheet .totals table{width:auto;min-width:290px}.invoice-sheet .totals td{border:0;padding:6px 12px;font-size:16px;font-weight:700}.invoice-sheet .totals .grand td{font-weight:800;font-size:19px;color:#1f3358;border-top:2px solid #1f3358;padding-top:8px}.invoice-sheet .inv-foot{margin-top:30px;display:flex;justify-content:space-between;font-size:12.5px;color:#555;border-top:1px dashed #bbb;padding-top:12px}.side-logo{display:flex;justify-content:center;margin:2px 6px 12px}.side-logo img{max-height:92px;width:auto;max-width:150px;background:#fff;border-radius:14px;padding:8px}.nav a .ic{font-size:18px;width:22px;text-align:center}.home-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;margin:10px 0 30px}.home-hero img{max-height:240px;max-width:90%;width:auto}.home-hero .hname{font-size:24px;font-weight:800;color:var(--brand)}.home-hero .htag{font-size:15px;font-weight:700;color:var(--gold,#c8973a)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:16px;gap:16px;margin-top:6px}.tile{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;transition:transform .15s,box-shadow .15s,border-color .15s}.tile:hover{border-color:var(--brand);box-shadow:0 8px 22px oklch(30% .06 258/.14);transform:translateY(-3px)}.tile .ic{width:58px;height:58px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:30px;background:var(--brand-soft);color:var(--brand)}.tile .lbl{font-weight:700;font-size:15.5px;color:var(--text)}.tile .sub{font-size:12px;color:var(--muted);margin-top:-6px}.section-title{font-size:15px;font-weight:800;color:var(--muted);margin:26px 2px 12px;display:flex;align-items:center;gap:10px}.section-title:before{content:"";width:18px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--gold),var(--gold-2));flex-shrink:0}.tiles .tile{animation:tileIn .32s ease both}.tiles .tile:nth-child(2){animation-delay:.04s}.tiles .tile:nth-child(3){animation-delay:.08s}.tiles .tile:nth-child(4){animation-delay:.12s}.tiles .tile:nth-child(5){animation-delay:.16s}@keyframes tileIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tile.group{position:relative;border:0;width:100%;background:var(--surface)}.tile.group .ic{background:var(--gold-soft);color:var(--gold);box-shadow:inset 0 0 0 1px oklch(74% .13 85/.25)}.tile.group:hover{border-color:transparent;box-shadow:0 10px 26px oklch(66% .12 80/.16)}.tile.group .chev{position:absolute;top:12px;left:14px;font-size:22px;line-height:1;color:var(--gold);opacity:.5;transition:transform .15s,opacity .15s}.tile.group:hover .chev{opacity:1;transform:translateX(-3px)}tbody tr:nth-child(2n) td{background:oklch(98.5% .006 258)}tbody tr:hover td{background:oklch(97% .012 290)}thead th{position:-webkit-sticky;position:sticky;top:0;z-index:2}.card .v{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card{transition:transform .15s,box-shadow .15s,border-color .15s}.card:hover{box-shadow:0 6px 18px oklch(30% .06 258/.08);border-color:oklch(88% .02 258)}.flash{-webkit-border-start:4px solid currentColor;border-inline-start:4px solid currentColor}.mobile-topbar,.side-close{display:none}@media (max-width:820px){.shell{display:block}.mobile-topbar{display:flex;align-items:center;gap:12px;position:-webkit-sticky;position:sticky;top:0;z-index:150;background:linear-gradient(160deg,var(--brand),var(--brand-2));color:#fff;padding:10px 14px}.mobile-topbar .hamburger{background:transparent;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer;width:auto;padding:0 4px}.mobile-topbar .mtb-brand{font-weight:800;font-size:16px;color:var(--gold-2)}.side{position:fixed;top:0;bottom:0;right:0;left:auto;width:270px;max-width:86vw;z-index:200;overflow-y:auto;transform:translateX(105%);transition:transform .25s ease}.side.open{transform:translateX(0);box-shadow:-8px 0 30px rgba(0,0,0,.3)}.side-close{display:block;position:absolute;top:8px;left:8px;background:transparent;border:0;color:#fff;font-size:20px;cursor:pointer;width:auto;padding:4px 8px}.side-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:190}.main{padding:14px;overflow-x:auto}.h1{font-size:19px}.cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}}.items-table tbody tr,.rows-lite tbody tr{content-visibility:auto;contain-intrinsic-size:0 44px}@media (max-width:640px){.invoice-sheet{font-size:13px}.invoice-sheet .inv-head{padding:10px 10px 8px}.invoice-sheet .inv-logo{position:static;width:100%;height:auto;justify-content:center;margin-bottom:8px;direction:rtl}.invoice-sheet .logo-img{max-height:130px;max-width:78%;object-position:center}.invoice-sheet .inv-head-top{margin:0}.invoice-sheet .inv-head-row{flex-direction:column-reverse;align-items:center}.invoice-sheet .inv-brand-text{text-align:center}.invoice-sheet .shop-name{font-size:18px}.invoice-sheet .shop-sub{text-align:center}.invoice-sheet .inv-title{font-size:13px;letter-spacing:normal}.invoice-sheet .totals{justify-content:stretch}.invoice-sheet .totals table{width:100%;min-width:0}.invoice-sheet .totals td{padding:5px 10px}.invoice-sheet .totals .grand td:last-child{text-align:left}}@media print{html{zoom:1!important}}.zoom-ctl{padding:4px 8px 10px}.zoom-ctl .zoom-lbl{display:block;font-size:12px;opacity:.8;margin-bottom:6px}.zoom-ctl .zoom-btns{display:flex;gap:6px;align-items:center}.zoom-ctl button{flex:1 1;padding:6px 0;border-radius:9px;cursor:pointer;background:oklch(100% 0 0/.12);border:1px solid oklch(100% 0 0/.18);color:inherit;font-family:inherit;font-weight:700;font-size:14px}.zoom-ctl button:hover:not(:disabled){background:oklch(100% 0 0/.22)}.zoom-ctl button:disabled{opacity:.4;cursor:default}.zoom-ctl .zoom-val{flex:1.3 1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}