@font-face{font-family:Tajawal;src:url(fonts/Tajawal-Regular.ttf) format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Tajawal;src:url(fonts/Tajawal-Bold.ttf) format('truetype');font-weight:700;font-display:swap}
:root{--navy:#142f46;--navy-deep:#102739;--orange:#e78338;--orange-soft:#fff1e6;--teal:#137d70;--bg:#f5f7f9;--text:#24384a;--muted:#778593;--border:#e5eaf0;--red:#b63d43;--shadow:0 6px 24px #142f4608}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 Tajawal,Arial,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #edb887;outline-offset:2px}input,select,textarea{border:1px solid #dce3e9;border-radius:8px;padding:10px 12px;background:white;color:var(--text);width:100%;min-height:44px}textarea{resize:vertical;min-height:96px}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--orange)}input[type=number],input[type=date]{font-family:Tajawal,Arial;direction:ltr;text-align:right}input::placeholder{color:#98a4ae}label{display:block;font-size:14px;font-weight:700}label>input,label>select,label>textarea{margin-top:6px;font-weight:400}h1,h2,h3,p{margin:0}h1{font-size:28px;line-height:1.35}h2{font-size:21px;line-height:1.4}h3{font-size:17px}small,.small{font-size:13px}.muted{color:var(--muted)}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}.num{font-family:Tajawal,Arial,sans-serif;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;white-space:nowrap}.ltr{direction:ltr;text-align:left}.strong{font-weight:700}.spacer{flex:1}.wide{width:100%}.hidden{display:none!important}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:middle}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;font-size:14px;font-weight:700;border:1px solid #dce3e9;border-radius:8px;background:#fff;color:var(--text);white-space:nowrap;transition:.15s}.btn:hover{background:#f6f8fa;border-color:#c8d4df}.btn.primary{color:white;background:var(--orange);border-color:var(--orange)}.btn.primary:hover{background:#d7772e}.btn.navy{color:white;background:var(--navy);border-color:var(--navy)}.btn.danger{color:var(--red);border-color:#ebc9cd}.btn.ghost{border-color:transparent;background:transparent}.btn.sm{font-size:13px;min-height:34px;padding:5px 10px}.btn.icon-only{width:40px;padding:8px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.text-link{background:none;border:0;color:var(--teal);padding:0;font:inherit;font-weight:700;text-align:inherit}.text-link:hover{text-decoration:underline}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:5px;padding:3px 9px;font-size:12px;white-space:nowrap;background:#eef2f6;color:#627489}.badge.green{color:#147865;background:#e8f5ef}.badge.orange{color:#b5692e;background:#fff1e5}.badge.red{color:#b43e46;background:#fbecee}.badge.blue{color:#356b9a;background:#ebf2fa}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor}.notice{border:1px solid #e9d7bd;border-radius:9px;padding:13px 16px;background:#fff9f0;color:#906b36;font-size:14px;margin-bottom:18px}.notice.info{background:#edf4fa;border-color:#d3e4f2;color:#406d91}.notice.success{background:#edf8f2;border-color:#cfe7d8;color:#277353}.notice.danger{background:#fff0f1;border-color:#efcbd0;color:var(--red)}
.sidebar{position:fixed;inset:0 0 0 auto;width:234px;background:var(--navy-deep);color:#afc0cf;padding:27px 17px 18px;display:flex;flex-direction:column;z-index:30}.brand{padding:0 17px 23px;border-bottom:1px solid #ffffff12}.brand img{width:150px;height:61px;object-fit:contain;display:block}.brand small{display:block;font-size:11px;letter-spacing:.25em;direction:ltr;text-align:left;color:#8da5b7;margin-top:-5px}.nav-section{padding:24px 14px 8px;font-size:11px;letter-spacing:.09em;color:#7894a8}.nav{display:flex;flex-direction:column;gap:5px;overflow:auto;scrollbar-width:thin}.nav a{display:flex;gap:12px;align-items:center;padding:11px 14px;border-radius:8px;font-size:15px}.nav a:hover{background:#ffffff08;color:white}.nav a.active{background:#234157;color:white;box-shadow:inset -3px 0 0 var(--orange)}.nav a.active .icon{color:#f2a369}.sidebar-footer{margin-top:auto;padding:20px 8px 0}.sidebar-footer .tenant{border:1px solid #ffffff14;border-radius:8px;padding:12px;display:flex;align-items:center;gap:10px;color:#d3dee7}.tenant-mark{display:grid;place-items:center;height:32px;width:32px;border-radius:6px;background:#2b465b;color:#e8a375;font-size:14px;font-weight:700}.tenant small{color:#7f9caf;font-size:11px;display:block}.workspace{margin-right:234px;min-height:100vh}.topbar{height:76px;padding:0 34px;display:flex;align-items:center;gap:18px;background:white;border-bottom:1px solid var(--border)}.crumb{font-size:14px;color:#99a4ae;display:flex;gap:10px;align-items:center}.crumb strong{color:#4c5f70;font-weight:400}.top-date{font-size:13px;color:var(--muted)}.user-menu{border-right:1px solid var(--border);padding-right:18px;display:flex;gap:10px;align-items:center}.avatar{width:34px;height:34px;border-radius:50%;background:#f7e9db;color:#b97538;display:grid;place-items:center;font-size:14px;font-weight:700}.user-name{font-size:13px;line-height:1.45}.user-name small{display:block;color:var(--muted);font-size:11px}.mobile-toggle{display:none}.main{padding:30px 34px 40px;max-width:1560px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}.page-heading p{margin-top:6px;font-size:14px;color:var(--muted)}.page-heading .period{border:1px solid var(--border);border-radius:8px;background:white;padding:9px 13px;font-size:13px;color:#647689}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.kpi{background:white;border:1px solid var(--border);border-radius:11px;padding:20px 20px 17px;box-shadow:var(--shadow)}.kpi-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.kpi-top>span{font-size:14px;color:#748494}.kpi-icon{height:35px;width:35px;display:grid;place-items:center;border-radius:9px;background:#eef4f8;color:#557e9f}.kpi-icon.orange{background:#fff2e8;color:#d58b48}.kpi-icon.green{background:#eaf6f0;color:#499d7d}.kpi-icon.purple{background:#f0eff9;color:#8783af}.kpi-value{font-size:29px;line-height:1.3;font-weight:700;letter-spacing:-.5px}.kpi-value small{font-size:12px;letter-spacing:0;font-weight:400;color:#8d9aa4;margin-right:6px}.kpi-bottom{margin-top:12px;font-size:12px;color:#8997a2;display:flex;gap:5px;align-items:center}.kpi-bottom .dot{color:#48a787}.grid-2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:22px}.panel{background:white;border:1px solid var(--border);border-radius:11px;box-shadow:var(--shadow);min-width:0;overflow:hidden;margin-bottom:22px}.panel-head{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--border)}.panel-head h2{font-size:17px}.panel-head p{font-size:12px;color:var(--muted);margin-top:4px}.panel-body{padding:20px 22px}.panel-head .text-link{font-size:12px}.table-wrap{overflow:auto;width:100%}table{border-collapse:collapse;width:100%;font-size:14px;text-align:right}thead{background:#f9fafc;color:#7c8a97;font-size:12px}th{font-weight:700;padding:12px 18px;white-space:nowrap;border-bottom:1px solid var(--border)}td{padding:15px 18px;border-bottom:1px solid #eef1f4;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdfe}td small{display:block;color:#95a0a9;font-size:11px;margin-top:1px}td .product-name{display:block;min-width:200px;max-width:360px;line-height:1.45;direction:ltr;text-align:left;font-size:14px}td .num{font-size:14px}.compact td{padding:13px 18px}.balance-list{padding:0 22px}.balance-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #edf1f4}.balance-row:last-child{border:0}.balance-avatar{width:34px;height:34px;border-radius:8px;background:#f0f4f7;display:grid;place-items:center;color:#7890a4;font-size:12px;font-weight:700}.balance-info{flex:1;font-size:13px}.balance-info small{color:var(--muted);font-size:11px;display:block}.balance-value{font-size:14px;font-weight:700;direction:ltr}.stock-callout{display:flex;align-items:center;gap:14px}.stock-callout .large-icon{width:50px;height:50px;border-radius:12px;background:#fff4e9;color:var(--orange);display:grid;place-items:center}.stock-callout p{font-size:13px;color:var(--muted);margin-top:3px}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.quick-action{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:14px;background:white;font-size:13px}.quick-action .icon{color:var(--orange);width:18px}.quick-action:hover{background:#fdf9f4}.footnote{font-size:12px;color:#91a0ac;display:flex;align-items:center;gap:6px;margin-top:10px}.toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.toolbar .search{position:relative;min-width:230px;flex:1}.search input{padding-right:40px}.search>.icon{position:absolute;right:13px;top:12px;color:#97a6b3}.toolbar label{max-width:210px;min-width:145px}.toolbar input,.toolbar select{font-size:14px}.pager{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-top:1px solid var(--border);font-size:13px;color:var(--muted)}.empty{text-align:center;padding:46px 24px;color:var(--muted)}.empty>.icon{height:40px;width:40px;margin-bottom:10px;color:#a5b5c2}.empty h3{color:#596e7f;margin-bottom:6px}.empty p{font-size:14px;max-width:450px;margin:0 auto 18px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--border);margin-bottom:20px}.tab{background:none;border:0;padding:9px 3px 13px;color:var(--muted);font-size:14px}.tab.active{color:var(--orange);border-bottom:2px solid var(--orange);font-weight:700}.summary-strip{display:flex;gap:30px;flex-wrap:wrap;padding:19px 22px;background:#f8fafc;border-bottom:1px solid var(--border)}.summary-strip p{font-size:12px;color:var(--muted)}.summary-strip strong{font-size:21px}.check-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:400;min-height:42px}.check-label input{margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.form-grid .full{grid-column:1/-1}.form-help{font-size:12px;color:var(--muted);margin-top:5px;font-weight:400}.form-error{color:var(--red);background:#fff1f1;border:1px solid #f1d1d1;border-radius:7px;padding:10px 12px;font-size:14px;margin:12px 0}.form-error:empty{display:none}.doc-lines input,.doc-lines select{font-size:14px;min-width:78px;padding:8px;min-height:39px}.doc-lines select.product{min-width:230px}.doc-lines select.lot{min-width:170px}.doc-lines td{padding:9px 8px}.doc-lines th{padding:10px 8px}.doc-lines .money-cell{width:110px}.document-footer{display:flex;gap:28px;align-items:start;margin-top:18px}.document-footer>label{flex:1}.totals{min-width:260px}.totals>div{display:flex;justify-content:space-between;gap:35px;padding:8px 0;font-size:14px}.totals .grand{border-top:1px solid var(--border);margin-top:5px;padding-top:13px;font-weight:700;font-size:19px}.totals .grand .num{color:var(--orange)}.doc-info{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:22px;background:#fbfcfd;border-bottom:1px solid var(--border)}.doc-info dt{font-size:12px;color:var(--muted);margin-bottom:5px}.doc-info dd{margin:0;font-size:14px}.doc-note{white-space:pre-wrap;font-size:14px;color:#697e8d}.security-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.security-grid .check-label{font-size:13px;padding:8px;border:1px solid var(--border);border-radius:7px}.modal-overlay{position:fixed;inset:0;background:#102b4375;z-index:100;display:grid;place-items:center;padding:24px;backdrop-filter:blur(2px)}.modal{background:white;border-radius:13px;width:min(650px,100%);max-height:92vh;overflow:auto;box-shadow:0 30px 100px #07172650}.modal.large{width:min(1140px,100%)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:19px 24px;border-bottom:1px solid var(--border);position:sticky;top:0;background:white;z-index:1}.modal-header h2{font-size:21px}.modal-body{padding:23px 24px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;padding:17px 24px;border-top:1px solid var(--border);background:#fafbfc;position:sticky;bottom:0}.modal .full{grid-column:1/-1}.login-page{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh;direction:ltr}.login-brand{background:var(--navy-deep);color:white;padding:70px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-brand img{width:220px}.login-brand-content{direction:rtl;max-width:430px;margin:auto 0}.login-brand-content h1{font-size:40px;line-height:1.6;margin-bottom:18px}.login-brand-content p{color:#a6becf;font-size:18px;line-height:1.9}.brand-rule{height:4px;width:54px;background:var(--orange);margin-bottom:25px}.login-brand footer{color:#6e8ba0;font-size:13px;letter-spacing:.05em}.login-form-side{display:grid;place-items:center;padding:50px;direction:rtl;background:white}.login-form{width:min(360px,100%)}.login-form h2{font-size:29px}.login-form>p{color:var(--muted);margin:9px 0 32px}.login-form label{margin-bottom:20px}.login-form .form-help{margin-top:22px;text-align:center}.login-form input{min-height:48px}.login-form .btn{min-height:46px}.login-lock{display:grid;place-items:center;border:1px solid #e6ecf1;border-radius:12px;width:48px;height:48px;color:var(--orange);margin-bottom:27px}.initial-loading{display:grid;place-content:center;min-height:70vh;text-align:center;gap:16px;color:var(--muted)}.spinner{width:24px;height:24px;border-radius:50%;border:3px solid #e5edf3;border-top-color:var(--orange);display:inline-block;margin:auto;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:fixed;bottom:24px;left:26px;z-index:200;max-width:460px;display:flex;flex-direction:column;gap:10px}.toast-message{padding:13px 20px;border-radius:9px;background:var(--navy);color:white;box-shadow:0 8px 30px #0002;font-size:14px}.toast-message.error{background:#a84045}.setup-card{width:min(520px,94%);margin:50px auto;background:white;border:1px solid var(--border);border-radius:14px;padding:32px}.setup-brand{background:var(--navy);border-radius:8px;padding:15px 22px;margin-bottom:25px}.setup-brand img{width:160px}.setup-card h1{font-size:25px;margin-bottom:8px}.setup-card label{margin:15px 0}.setup-card .notice{margin-top:15px}.checks{padding:12px 20px;background:#f5f9f7;border-radius:8px;font-size:13px;list-style:none}.checks li{padding:3px 0;color:#3d7864}.progress-track{height:8px;background:#e7eef2;border-radius:8px;overflow:hidden}.progress-fill{height:100%;background:var(--teal)}.progress-track progress{width:100%;height:8px;accent-color:var(--teal);border:0}.settings-section{margin-bottom:22px}.settings-section p{font-size:14px;color:var(--muted);margin:6px 0 18px}#print-root{display:none}
@media(min-width:1500px){.main{padding:38px 44px}.kpi-value{font-size:33px}}@media(max-width:1150px){.sidebar{width:205px}.workspace{margin-right:205px}.main{padding:24px}.topbar{padding:0 24px}.kpis{gap:12px}.kpi{padding:16px}.kpi-value{font-size:24px}.grid-2{grid-template-columns:1fr}.top-date{display:none}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-brand{padding:45px}}@media(max-width:800px){.sidebar{transform:translateX(100%);transition:transform .2s;width:234px}.sidebar.open{transform:none;box-shadow:-15px 0 60px #142f4640}.workspace{margin-right:0}.mobile-toggle{display:inline-flex}.topbar{height:66px;padding:0 16px;gap:9px}.crumb{font-size:12px}.user-name{display:none}.user-menu{padding-right:10px}.main{padding:22px 16px}.page-heading{align-items:flex-start;margin-bottom:20px}.page-heading h1{font-size:24px}.page-heading p{font-size:13px}.page-heading .actions .btn{padding:8px 10px}.kpis{grid-template-columns:1fr 1fr;gap:12px}.kpi-value{font-size:24px}.kpi-top>span{font-size:12px}.kpi-bottom{font-size:11px}.form-grid,.two-col{grid-template-columns:1fr 1fr}.modal-overlay{padding:10px}.modal{max-height:96vh}.modal-body{padding:18px}.modal-header{padding:15px 18px}.modal-footer{padding:15px 18px}.security-grid{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-brand{display:none}.login-form-side{padding:32px;min-height:100vh}.document-footer{flex-direction:column}.document-footer>label,.totals{width:100%}.doc-info{grid-template-columns:1fr 1fr}.toolbar label{flex:1;max-width:unset}.panel-head{padding:17px}.quick-actions{grid-template-columns:1fr}.quick-action{justify-content:flex-start}.summary-strip{gap:20px}.summary-strip strong{font-size:18px}}
@media(max-width:440px){.form-grid,.two-col{grid-template-columns:1fr}.kpi-value{font-size:21px}.kpi-icon{width:28px;height:28px}.kpi{padding:14px}.page-heading{flex-direction:column}.page-heading .actions{width:100%}.security-grid{grid-template-columns:1fr}.toolbar .search{min-width:100%}.kpi-value small{font-size:10px}.modal .form-grid{grid-template-columns:1fr}}

/* Keep financial labels legible at normal and enlarged browser text sizes. */
.badge{font-size:13px}thead{font-size:13px}.balance-info{font-size:14px}.balance-info small,td small,.user-name small,.brand small,.tenant small{font-size:12px}.nav-section{font-size:12px}.kpi-bottom{font-size:13px}.kpi-value{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.kpi-value small{margin:0}.panel-head p{font-size:13px}.quick-action{font-size:14px}.print-section-title{break-after:avoid}
@media(max-width:800px){.kpi-top>span{font-size:14px}.kpi-bottom{font-size:12px}.kpi-value{font-size:24px}.page-heading p{font-size:14px}}


/* ViroGene Office 1.1: reports, collection dates and logo caption. */
.brand{display:block;padding-inline:12px}.brand img{margin-inline:auto}.brand-caption{display:flex;justify-content:center;align-items:center;gap:6px;direction:ltr;white-space:nowrap;margin:7px auto 0;padding-top:9px;width:166px;border-top:1px solid #ffffff24;font-family:Arial,sans-serif;font-size:8.5px;letter-spacing:1.3px;line-height:1.3;color:#acbecb}.brand-caption strong{color:#eba15f;font-weight:700}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.report-directory{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px;margin-bottom:24px}.report-card{display:flex;gap:11px;align-items:center;text-align:right;border:1px solid var(--border);background:#fff;border-radius:9px;padding:13px;min-height:79px;color:var(--text);cursor:pointer}.report-card:hover{border-color:#c29c7e;background:#fffaf6}.report-card.active{background:var(--navy-deep);border-color:var(--navy-deep);color:white;box-shadow:inset 0 -3px 0 var(--orange)}.report-card strong{font-size:14px;display:block;line-height:1.45}.report-card small{display:block;color:var(--muted);font-size:12px;margin-top:3px;line-height:1.4}.report-card.active small{color:#b5c5d0}.report-card-icon{display:grid;place-items:center;width:31px;min-width:31px;height:35px;color:var(--orange)}.report-card-icon .icon{width:21px;height:21px}.report-toolbar{background:white;border:1px solid var(--border);border-radius:10px;padding:16px}.report-toolbar .report-search{max-width:260px;flex:1}.report-current{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0 17px}.report-current h2{font-size:22px}.report-current .eyebrow{font-size:12px;color:var(--muted);margin-bottom:4px}.report-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px}.report-metrics article{background:white;border:1px solid var(--border);border-radius:10px;padding:18px 20px;border-top:3px solid #e7a166}.report-metrics p{font-size:13px;color:var(--muted);margin-bottom:10px}.report-metrics strong{font-size:25px;color:var(--navy-deep);font-weight:700}.report-metrics small{font-size:12px;color:var(--muted);margin-inline-start:6px}.account-report-table td{font-size:14px}.account-report-table td:first-child{min-width:180px}.account-report-table .num{white-space:nowrap}.account-report-table .print-balance{background:#edf3f7;font-weight:700}.report-empty{padding:30px;text-align:center;color:var(--muted)}.report-notes{background:#f0f4f7;border-radius:9px;padding:14px 18px;line-height:1.8;font-size:13px;color:#536b7e}.report-notes p+p{margin-top:5px}.due-edit{display:block;margin-top:5px;border:0;background:none;padding:0;color:var(--teal);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.aging-table td,.aging-table th{padding-inline:11px}.report-card:focus-visible,.due-edit:focus-visible{outline:3px solid #e7a166;outline-offset:3px}
@media(max-width:800px){.kpis{grid-template-columns:1fr}.report-directory{grid-template-columns:1fr 1fr}.report-card{padding:11px;gap:6px}.report-card small{font-size:11px}.report-card strong{font-size:13px}.report-metrics{grid-template-columns:1fr}.report-toolbar label{min-width:130px}.report-current h2{font-size:19px}}


.product-native-select{display:none!important}.product-field{min-width:180px}.product-search-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:47px;text-align:start;background:white;color:var(--text);border:1px solid #dce3e9;border-radius:8px;padding:9px 12px;font-weight:400}.product-search-button:hover{border-color:var(--orange);background:#fffcfa}.product-search-button>.icon{flex-shrink:0;color:var(--orange)}.product-choice-copy{overflow-wrap:anywhere;line-height:1.45}.product-choice-copy small{display:block;font-size:11px;color:var(--muted);text-align:start;margin-top:4px}.product-picker-overlay{position:fixed;inset:0;z-index:1000;background:#09213388;display:flex;align-items:center;justify-content:center;padding:24px}.product-picker{width:650px;max-width:100%;max-height:85vh;display:flex;flex-direction:column;background:white;border-radius:15px;box-shadow:0 20px 90px #00162855;overflow:hidden}.picker-search{padding:15px 23px 10px}.picker-search input{border:1.5px solid #c4d1dc;padding:12px 14px;font-size:16px}.picker-count{font-size:12px;color:var(--muted);margin-top:7px}.picker-results{overflow:auto;padding:0 14px 10px;min-height:150px}.picker-result{display:flex;align-items:center;gap:12px;width:100%;border:0;border-bottom:1px solid #ecf0f4;background:white;padding:14px 10px;text-align:start;color:var(--text)}.picker-result:hover,.picker-result:focus-visible{background:#fff4e9}.picker-result.selected{background:#edf6f5}.picker-result-icon{width:36px;height:36px;background:#f1f5f8;color:var(--teal);border-radius:8px;display:grid;place-items:center;flex-shrink:0}.picker-result-name{flex:1;min-width:0;line-height:1.5}.picker-result-name strong{font-size:15px;font-weight:700;display:block}.picker-result-name small{font-size:12px;color:var(--muted);display:block;margin-top:4px}.picker-select-label{color:var(--teal);font-size:12px;flex-shrink:0}.picker-footer{padding:11px 23px;border-top:1px solid var(--border);font-size:12px;color:var(--muted);background:#f7f9fb}.picker-no-results{padding:40px 20px;text-align:center;color:var(--muted)}.report-toolbar .product-filter{flex:1;min-width:210px;max-width:300px}.report-toolbar .product-field{min-width:180px}.report-period-help{margin-top:8px;color:var(--muted);font-size:12px}@media(max-width:600px){.product-picker-overlay{padding:12px}.product-picker{max-height:90vh}.picker-search{padding-inline:16px}.report-toolbar .product-filter{max-width:none}}

/* Identical A4 page boxes for the on-screen preview and browser printing. */
#print-preview-overlay{position:fixed;inset:0;z-index:1200;display:flex;flex-direction:column;background:#dfe5eb;color:#163046}#print-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:white;padding:14px 24px;border-bottom:1px solid #ccd6df;box-shadow:0 3px 18px #162e4412;flex-shrink:0}#print-preview-title{font-size:16px}#print-preview-toolbar small{display:block;font-size:12px;color:var(--muted)}.preview-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.preview-size{font:700 12px Arial;background:#edf2f7;border:1px solid #d1dae2;border-radius:5px;padding:5px 8px}.preview-actions .active{border-color:var(--teal);color:var(--teal);background:#eef7f5}#print-preview-overlay #print-root{display:block;overflow:auto;flex:1;padding:24px;direction:rtl}#print-root .print-page{box-sizing:border-box;position:relative;background:white;color:#172f43;padding:12mm 12mm 10mm;margin:0 auto 24px;box-shadow:0 5px 24px #10273922;font:12px/1.55 Tajawal,Arial,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact;overflow:hidden}#print-root .print-page.portrait{width:210mm;height:297mm;page:vgportrait}#print-root .print-page.landscape{width:297mm;height:210mm;page:vglandscape}#print-root .page-content{height:calc(100% - 8mm);overflow:visible}#print-root .page-footer{height:8mm;position:absolute;bottom:8mm;left:12mm;right:12mm;border-top:.3mm solid #b9c8d4;display:flex;align-items:flex-end;justify-content:space-between;font-size:10px;color:#61758a;padding-top:2mm}#print-root .print-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:4mm;margin-bottom:5mm;border-bottom:.8mm solid var(--orange)}#print-root .print-brand{background:var(--navy);padding:8px 15px;border-radius:5px;flex-shrink:0}#print-root .print-brand img{display:block;width:125px;height:auto}#print-root .print-title h1{font-size:21px;line-height:1.4;margin:0}#print-root .print-title p{font-size:11px;color:#657b8e;margin-top:4px}#print-root .print-meta{display:flex;justify-content:space-between;gap:20px;line-height:1.8;margin:0 0 5mm}#print-root .print-meta>div{flex:1}#print-root .print-meta strong{font-size:13px}#print-root table{width:100%;table-layout:fixed;border-collapse:collapse;border:.35mm solid #718b9f;margin:0 0 4mm;font-size:11.5px}#print-root th,#print-root td{border:.25mm solid #a5b6c3;padding:6px 7px;line-height:1.5;vertical-align:middle;text-align:right;overflow-wrap:anywhere;min-width:0!important;max-width:none!important}#print-root th{font-size:11px;font-weight:700;background:#19374d!important;color:white!important;border-color:#617f94}#print-root td,#print-root td .num,#print-root td .product-name{font-size:11.5px}#print-root td .num{white-space:normal;overflow-wrap:normal;font-variant-numeric:tabular-nums}#print-root td .product-name{min-width:0;max-width:none;display:block}#print-root td small{font-size:9.5px;line-height:1.35}#print-root tbody tr:nth-child(even){background:#f5f8fa}#print-root .print-balance td{background:#e8eff4!important;font-weight:700;border-top:.5mm solid #546f85}#print-root thead{display:table-header-group}#print-root tr{break-inside:avoid}#print-root .table-wrap{overflow:visible;border:0}#print-root .panel-head{padding:0 0 2mm;margin:0;border:0}#print-root .panel-head h2,#print-root .print-section-title{font-size:14px;margin:0 0 2mm;line-height:1.5}#print-root .report-notes,#print-root .print-note{font-size:10.5px;padding:3mm 0;margin:0;color:#526d80;background:white;line-height:1.7}#print-root .report-notes p+p{margin-top:1.5mm}#print-root .report-empty{padding:10mm;font-size:12px}#print-root .summary-strip{background:#f2f6f8;border:1px solid #bccbd6;border-radius:4px;display:flex;gap:25px;padding:10px 14px;margin-bottom:4mm}#print-root .summary-strip p{font-size:10px}#print-root .summary-strip strong{font-size:16px}#print-root .document-footer{display:flex;flex-direction:row;gap:20px}#print-root .totals{width:75mm;min-width:75mm;max-width:75mm;margin-right:auto;break-inside:avoid}#print-root .totals>div{font-size:12px}#print-root .totals .grand{font-size:15px}#print-root .doc-note{font-size:11px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin:3mm 0}#print-root .print-watermark{color:#a5522c;font-size:12px;font-weight:700;margin-top:4px}#print-root .num{direction:ltr;unicode-bidi:isolate}
@media(max-width:800px){#print-preview-toolbar{padding:10px;flex-wrap:wrap;gap:8px}.preview-actions{gap:5px}#print-preview-title{font-size:14px}.preview-size{display:none}#print-preview-overlay #print-root{padding:12px}}
@page vgportrait{size:A4 portrait;margin:0}@page vglandscape{size:A4 landscape;margin:0}
@media print{html,body{margin:0!important;padding:0!important;background:white!important}body>*{display:none!important}body>#print-preview-overlay{display:block!important;position:static!important;height:auto!important;overflow:visible!important;background:white!important}#print-preview-toolbar{display:none!important}#print-preview-overlay #print-root{display:block!important;padding:0!important;overflow:visible!important}#print-root .print-page{margin:0!important;box-shadow:none!important;break-inside:avoid;break-after:page}#print-root .print-page:last-child{break-after:auto}}

/* Branded stationery shared by invoices, quotes, receipts and reports. */
.print-settings-title{font-size:16px;margin:22px 0 12px}#print-root .print-header{background:#142f46;color:white;border:0;border-bottom:1mm solid #e78338;padding:5mm 6mm;margin-bottom:5mm;min-height:29mm;border-radius:1mm}#print-root .print-brand{background:transparent;padding:0;margin:0}#print-root .print-brand img{width:38mm}#print-root .print-title .print-company{font-size:10px;color:#c1d1dd;margin:0 0 1mm}#print-root .print-title h1{color:#fff;font-size:22px}#print-root .print-title .print-subtitle{color:#f0bd93;font-size:11.5px;line-height:1.6;max-width:150mm;overflow-wrap:anywhere}#print-root .page-content{height:calc(100% - 24mm)}#print-root .page-footer{bottom:8mm;height:22mm;display:block;border:0;padding:0;color:#657d91}#print-root .brand-footer{min-height:15mm;background:#142f46;border-top:.7mm solid #e78338;color:white;padding:3mm 5mm 2.5mm;border-radius:.7mm;font-size:10px;line-height:1.6}#print-root .factory-address{text-align:center;margin-bottom:1mm}#print-root .footer-contacts{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#f1f5f8;font:10px/1.5 Arial,Tajawal,sans-serif}#print-root .page-footline{display:flex;justify-content:space-between;font-size:9px;padding:1.5mm 0 0}#print-root .print-company-tax{font-size:10px;margin:-2mm 0 4mm;color:#576f83}#print-root .totals{margin-top:3mm;border:1px solid #b9c8d4;border-radius:1mm;padding:3mm 4mm;background:#f7f9fb}#print-root .totals .grand{background:#142f46;color:white;margin:2mm -4mm -3mm;padding:3mm 4mm;border:0}

#print-root .print-page{zoom:var(--preview-zoom,1)}@media print{#print-root .print-page{zoom:1!important}}

/* Receipt totals, period search, and live customer balances. */
.receipts-overview{display:grid;grid-template-columns:minmax(245px,1fr) minmax(420px,2.2fr);gap:20px;margin-bottom:20px}.receipt-month-card{background:var(--navy,#142f46);color:#fff;border-radius:12px;padding:24px;position:relative;display:flex;flex-direction:column;justify-content:center;border-bottom:4px solid #e78338}.receipt-month-card p{font-size:16px;margin:0 0 12px}.receipt-month-card>strong{font-size:31px;line-height:1.4}.receipt-month-card small,.receipt-period small,.receipt-balance-card small{font-size:14px;font-weight:500}.receipt-month-card>span:not(.receipt-card-icon){font-size:12px;color:#c7d6e3;margin-top:8px}.receipt-card-icon{position:absolute;left:22px;top:22px;color:#efa366}.receipt-date-range{font-size:12px;margin-top:10px;display:block;font-family:Arial,sans-serif;color:inherit}.receipt-month-card .receipt-date-range{color:#c7d6e3}.receipt-search{padding:21px 24px}.receipt-search h2{font-size:17px;display:flex;align-items:center;gap:8px;margin:0 0 16px}.receipt-search-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.receipt-search .actions{margin-top:16px}.receipt-search .form-error:empty{display:none}.receipt-search input,.receipt-search select{min-width:0;width:100%}.receipt-period{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:20px;border-right:4px solid #e78338}.receipt-period p{font-size:14px;color:var(--muted);margin:0 0 7px}.receipt-period strong{font-size:27px}.receipt-period-details{display:flex;flex-direction:column;gap:7px;font-size:13px;color:var(--muted)}.receipt-period-details b{color:var(--ink,#142f46)}.receipt-balance-slot{margin:18px 0}.receipt-balance-card{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#edf3f8;border:1px solid #c9d8e5;border-right:4px solid #dc873f;border-radius:9px;padding:16px 18px;margin:16px 0}.receipt-balance-slot .receipt-balance-card{margin:0}.receipt-balance-card p{margin:0 0 7px;color:#557084;font-size:13px}.receipt-balance-card strong{font-size:26px;color:#17344c;line-height:1.3}.receipt-balance-card>span{font-size:12px;color:#7c4a24;background:#fff1e2;border-radius:20px;padding:6px 10px;white-space:nowrap}.receipt-balance-card.settled,.receipt-balance-card.credit{border-right-color:#3c9770;background:#f0f8f4}.receipt-balance-card.settled>span,.receipt-balance-card.credit>span{background:#dff0e7;color:#247353}.receipt-success{background:#edf8f0;color:#287147;border-color:#cbe7d5;margin-bottom:14px}@media(max-width:1050px){.receipts-overview{grid-template-columns:1fr}.receipt-month-card{min-height:175px}.receipt-month-card>strong{font-size:29px}}@media(max-width:580px){.receipt-search-fields{grid-template-columns:1fr}.receipt-period,.receipt-balance-card{align-items:flex-start;flex-direction:column}.receipt-search,.receipt-period{padding:18px}.receipt-balance-card strong{font-size:23px}}
/* Inventory trace and company mail — 1.2 */
.top-mail{display:inline-flex;align-items:center;gap:8px;background:#eef3fa;border:1px solid #d9e3f1;border-radius:9px;padding:8px 12px;color:#142c50;font-weight:700;text-decoration:none;white-space:nowrap}.top-mail:hover{background:#e1eaf7}.inventory-search{flex-wrap:wrap}.inventory-search .search{min-width:240px;flex:2}.inventory-search label{min-width:128px;flex:1}.trace-details{margin-top:18px}.trace-details>summary{padding:19px 22px;cursor:pointer;font-weight:700;color:#163457}.user-mail-section{border:1px solid #dfe7f1;background:#f5f8fc;border-radius:12px;padding:18px;margin:22px 0}.user-mail-section h3{display:flex;align-items:center;gap:10px}.user-mail-section fieldset{border:0;padding:12px 0 0;min-width:0}.user-mail-section fieldset:disabled{opacity:.42}.mail-layout{display:grid;grid-template-columns:205px minmax(0,1fr);gap:22px;align-items:start}.mail-folders{background:#fff;border:1px solid #e1e8f0;border-radius:14px;padding:18px 12px}.mail-folders h3{margin:0 12px 16px;color:#193458}.mail-folder{display:flex;gap:10px;align-items:center;width:100%;background:transparent;border:0;padding:12px;border-radius:8px;text-align:right;font:inherit;color:#607089;cursor:pointer;margin-bottom:4px}.mail-folder.active{background:#142d50;color:white}.mail-list-panel{overflow:hidden}.mail-list-panel .toolbar{margin:0;padding:18px;border-bottom:1px solid #e9eef5}.mail-row{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(160px,1.5fr) 155px;gap:18px;align-items:center;width:100%;text-align:right;border:0;border-bottom:1px solid #e7edf5;background:white;padding:19px 22px;font:inherit;color:#62718a;cursor:pointer}.mail-row:hover{background:#f5f8fc}.mail-row.unread{color:#142b4d;background:#fbfcfe;font-weight:700}.mail-row .mail-sender,.mail-row .mail-subject{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-row time{font-size:11px;line-height:1.6;color:#7c899c;font-weight:400}.mail-empty{padding:65px 28px;text-align:center}.mail-empty p{color:#718096;margin-bottom:24px}.mail-login-panel{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;max-width:1040px;margin:22px auto}.mail-intro{padding:50px 40px;background:#122c50;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.mail-intro h2{font-size:28px;line-height:1.65;margin:18px 0 12px}.mail-intro p{color:#d0dcee;line-height:1.9}.mail-intro .form-help{color:#d0dcee}.mail-intro .btn{background:#fff;color:#193457;margin-top:15px}.mail-hero-icon{display:grid;place-items:center;width:58px;height:58px;background:#ec8f31;border-radius:16px}.mail-hero-icon svg{width:29px;height:29px}.mail-login-panel form{padding:45px 36px}.mail-login-panel label{margin-bottom:22px}.mail-login-panel h3{margin-bottom:28px}.mail-login-panel .btn{width:100%}.mail-compose-panel,.mail-reader{max-width:1150px;margin:auto}.mail-compose-fields{padding:24px}.mail-compose-fields>label{margin-bottom:20px}.mail-compose-fields details{margin:12px 0}.mail-compose-fields summary{cursor:pointer;color:#526983;margin-bottom:12px}.mail-compose-fields textarea{line-height:1.9;resize:vertical;min-height:210px}.mail-attachments{border:1px solid #dee7f0;border-radius:12px;padding:18px;margin:22px 0;background:#fbfcfe}.mail-attachment-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.mail-attachment-head h3{margin:0}.mail-attachment-head h3 small{display:block;font-size:11px;color:#7f8da2;font-weight:400;margin-top:5px}.mail-upload-label{position:relative;overflow:hidden;cursor:pointer}.mail-upload-label input{position:absolute;opacity:0;width:100%;height:100%;inset:0;cursor:pointer}.mail-file{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e2e8f1;border-radius:9px;padding:12px;margin-top:9px}.mail-file>div{flex:1;min-width:0}.mail-file strong{display:block;overflow-wrap:anywhere;font-size:13px}.mail-file small{display:block;color:#718198;font-size:11px;margin-top:3px}.mail-file-mark{display:grid;place-items:center;width:41px;height:46px;color:#dd7b21;background:#fff2e5;border-radius:7px;font-size:11px;font-weight:800}.mail-message-meta{padding:20px 26px;border-bottom:1px solid #e6edf5;color:#627189;font-size:13px}.mail-message-meta p{margin:5px 0}.mail-message-body,.mail-review pre{font-family:inherit;font-size:14px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.mail-message-body{padding:30px;margin:0;min-height:260px}.mail-read-attachments{padding:24px;border-top:1px solid #e6edf5;display:flex;gap:10px;flex-wrap:wrap}.mail-read-attachments h3{width:100%}.mail-review pre{background:#f5f8fc;border:1px solid #e0e8f0;padding:18px;border-radius:10px;max-height:330px;overflow:auto}.mail-review p{overflow-wrap:anywhere}.mail-reader .panel-head h2{max-width:70%;overflow-wrap:anywhere}
@media(max-width:1100px){.top-date{display:none}.mail-layout{grid-template-columns:165px minmax(0,1fr)}.mail-row{grid-template-columns:minmax(100px,.8fr) minmax(120px,1.2fr)}.mail-row time{grid-column:2}.mail-login-panel{grid-template-columns:1fr 1fr}.mail-intro{padding:30px 26px}.mail-login-panel form{padding:30px 24px}}
@media(max-width:700px){.top-mail{font-size:12px;padding:7px 9px}.mail-layout{grid-template-columns:1fr}.mail-folders{display:flex;flex-wrap:wrap;gap:5px}.mail-folders h3{width:100%;margin:3px 8px}.mail-folder{width:auto;margin:0}.mail-login-panel{grid-template-columns:1fr}.mail-intro{padding:24px}.mail-intro h2{font-size:23px}.mail-compose-fields{padding:16px}.mail-file{flex-wrap:wrap}.mail-row{padding:16px;gap:8px}.mail-reader .panel-head{align-items:flex-start;flex-direction:column}.mail-reader .panel-head h2{max-width:100%}.mail-message-body{padding:18px}}

/* Invoice lot and expiry sit below the product, including A4 preview. */
td small.product-detail{font-size:11px;font-weight:400;color:#82919e;direction:ltr;text-align:left;line-height:1.5}#print-root td small.product-detail{font-size:9.5px;color:#71818e;line-height:1.4}

.mail-html-message{display:block;width:100%;height:76vh;min-height:520px;border:0;background:#fff}.mail-reader .panel-head{flex-wrap:wrap;gap:15px}.mail-reader .panel-head h2{max-width:100%}.mail-empty>.actions{justify-content:center}.mail-reader .mail-message-meta{background:#f8fafc}.mail-html-message:focus{outline:2px solid #e78338;outline-offset:-2px}

.top-date{line-height:1.5;white-space:nowrap}.top-date small{display:block;text-align:center;font-size:11px}.top-date time{font-variant-numeric:tabular-nums}

/* Audit search and shared kit pamphlets. */
.audit-filters{padding:20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px;align-items:end}.audit-query{grid-column:span 2}.audit-filters .form-error{grid-column:1/-1}.audit-details{min-width:150px;max-width:360px}.audit-details summary{cursor:pointer;color:#24759c}.audit-details pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:360px;max-height:240px;overflow:auto;font-size:12px}.files-intro{display:flex;align-items:center;gap:16px;padding:20px;background:#eef4f8;border-radius:12px;margin-bottom:20px}.files-intro p{margin:4px 0;color:#697d8d}.files-pdf-mark{background:#fcebe7;color:#b84b36;font:700 14px Arial;padding:16px 10px;border-radius:8px}.files-empty{padding:45px 20px;text-align:center}.files-empty h2{margin:20px 0 8px}.file-title{max-width:420px;overflow-wrap:anywhere}.file-upload-help{background:#f2f6f8;border:1px dashed #b3c8d8;border-radius:10px;padding:18px}.pamphlet-picker .toolbar{padding:0;margin-bottom:18px}.pamphlet-upload{display:flex;align-items:center;gap:12px;padding:16px;margin-bottom:18px;background:#eef4f8;border-radius:8px}.pamphlet-upload input{max-width:280px}.language-toggle{white-space:nowrap;font-family:Arial,Tajawal,sans-serif;min-width:75px}.login-language{position:absolute;top:20px;inset-inline-end:24px;z-index:2}
@media(max-width:1050px){.audit-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.audit-filters{grid-template-columns:1fr}.audit-query{grid-column:auto}.pamphlet-upload{align-items:flex-start;flex-direction:column}.files-intro{align-items:flex-start}}
/* Direction follows the selected interface language; entered content keeps its own direction. */
html[dir=ltr] .sidebar{inset:0 auto 0 0}html[dir=ltr] .workspace{margin-right:0;margin-left:234px}html[dir=ltr] table,html[dir=ltr] .report-card,html[dir=ltr] .mail-folder,html[dir=ltr] .mail-row{text-align:left}html[dir=ltr] .user-menu{border-right:0;padding-right:0;border-left:1px solid var(--border);padding-left:18px}html[dir=ltr] .search input{padding-right:12px;padding-left:40px}html[dir=ltr] .search>.icon{right:auto;left:13px}html[dir=ltr] .login-brand-content,html[dir=ltr] .login-form-side{direction:ltr}html[dir=ltr] .kpi-value small{margin-right:0;margin-left:6px}html[dir=ltr] input[type=number],html[dir=ltr] input[type=date]{text-align:left}html[dir=ltr] #print-preview-overlay #print-root{direction:ltr}html[dir=ltr] #print-root th,html[dir=ltr] #print-root td{text-align:left}html[dir=ltr] #print-root .totals{margin-right:0;margin-left:auto}html[dir=ltr] .receipt-period,html[dir=ltr] .receipt-balance-card{border-right:0;border-left:4px solid #e78338}html[dir=ltr] .mail-editor-shell .ql-editor.ql-blank::before{text-align:left}
@media(max-width:1150px){html[dir=ltr] .workspace{margin-left:205px}}@media(max-width:800px){html[dir=ltr] .workspace{margin-left:0}html[dir=ltr] .sidebar{transform:translateX(-100%)}html[dir=ltr] .sidebar.open{transform:none}.language-toggle{min-width:65px;padding:8px 10px}.topbar{gap:10px}}
