*{box-sizing:border-box}html,body{margin:0;background:#f5f7fb;color:#172033;font-family:Inter,"Segoe UI",Tahoma,Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{min-height:100vh}.sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:252px;background:#101827;color:#d9e1ef;padding:22px 16px;display:flex;flex-direction:column;z-index:30;box-shadow:8px 0 30px #0b12201a}.brand,.login-brand{display:flex;gap:12px;align-items:center}.brand{padding:0 8px 24px;border-bottom:1px solid #ffffff12}.logo{width:42px;height:42px;border-radius:11px;background:linear-gradient(145deg,#1b78ff,#5ea4ff);display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:-1px;box-shadow:0 8px 22px #1672ff45}.brand b,.login-brand b{display:block;color:#fff;font-size:17px}.brand span,.login-brand span{display:block;color:#8290a7;font-size:11px;margin-top:2px}.nav-caption{font-size:10px;letter-spacing:1.4px;color:#64748b;padding:22px 12px 9px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;color:#9facbf;font-weight:600}.sidebar nav a i{font-style:normal;width:22px;text-align:center;font-size:17px}.sidebar nav a:hover{background:#ffffff08;color:#fff}.sidebar nav a.active{background:#1d6ff21c;color:#fff;box-shadow:inset 3px 0 #2f80ff}.sidebar nav a.active i{color:#4d96ff}.sidebar-foot{margin-top:auto;padding:16px 6px 0;border-top:1px solid #ffffff12}.user-mini{display:flex;align-items:center;gap:10px}.user-mini>span,.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#2d7cf5;color:#fff;font-weight:800}.user-mini b{display:block;font-size:12px;color:#fff}.user-mini small{color:#718096}.workspace{min-height:100vh;margin-inline-start:252px}.topbar{height:70px;background:#fff;border-bottom:1px solid #e7ebf2;display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:20}.topbar>div:first-of-type small{display:block;color:#8792a5;font-size:10px;text-transform:uppercase;letter-spacing:.8px}.topbar strong{font-size:14px}.top-actions{display:flex;align-items:center;gap:8px}.icon-btn{height:34px;min-width:34px;padding:0 10px;border:1px solid #e5e9f0;border-radius:8px;display:grid;place-items:center;background:#fff;color:#536176;font-size:12px}.avatar{border:0}.mobile-menu{display:none}.content{padding:30px;max-width:1550px;margin:auto}.page-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{display:block;font-size:10px;letter-spacing:1.4px;color:#2f7df6;font-weight:800;margin-bottom:7px}.page-title h1{font-size:27px;margin:0 0 6px;letter-spacing:-.5px}.page-title p,.panel-head p,.section-title p{margin:0;color:#7b8798}.title-actions{display:flex;gap:8px;align-items:center}.title-actions form{margin:0}.btn{border:1px solid #dfe5ed;background:#fff;color:#344054;padding:9px 14px;border-radius:8px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn:hover{border-color:#b9c3d1}.btn.primary{background:#226fe8;color:#fff;border-color:#226fe8;box-shadow:0 5px 15px #226fe82c}.btn.ghost{background:#f8faff;border-style:dashed}.wide{width:100%}.panel{background:#fff;border:1px solid #e6eaf0;border-radius:12px;box-shadow:0 1px 2px #10182808}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #edf0f4}.panel-head h2{margin:0 0 4px;font-size:16px}.panel-head a{color:#226fe8;font-weight:700;font-size:12px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.kpi{background:#fff;border:1px solid #e6eaf0;border-radius:12px;padding:18px;position:relative;min-height:132px}.kpi>span{position:absolute;inset-inline-end:16px;top:16px;width:32px;height:32px;border-radius:9px;background:#eef5ff;color:#2675eb;display:grid;place-items:center}.kpi small{display:block;color:#7b8798;font-weight:600;margin-bottom:16px}.kpi strong{display:block;font-size:23px;letter-spacing:-.4px}.kpi strong em{font-size:10px;color:#8a95a6;font-style:normal}.kpi p{margin:10px 0 0;color:#7b8798;font-size:11px}.dash-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.span2{grid-column:span 2}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:start;background:#fafbfc;color:#7a8596;font-size:10px;text-transform:uppercase;letter-spacing:.5px;padding:11px 16px;border-bottom:1px solid #e9edf2}td{padding:13px 16px;border-bottom:1px solid #eef1f5;color:#475467}tbody tr:hover{background:#fbfcff}tbody tr:last-child td{border-bottom:0}td b{color:#202939}.docno{color:#216fe8;font-weight:800}.status,.stock{display:inline-flex;padding:5px 9px;border-radius:20px;font-size:10px;font-weight:800;text-transform:uppercase}.status.draft{background:#f1f3f6;color:#667085}.status.approved,.status.posted,.stock.normal{background:#e9f8f0;color:#168254}.status.part_paid{background:#fff5dd;color:#a86600}.status.paid{background:#eaf3ff;color:#216fe8}.status.cancelled,.stock.out{background:#fff0f0;color:#c43b3b}.stock.low{background:#fff4df;color:#b66d00}.rank-list{padding:12px 20px 20px}.rank{display:grid;grid-template-columns:1fr auto;gap:7px;padding:11px 0}.rank b{font-size:12px}.rank span{font-weight:800;color:#667085}.rank div{grid-column:1/3;height:5px;background:#edf1f5;border-radius:5px;overflow:hidden}.rank i{display:block;height:100%;background:#2e7bed;border-radius:5px}.summary-strip{display:flex;background:#fff;border:1px solid #e6eaf0;border-radius:11px;margin-bottom:14px}.summary-strip div{padding:13px 20px;min-width:160px;border-inline-end:1px solid #edf0f4}.summary-strip small{color:#7d899a;margin-inline-end:10px}.summary-strip b{font-size:17px}.toolbar{display:flex;gap:8px;margin-bottom:14px}.searchbox{height:38px;min-width:320px;background:#fff;border:1px solid #dfe5ed;border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 11px;color:#8b95a5}.searchbox input{border:0;outline:0;width:100%;background:transparent}.sku{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#f3f5f8;padding:4px 7px;border-radius:5px;font-size:11px}.product-cell{display:flex;align-items:center;gap:10px}.product-cell>span{width:30px;height:30px;border-radius:7px;background:#edf4ff;color:#2b76e5;display:grid;place-items:center;font-weight:800}.product-cell b,.product-cell small{display:block}.product-cell small,.block{display:block;color:#98a2b3;margin-top:2px}.more{font-weight:900;letter-spacing:1px;color:#667085}.tabs{display:flex;gap:4px;border-bottom:1px solid #e2e7ed;margin-bottom:16px}.tabs a{padding:10px 14px;color:#667085;font-weight:700;border-bottom:2px solid transparent}.tabs a.active{color:#226fe8;border-color:#226fe8}.tabs span{background:#edf1f6;border-radius:10px;padding:1px 6px;font-size:10px}.form-section{padding:20px;margin-bottom:16px}.section-title{display:flex;align-items:center;gap:11px;margin-bottom:18px}.section-title>b{width:32px;height:32px;border-radius:8px;background:#eef5ff;color:#2776eb;display:grid;place-items:center}.section-title h2{margin:0 0 3px;font-size:15px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid.four{grid-template-columns:repeat(4,1fr)}label{display:flex;flex-direction:column;gap:6px;color:#536176;font-size:11px;font-weight:700}input,select,textarea{width:100%;border:1px solid #dce2ea;border-radius:7px;background:#fff;padding:9px 10px;color:#253247;outline:none}input:focus,select:focus,textarea:focus{border-color:#6ba1f4;box-shadow:0 0 0 3px #2f7df612}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.invoice-lines{overflow:auto}.line-head,.invoice-line{min-width:920px;display:grid;grid-template-columns:2.3fr .6fr .8fr .8fr 1.1fr .8fr 32px;gap:8px;align-items:center}.line-head{color:#7b8798;font-size:10px;text-transform:uppercase;padding:0 0 8px}.invoice-line{padding:8px 0;border-top:1px solid #edf0f4}.invoice-line .line-total{text-align:end}.remove-line{border:0;background:#fff1f1;color:#bd3535;border-radius:6px;height:30px;cursor:pointer}.invoice-bottom{display:grid;grid-template-columns:1.6fr .8fr;gap:16px}.totals{padding:20px;align-self:start}.totals>div{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f4;color:#667085}.totals .grand{padding:16px 0;border-bottom:0}.totals .grand b{font-size:20px;color:#172033}.discount-input{display:flex;gap:5px}.discount-input select{width:70px}.discount-input input{width:90px}.doc-banner{display:grid;grid-template-columns:repeat(4,1fr);background:#142033;color:#fff;border-radius:12px;margin-bottom:16px;overflow:hidden}.doc-banner>div{padding:17px 20px;border-inline-end:1px solid #ffffff15}.doc-banner small{display:block;color:#8fa0b7;margin-bottom:7px}.doc-banner b{font-size:16px}.invoice-customer{display:grid;grid-template-columns:2fr 1fr 1fr;padding:20px;border-bottom:1px solid #edf0f4}.invoice-customer small{color:#8a95a5}.invoice-customer h3{margin:5px 0}.invoice-customer p{color:#7b8798;margin:0}.doc-totals{width:360px;margin-inline-start:auto;padding:18px 22px}.doc-totals div{display:flex;justify-content:space-between;padding:8px 0}.doc-totals div:last-child{border-top:1px solid #dfe5ec;margin-top:5px;padding-top:13px;font-size:16px}.modal{position:fixed;inset:0;background:#10182870;z-index:80;display:none;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-card{background:#fff;border-radius:13px;width:min(680px,100%);box-shadow:0 25px 60px #10182845}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e9edf2}.modal-head h2{margin:0}.modal-head small{color:#2f7df6}.modal-head button{border:0;background:transparent;font-size:24px;cursor:pointer}.modal-card form{padding:20px}.alert{padding:12px 15px;border-radius:8px;margin-bottom:16px}.alert.danger{background:#fff0f0;color:#a92e2e;border:1px solid #ffd8d8}.alert.info{background:#edf6ff;color:#245d9e;border:1px solid #d4e8ff}.report-grid,.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.report-card,.role-card{padding:22px}.report-card>span,.role-card>span{width:38px;height:38px;border-radius:9px;background:#eef5ff;color:#2b78eb;display:grid;place-items:center;font-size:18px}.report-card h3,.role-card h3{margin:15px 0 6px}.report-card p{color:#7b8798}.role-card b{color:#7b8798;font-size:11px}.empty,.empty-state{text-align:center;color:#98a2b3;padding:28px}.empty-state{padding:80px}.empty-state>div{margin:auto;width:55px;height:55px;border-radius:14px;background:#226fe8;color:#fff;display:grid;place-items:center;font-weight:800}.login-page{background:#0e1726;min-height:100vh}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 420px;align-items:center;max-width:1100px;margin:auto;gap:80px;padding:40px}.login-brand .logo{width:60px;height:60px}.login-brand b{font-size:30px}.login-brand span{font-size:13px}.login-card{background:#fff;padding:36px;border-radius:15px;box-shadow:0 30px 80px #0005}.login-card h1{font-size:28px;margin:7px 0}.login-card p{color:#7b8798;margin:0 0 25px}.login-card label{margin-bottom:14px}.lang-link{display:block;text-align:center;margin-top:16px;color:#226fe8;font-weight:700}.login-card .eyebrow{margin:0}.login-card .btn{margin-top:8px}.login-page[dir=rtl] .login-brand{justify-self:end}.rtl{}[dir=rtl] .sidebar nav a.active{box-shadow:inset -3px 0 #2f80ff}@media(max-width:1000px){.sidebar{transform:translateX(-105%);transition:.2s}[dir=rtl] .sidebar{transform:translateX(105%)}.sidebar.open{transform:none}.workspace{margin-inline-start:0}.mobile-menu{display:block;border:0;background:#f1f4f8;border-radius:7px;padding:7px 9px}.kpis{grid-template-columns:repeat(2,1fr)}.dash-grid,.invoice-bottom{grid-template-columns:1fr}.span2{grid-column:auto}.form-grid.four{grid-template-columns:repeat(2,1fr)}.login-wrap{grid-template-columns:1fr}.login-brand{display:none}}@media(max-width:650px){.content{padding:18px}.topbar{padding:0 16px}.page-title{align-items:flex-start;flex-direction:column}.kpis,.report-grid,.role-grid,.form-grid,.form-grid.four,.doc-banner,.invoice-customer{grid-template-columns:1fr}.summary-strip{overflow:auto}.searchbox{min-width:0;flex:1}.top-actions .icon-btn:not(:first-child){display:none}.doc-totals{width:100%}.login-wrap{padding:18px}.login-card{padding:26px}}
