:root{--navy:#091f3e;--navy2:#06162c;--blue:#1164de;--blue2:#0a4fbe;--green:#18a66a;--orange:#e58328;--purple:#8057ce;--ink:#142238;--muted:#718096;--line:#e2e8f0;--bg:#f3f6fb;--white:#fff;--danger:#d94747}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:"Noto Sans Khmer","Khmer OS Battambang","Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{transition:.18s}a{text-decoration:none;color:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:linear-gradient(180deg,var(--navy),var(--navy2));color:#fff;padding:24px 17px;display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:center;gap:12px;padding:0 9px 24px;border-bottom:1px solid #ffffff16}.brand>span,.auth-logo{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#257cff,#0c4fbc);font:bold 24px Arial;box-shadow:0 8px 22px #0755c955}.brand b{display:block;font-size:18px;letter-spacing:.7px}.brand small{display:block;color:#8da4c5;margin-top:3px;font-size:10px}.sidebar nav{display:flex;flex-direction:column;gap:5px;margin-top:23px}.sidebar nav a{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 12px;border-radius:10px;color:#9eb0ca;font-size:12px}.sidebar nav a:hover{background:#ffffff0d;color:#fff}.sidebar nav a.active{color:#fff;background:linear-gradient(100deg,#1a6be0,#1152b9);box-shadow:0 9px 20px #004aa444}.sidebar nav i{width:24px;text-align:center;font:normal 18px Arial}.nav-label{font-size:8px;color:#607696;text-transform:uppercase;letter-spacing:1.2px;padding:17px 12px 4px}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff14;padding-top:15px}.local-status{display:flex;align-items:center;gap:8px;color:#92a6c4;font:600 9px Arial;padding:0 8px 8px}.local-status>span{width:8px;height:8px;border-radius:50%;background:#26d583;box-shadow:0 0 0 4px #26d5831c}.profile{display:flex;align-items:center;gap:10px;background:#ffffff09;padding:10px;border-radius:11px}.profile>div{width:35px;height:35px;border-radius:9px;background:#24508a;display:grid;place-items:center;font:bold 11px Arial}.profile>span{flex:1}.profile b{display:block;font-size:11px}.profile small{display:block;color:#8296b5;font-size:8px;margin-top:2px}.profile form button{border:0;background:transparent;color:#8da0bc;font-size:17px;cursor:pointer}.main{margin-left:270px;width:calc(100% - 270px);min-height:100vh}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;position:sticky;top:0;z-index:30}.mobile-menu{display:none;border:0;background:transparent;font-size:21px}.top-search{width:min(470px,44vw);height:40px;border:1px solid var(--line);border-radius:10px;background:#f8fafc;display:flex;align-items:center;padding:0 12px;color:#8492a6}.top-search input{border:0;background:transparent;outline:0;width:100%;padding-left:8px;font-size:11px}.top-actions{margin-left:auto;display:flex;gap:9px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:0 15px;border-radius:9px;border:0;font-size:11px;font-weight:700;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;box-shadow:0 7px 16px #0f5bd82b}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 9px 20px #0f5bd83d}.btn-light{background:#fff;border:1px solid var(--line);color:#53647b}.btn-light:hover{background:#f5f8fc}.btn-block{width:100%;margin-top:12px}.page-wrap{padding:28px 32px 50px;max-width:1580px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.page-head p{margin:0 0 5px;color:var(--muted);font-size:10px}.page-head h1{margin:0;font-size:23px}.safe-pill{display:flex;align-items:center;gap:7px;padding:7px 11px;border-radius:30px;border:1px solid #ccebdc;background:#f0fbf6;color:#147f54;font-size:9px;font-weight:700}.card,.metric{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 5px 18px #142f5409}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:17px}.metric{position:relative;padding:18px}.metric>i{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font:bold 17px Arial;font-style:normal}.metric>i.green{color:var(--green);background:#e9f8f1}.metric>i.blue{color:var(--blue);background:#eaf2ff}.metric>i.orange{color:var(--orange);background:#fff2e6}.metric>i.purple{color:var(--purple);background:#f2ebfd}.metric>span{display:block;color:var(--muted);font-size:10px;margin-bottom:9px}.metric>b{display:block;font:bold 22px Arial}.metric>small{display:block;color:#8190a4;font-size:8px;margin-top:7px}.two-metrics{grid-template-columns:repeat(3,1fr)}.dashboard-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:17px}.dashboard-grid>.card{padding:20px}.card-head{display:flex;justify-content:space-between;align-items:flex-start}.card-head h2{font-size:13px;margin:0 0 4px}.card-head p{font-size:8px;color:var(--muted);margin:0}.card-head a{font-size:8px;color:var(--blue);border:1px solid var(--line);padding:6px 8px;border-radius:7px}.bars{height:210px;display:flex;align-items:end;gap:7%;padding:28px 20px 0;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,#fff 0,#fff 45px,#edf1f6 46px);margin-top:12px}.bars>div{height:100%;flex:1;display:flex;align-items:end;justify-content:center;position:relative}.bars span{width:15px;min-height:10px;border-radius:5px 5px 0 0;background:linear-gradient(#3986ec,#1159c4)}.bars small{position:absolute;bottom:-20px;color:#8290a3;font-size:8px}.mini-list{margin-top:13px}.mini-list>div,.mini-list>a{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #edf1f5}.mini-list i{width:33px;height:33px;display:grid;place-items:center;border-radius:8px;background:#eef4fd;color:#1762c7;font:bold 13px Arial;font-style:normal}.mini-list span{flex:1}.mini-list b{font-size:9px;display:block}.mini-list small{font-size:7px;color:var(--muted);display:block;margin-top:3px}.mini-list em{font-style:normal;font-size:7px;color:#c77426;background:#fff2e5;padding:5px 7px;border-radius:20px}.mini-list strong{font:bold 9px Arial;color:var(--green)}.data-card{overflow:hidden}.table-tools{display:flex;align-items:center;gap:9px;padding:16px 20px;border-bottom:1px solid var(--line)}.table-tools>span{margin-left:auto;color:var(--muted);font-size:9px}.search-box{height:39px;min-width:320px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;padding:0 11px;background:#f8fafc;color:#8593a6}.search-box input{border:0;outline:0;background:transparent;width:100%;font-size:10px}.search-box.big{margin:18px 0 12px;min-width:0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th{text-align:left;padding:12px 16px;background:#f8fafc;color:#7d8a9e;font-size:8px;text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--line)}td{padding:14px 16px;border-bottom:1px solid #edf1f5;font-size:9px;color:#4e5e74}td b{display:block;color:var(--ink);font-size:9px}td small{display:block;color:var(--muted);font-size:7px;margin-top:3px}td code{background:#eff3f7;padding:4px 6px;border-radius:5px;font-size:8px}.status{display:inline-block;padding:5px 7px;border-radius:20px;font-size:7px;font-weight:700}.status.success,.status.completed{background:#e9f8f1;color:#14815a}.status.warning,.status.waiting{background:#fff1e3;color:#c36c1e}.status.info,.status.in-progress{background:#eaf2ff;color:#145ebe}.link-btn{border:0;background:transparent;color:var(--blue);font-weight:700;font-size:8px;cursor:pointer}.text-green{color:var(--green)!important}.text-orange{color:var(--orange)!important}.empty{text-align:center;color:#8996a8;padding:30px!important;font-size:9px}.flash-wrap{position:fixed;right:22px;top:84px;z-index:100}.flash{min-width:260px;display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-radius:10px;margin-bottom:8px;font-size:10px;box-shadow:0 14px 35px #081d3d30}.flash.success{background:#113c32;color:#e5fff4}.flash.error{background:#642b2b;color:#ffe9e9}.flash button{border:0;background:transparent;color:inherit;font-size:17px}.modal-backdrop{display:none;position:fixed;inset:0;background:#03112599;backdrop-filter:blur(4px);place-items:center;padding:20px;z-index:200}.modal-backdrop.show{display:grid}.modal{width:min(580px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:17px;box-shadow:0 30px 80px #0005;animation:pop .18s ease-out}.modal-head{display:flex;justify-content:space-between;padding:21px 22px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0 0 4px;font-size:16px}.modal-head p{margin:0;color:var(--muted);font-size:9px}.modal-head button{border:0;background:#eef2f7;color:#65758a;width:30px;height:30px;border-radius:8px;font-size:19px}.modal-body{padding:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label,.modal-body>label,.settings-card label,.auth-card label{font-size:9px;font-weight:700;color:#526279}.form-grid input,.form-grid select,.form-grid textarea,.modal-body input,.modal-body select,.settings-card input,.settings-card select,.auth-card input,.cart-customer input,.cart-customer select,.cart-customer textarea{width:100%;border:1px solid #dbe3ed;border-radius:8px;min-height:39px;padding:8px 10px;margin-top:6px;background:#fff;outline:0;font-size:10px;color:var(--ink)}textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.auth-card input:focus{border-color:#4b89e3;box-shadow:0 0 0 3px #3d81df18}.span-2{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:5px}.settings-card{max-width:760px;padding:25px}.settings-card hr{border:0;border-top:1px solid var(--line);margin:28px 0}.settings-card h2{font-size:14px}.settings-card p{font-size:9px;color:var(--muted)}.auth-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 75% 15%,#1468d722,transparent 35%),linear-gradient(145deg,#071930,#0b2a52);padding:20px}.auth-card{width:min(410px,100%);background:#fff;border-radius:19px;padding:32px;box-shadow:0 30px 80px #0005;text-align:center}.auth-logo{color:#fff;margin:0 auto 14px}.auth-card h1{font-size:22px;margin:0}.auth-card>p{color:var(--muted);font-size:10px;margin:6px 0 22px}.auth-card label{display:block;text-align:left;margin-bottom:13px}.auth-card>small{display:block;color:#91a0b2;font-size:8px;margin-top:20px}.wide-auth{width:min(640px,100%)}.setup-page .auth-card{padding:26px}.sale-layout{display:grid;grid-template-columns:1.25fr .9fr;gap:17px;align-items:start}.sale-layout>.card{padding:20px}.product-picker{display:grid;grid-template-columns:1fr 1fr;gap:9px;max-height:590px;overflow:auto}.pick-product{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px;display:flex;align-items:center;gap:9px;text-align:left;cursor:pointer}.pick-product:hover{border-color:#5c93e2;background:#f8fbff}.pick-product:disabled{opacity:.45}.pick-product>i{width:34px;height:34px;display:grid;place-items:center;background:#eaf2ff;color:#145fc8;border-radius:8px;font:bold 13px Arial;font-style:normal}.pick-product>span{flex:1}.pick-product b{display:block;font-size:9px}.pick-product small{display:block;font-size:7px;color:var(--muted);margin-top:3px}.pick-product strong{font:bold 9px Arial;color:var(--blue)}.cart-card{position:sticky;top:90px}.cart-list{margin-top:12px;max-height:270px;overflow:auto}.cart-row{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid #edf1f5}.cart-row>span{flex:1}.cart-row b{font-size:9px;display:block}.cart-row small{color:var(--muted);font-size:8px}.cart-row input{width:50px;border:1px solid var(--line);border-radius:5px;padding:3px;font-size:8px}.cart-row strong{font:bold 9px Arial}.cart-row button{border:0;background:#fff1f1;color:#c94343;border-radius:6px;width:24px;height:24px}.cart-customer{border-top:1px solid var(--line);padding-top:12px}.cart-customer label{display:block;font-size:8px;font-weight:700;color:#53647a;margin-bottom:8px}.cart-customer .two{display:grid;grid-template-columns:1fr 1fr;gap:9px}.cart-total{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);padding:14px 0 0;margin-top:10px}.cart-total span{font-size:11px;font-weight:700}.cart-total b{font:bold 23px Arial;color:var(--blue)}.invoice{max-width:920px;margin:auto;padding:38px}.invoice>header{display:flex;justify-content:space-between;border-bottom:2px solid var(--navy);padding-bottom:24px}.invoice-brand{display:flex;gap:12px}.invoice-brand>i{width:47px;height:47px;display:grid;place-items:center;border-radius:12px;background:var(--blue);color:#fff;font:bold 25px Arial;font-style:normal}.invoice-brand h2{margin:2px 0 5px}.invoice-brand p{margin:0;font-size:8px;line-height:1.7;color:var(--muted)}.invoice-title{text-align:right}.invoice-title h1{font:800 29px Arial;margin:0;color:var(--navy)}.invoice-title b,.invoice-title small{display:block;margin-top:5px}.invoice-title small{font-size:8px;color:var(--muted)}.bill-info{display:flex;justify-content:space-between;background:#f6f8fc;border-radius:10px;padding:15px 18px;margin:20px 0}.bill-info span{display:block;color:var(--muted);font-size:8px;margin-bottom:4px}.bill-info b{font-size:10px}.invoice footer{display:flex;justify-content:space-between;margin-top:25px}.invoice footer>div:first-child p{font-size:14px;font-weight:700}.invoice-totals{width:290px}.invoice-totals p{display:flex;justify-content:space-between;margin:0;padding:7px 0;font-size:9px}.invoice-totals .grand{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}.job-board{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.job-column{background:#eef2f7;border-radius:13px;padding:12px;min-height:430px}.job-column>header{display:flex;justify-content:space-between;align-items:center;padding:3px 4px 11px}.job-column h2{font-size:11px;margin:0}.job-column>header span{width:22px;height:22px;border-radius:50%;background:#dce3ed;display:grid;place-items:center;font:bold 8px Arial}.job-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px;margin-bottom:10px}.job-no{display:flex;justify-content:space-between;color:var(--muted);font:600 7px Arial}.job-card h3{font-size:10px;margin:10px 0 5px}.job-card p,.job-card>small{font-size:8px;color:var(--muted)}.job-card footer{display:flex;justify-content:space-between;font-size:8px;margin:13px 0 8px}.job-card form select{width:100%;border:1px solid var(--line);border-radius:7px;padding:6px;font-size:8px}.job-empty{background:#ffffff99;border-radius:9px}@keyframes pop{from{transform:scale(.96);opacity:0}to{transform:none;opacity:1}}
@media(max-width:1080px){.sidebar{width:225px}.main{margin-left:225px;width:calc(100% - 225px)}.sidebar nav a{font-size:10px}.metrics{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.sale-layout{grid-template-columns:1fr}.cart-card{position:static}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.2s}.menu-open .sidebar{transform:none}.main{margin:0;width:100%}.topbar{height:62px;padding:0 14px}.mobile-menu{display:block;margin-right:8px}.top-search{flex:1;width:auto}.top-actions .btn-light{display:none}.top-actions .btn-primary{font-size:0;width:38px;padding:0}.top-actions .btn-primary:first-letter{font-size:16px}.page-wrap{padding:20px 14px 35px}.page-head{align-items:flex-start}.page-head h1{font-size:19px}.page-head>div:last-child{display:flex}.safe-pill{display:none}.metrics,.two-metrics{grid-template-columns:1fr 1fr;gap:9px}.product-picker{grid-template-columns:1fr}.job-board{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.search-box{min-width:0;flex:1}.invoice{padding:20px}.invoice>header,.invoice footer{gap:20px}.flash-wrap{left:14px;right:14px}.flash{min-width:0}.modal{max-height:88vh}}
@media(max-width:440px){.metrics,.two-metrics{grid-template-columns:1fr}.metric{min-height:110px}.page-head .btn-light{display:none}.invoice-title h1{font-size:20px}.invoice-brand h2{font-size:15px}}
@media print{body{background:#fff}.sidebar,.topbar,.page-head,.flash-wrap,.no-print{display:none!important}.main{margin:0;width:100%}.page-wrap{padding:0}.invoice{border:0;box-shadow:none;max-width:none;padding:10mm}table{min-width:0}}
.first-run{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.first-run p{font-size:9px;color:var(--muted);margin:0}.setup-login-link{display:block;color:var(--blue);font-size:9px;margin-top:17px}

/* Version 1.2 — Smart POS visual direction */
body{background:#f5f6f8;font-family:"Segoe UI",Arial,sans-serif}
.topbar{position:fixed;top:0;left:0;right:0;width:100%;height:64px;padding:0 24px;background:#fff;border-bottom:1px solid #dfe3e8;box-shadow:0 2px 7px rgba(20,39,68,.09);z-index:80}
.topbar-brand{display:flex;align-items:center;gap:7px;width:205px;color:#073e91;font-size:16px}.topbar-brand span{font-size:22px}.topbar-brand b{font-weight:750}
.top-search{width:380px;height:43px;border-color:#dfe3e8;border-radius:10px;background:#fff}.top-search input{font-size:13px;color:#344054}
.top-date{margin-left:22px;color:#475467;font-size:12px;white-space:nowrap}.top-actions{gap:10px}.top-icon{width:40px;height:40px;border:0;border-radius:10px;background:#f7f8fa;color:#111827;display:grid;place-items:center;font-size:17px;cursor:pointer}.top-user{height:40px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:10px;background:#f7f8fa;font-size:12px}.top-user span{font-size:10px}.top-user small{font-size:10px}
.sidebar{top:64px;bottom:0;height:auto;width:260px;padding:0;background:#123977;box-shadow:none;overflow-y:auto}.sidebar .brand{height:101px;padding:22px 24px;border-bottom:1px solid rgba(255,255,255,.58)}.sidebar .brand>span{display:none}.sidebar .brand b{font-size:22px;letter-spacing:.1px}.sidebar .brand small{font-size:12px;color:#b8d0f0;margin-top:4px}.sidebar nav{gap:0;margin:0;padding-bottom:30px}.sidebar nav a{min-height:47px;padding:0 20px;border-radius:0;color:#fff;font-size:14px;gap:10px}.sidebar nav a:hover{background:#194788}.sidebar nav a.active{background:#fff;color:#123977;border-left:4px solid #2472de;box-shadow:none;padding-left:16px}.sidebar nav i{width:23px;font-size:16px}.sidebar .nav-label{color:#a9c5eb;font-size:10px;font-weight:700;letter-spacing:.8px;padding:18px 20px 8px}.sidebar .nav-label.first{padding-top:14px}.sidebar-bottom{display:none}
.main{margin-left:260px;width:calc(100% - 260px);padding-top:64px}.page-wrap{padding:27px 35px 55px;max-width:none}.page-head{margin-bottom:24px}.smart-head h1{font-size:32px;line-height:1.15;color:#1d2939}.smart-head p{font-size:13px;margin-top:7px}.smart-head .btn{font-size:14px;min-height:40px;padding:0 15px}
.smart-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-bottom:23px}.smart-metrics article{min-height:107px;background:#fff;border-radius:15px;padding:18px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 3px 8px rgba(18,43,76,.13)}.smart-metrics span{display:block;color:#475467;font-size:13px;margin-bottom:10px}.smart-metrics b{font:500 28px Arial;color:#101828}.smart-metrics i{width:59px;height:59px;border-radius:50%;display:grid;place-items:center;color:#fff;font:normal 27px Arial}.smart-metrics i.cash{background:#14905a}.smart-metrics i.product{background:#1474ef}.smart-metrics i.customer{background:#18bdd9}.smart-metrics i.job{background:#ffb400}
.quick-actions{padding:17px;margin-bottom:23px;border:0;box-shadow:none;border-radius:15px}.quick-actions h2{font-size:15px;margin:0 0 13px}.quick-actions>div{display:flex;gap:9px;flex-wrap:wrap}.qa{display:inline-flex;align-items:center;gap:7px;height:39px;border-radius:10px;padding:0 13px;border:1px solid;font-size:14px}.qa.sale{background:#073e91;border-color:#073e91;color:#fff}.qa.product{background:#14905a;border-color:#14905a;color:#fff}.qa.customer{background:#fff;border-color:#1671eb;color:#1671eb}.qa.job{background:#fff;border-color:#8994a3;color:#596579}
.smart-dashboard-grid{display:grid;grid-template-columns:2.05fr 1fr;gap:23px}.smart-dashboard-grid>.card{border:0;border-radius:4px;box-shadow:0 3px 8px rgba(18,43,76,.12);overflow:hidden}.panel-title{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;border-bottom:1px solid #d7dce2}.panel-title h2{font-size:14px;margin:0}.panel-title a{font-size:11px;color:#176bd7}.recent-sales-card table{min-width:680px}.recent-sales-card th{background:#fff;color:#111827;text-transform:none;font-size:11px;padding:12px 10px}.recent-sales-card td{font-size:12px;padding:12px 10px;color:#111827}.recent-sales-card td b{font-size:12px}.recent-sales-card .status{font-size:10px;padding:4px 7px}.low-stock-list a{display:flex;align-items:center;justify-content:space-between;padding:13px 20px;border-bottom:1px solid #edf0f3}.low-stock-list b{font-size:13px;font-weight:500}.low-stock-list small{display:block;font-size:9px;color:#98a2b3;margin-top:3px}.low-stock-list em{min-width:22px;height:22px;border-radius:7px;color:#fff;display:grid;place-items:center;font:bold 11px Arial;font-style:normal}.low-stock-list .level-0{background:#1474ef}.low-stock-list .level-1{background:#dc3545}.low-stock-list .level-2{background:#ffb400}
.btn-primary{background:#073e91;box-shadow:none}.btn-primary:hover{background:#0b4dad;box-shadow:none}.card{border-color:#e1e5ea}
@media(max-width:1100px){.topbar-brand{width:180px}.top-search{width:310px}.top-date{display:none}.smart-metrics{grid-template-columns:1fr 1fr}.smart-dashboard-grid{grid-template-columns:1fr}.sidebar{width:230px}.main{margin-left:230px;width:calc(100% - 230px)}}
@media(max-width:760px){.topbar{padding:0 12px}.topbar-brand{width:auto;margin-right:10px}.topbar-brand b{display:none}.top-search{width:auto;flex:1}.top-actions .top-icon{display:none}.top-user b,.top-user small{display:none}.sidebar{top:64px;width:245px}.main{margin:0;width:100%;padding-top:64px}.page-wrap{padding:20px 14px}.smart-metrics{grid-template-columns:1fr 1fr;gap:10px}.smart-dashboard-grid{grid-template-columns:1fr}.smart-head h1{font-size:25px}}
@media(max-width:450px){.smart-metrics{grid-template-columns:1fr}.smart-metrics article{min-height:92px}}

/* Version 1.3 — unified typography (no 8px interface text) */
html{font-size:16px}body{font-family:"Segoe UI Variable","Segoe UI",Tahoma,Arial,sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-synthesis:none}
h1,h2,h3,b,strong{letter-spacing:-.01em}.page-head h1{font-size:28px;font-weight:700;line-height:1.2}.page-head p{font-size:13px;line-height:1.5}.smart-head h1{font-size:30px}.smart-head p{font-size:14px}
.sidebar .brand b{font-size:22px;font-weight:700}.sidebar .brand small{font-size:13px}.sidebar nav a{font-size:14px;font-weight:500;line-height:1.2}.sidebar .nav-label{font-size:11px;font-weight:700}.sidebar nav i{font-size:17px}
.topbar-brand{font-size:17px}.top-search input,.top-date,.top-user{font-size:13px}.top-user b{font-size:13px}.btn{font-size:13px;font-weight:650}.link-btn{font-size:12px}
.metric>span{font-size:13px}.metric>b{font-size:24px}.metric>small{font-size:11px}.smart-metrics span{font-size:14px}.smart-metrics b{font-size:28px}
.card-head h2,.panel-title h2,.quick-actions h2,.data-toolbar h2{font-size:16px;font-weight:700}.card-head p,.data-toolbar p{font-size:12px}.card-head a,.panel-title a{font-size:12px}
.table-tools>span{font-size:12px}.search-box input{font-size:13px}table th{font-size:12px;font-weight:650;letter-spacing:.02em;padding:13px 16px}table td{font-size:13px;line-height:1.45;padding:14px 16px}table td b{font-size:13px;font-weight:650}table td small{font-size:11px;line-height:1.35}table td code{font-size:11px}.status{font-size:11px;font-weight:650;padding:5px 9px}
.form-grid label,.modal-body>label,.settings-card label,.auth-card label,.cart-customer label{font-size:12px;line-height:1.35}.form-grid input,.form-grid select,.form-grid textarea,.modal-body input,.modal-body select,.settings-card input,.settings-card select,.auth-card input,.cart-customer input,.cart-customer select,.cart-customer textarea{font-size:13px;min-height:42px}.modal-head h2{font-size:20px}.modal-head p{font-size:12px}.settings-card h2{font-size:18px}.settings-card p{font-size:13px;line-height:1.6}
.auth-card h1{font-size:27px}.auth-card>p{font-size:13px}.auth-card>small,.first-run p,.setup-login-link{font-size:11px}.flash{font-size:13px;min-height:48px}
.mini-list b{font-size:13px}.mini-list small{font-size:11px}.mini-list em,.mini-list strong{font-size:11px}.low-stock-list b{font-size:13px}.low-stock-list small{font-size:11px}.qa{font-size:14px}.job-column h2{font-size:14px}.job-card h3{font-size:14px}.job-card p,.job-card>small,.job-card footer,.job-card form select{font-size:12px}.job-no{font-size:11px}.empty{font-size:13px}
@media(max-width:760px){.page-head h1,.smart-head h1{font-size:24px}.sidebar nav a{font-size:14px}table th{font-size:11px}table td{font-size:12px}}

/* Version 1.5 — clean form typography */
.form-grid label,.modal-body>label,.settings-card label,.auth-card label,.cart-customer label{font-weight:500;letter-spacing:0}
.form-grid input,.form-grid select,.form-grid textarea,.modal-body input,.modal-body select,.settings-card input,.settings-card select,.auth-card input,.cart-customer input,.cart-customer select,.cart-customer textarea{font-weight:400;letter-spacing:0;background:#fff;color:#25344a}
.form-grid input::placeholder,.modal-body input::placeholder,.form-grid textarea::placeholder{font-weight:400;color:#98a2b3}
.field-help{display:block;margin-top:6px;color:#7b8798;font-size:11px;font-weight:400;line-height:1.4}
.catalog-dropdown-field .catalog-new-input{margin-top:8px;border-style:dashed;border-color:#8fb4e8;background:#f6f9ff;color:#17375f}.catalog-dropdown-field .catalog-new-input::placeholder{color:#4475b5;opacity:1}

/* Version 1.6 — product images */
.product-cell{display:flex;align-items:center;gap:11px;min-width:190px}.product-cell>img,.product-placeholder{width:44px;height:44px;border-radius:9px;flex:0 0 44px}.product-cell>img{object-fit:cover;border:1px solid #e1e6ed;background:#fff}.product-placeholder{display:grid;place-items:center;background:#edf3fb;color:#3775c4;font-size:18px}.product-cell>span:last-child{min-width:0}
.product-image-field>label{display:block;font-size:13px;font-weight:700;color:#526279}.product-image-field>.field-help{display:block}.image-upload-row{display:grid;grid-template-columns:minmax(0,1fr) 128px;align-items:stretch;gap:12px;margin-top:6px}.image-upload-row>input[type=file]{min-width:0;height:100%;margin:0;padding:10px;background:#f8fafc}.product-image-preview-box{width:128px;height:96px;border:2px dashed #a9bfdd;border-radius:10px;background:#fff;display:grid;place-items:center;overflow:hidden}.product-image-preview{grid-area:1/1;width:100%;height:100%;object-fit:contain;background:#fff}.product-image-placeholder{grid-area:1/1;padding:8px;color:#8090a5;font-size:10px;text-align:center}.image-upload-status{margin-top:8px;color:#718096;font-size:11px;font-weight:400}
@media(max-width:520px){.image-upload-row{grid-template-columns:minmax(0,1fr) 105px}.product-image-preview-box{width:105px;height:88px}}
.service-head-actions{display:flex;gap:9px;flex-wrap:wrap}.modal.service-package-modal{width:min(840px,100%)}.package-material-summary{max-width:420px;color:#337052!important;line-height:1.45}.package-material-panel{padding:15px;border:1px solid #d8e4f1;border-radius:12px;background:#f8fbff}.package-panel-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.package-panel-head b{display:block;font-size:13px;color:#17375f}.package-panel-head small{display:block;margin-top:4px;color:#718096;font-size:10px}.package-add-row{display:grid;grid-template-columns:minmax(220px,1fr) 90px 105px auto;gap:8px;align-items:end}.package-add-row select,.package-add-row input{margin:0!important}.package-material-list{margin-top:12px;border-top:1px solid #dbe5ef}.package-material-row{display:grid;grid-template-columns:minmax(200px,1fr) 86px 62px 82px 30px;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #e2eaf3}.package-material-row span b{display:block;font-size:11px;color:#1f3656}.package-material-row span small{display:block;margin-top:3px;color:#75859b;font-size:9px}.package-material-row input{margin:0!important;min-height:34px!important}.package-material-row em{font-style:normal;text-align:center;color:#53677f;font-size:10px}.package-material-row strong{text-align:right;font-size:11px}.package-material-row button{width:28px;height:28px;border:0;border-radius:7px;background:#fff0f0;color:#c53f3f;cursor:pointer}.package-empty{padding:18px!important}.package-cost-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:13px}.package-cost-summary span{padding:10px;border-radius:9px;background:#fff;color:#6b7b91;font-size:9px}.package-cost-summary b{display:block;margin-top:4px;color:#17375f;font-size:14px}.package-cost-summary .negative{color:#cf3f3f}.service-catalog-card .item-type-pill{margin-left:5px}
@media(max-width:760px){.service-head-actions{width:100%;margin-top:10px}.package-add-row{grid-template-columns:1fr 80px}.package-add-row .package-add-unit,.package-add-row .btn{grid-column:auto}.package-material-row{grid-template-columns:1fr 70px 48px 65px 28px}.package-cost-summary{grid-template-columns:1fr 1fr}}
.shop-logo-preview{width:130px;height:58px;padding:5px;border:1px solid #dbe3ed;border-radius:10px;object-fit:contain;background:#fff}
.pick-product>img{width:42px;height:42px;flex:0 0 42px;border-radius:9px;object-fit:cover;border:1px solid #e1e6ed;background:#fff}

/* Version 1.7 — administrator product editing */
.row-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.edit-link{color:#118454}.form-grid input[readonly]{background:#f3f5f8;color:#78869a;cursor:not-allowed}

/* Version 2.0 — technician pricing and customer credit */
.tech-price{color:#118454;font-weight:600}.customer-credit-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.customer-credit-fields[hidden]{display:none}.credit-history{margin-top:20px}.data-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.data-toolbar h2,.data-toolbar p{margin:0}.data-toolbar p{margin-top:4px;color:var(--muted)}.price-level-note{padding:5px 9px;border-radius:20px;background:#e9f8f1;color:#118454;font-size:11px;font-weight:650}.credit-info{margin:-1px 0 10px;padding:9px 11px;border-radius:8px;background:#fff7e9;color:#9a5c12;font-size:11px}.status.danger{background:#fdecec;color:#ba3030}
@media(max-width:760px){.customer-credit-fields{grid-template-columns:1fr}.row-actions{flex-direction:column;align-items:flex-start;gap:5px}}

/* Version 2.1 — clear credit due dates and invoice status */
.required-mark{color:#cf3030;font-weight:700}.credit-due-required input{border-color:#e7a134;background:#fffdf7}.bill-info{gap:18px;flex-wrap:wrap}.bill-info>div{min-width:135px}.bill-info .status{display:inline-block}.recent-sales-card td small{display:block;margin-top:5px;color:var(--muted)}

/* Version 2.2 — invoice-specific credit payments */
.invoice-payment-info{padding:9px 11px;border-radius:8px;background:#eef5ff;color:#285b9d}.credit-history td:nth-child(4){font-weight:600;color:#285b9d}

/* Version 2.3 — customer receivables and supplier payables */
.document-payment-info,.purchase-credit-help{padding:9px 11px;border-radius:8px;background:#eef5ff;color:#285b9d}.supplier-pay-link{color:#b06000}.supplier-payment-history{margin-top:20px}.supplier-payment-history td:nth-child(4){font-weight:600;color:#b06000}.purchase-due-label.credit-due-required input{border-color:#e7a134;background:#fffdf7}

/* Version 2.4 — explicit purchase totals and payment terms */
.purchase-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:3px 0}.purchase-summary article{padding:14px;border:1px solid #dce5f1;border-radius:10px;background:#f7faff}.purchase-summary span{display:block;color:#65758a;font-size:11px;margin-bottom:5px}.purchase-summary b{display:block;color:#173b6d;font-size:19px;font-weight:600}.purchase-summary article:nth-child(3){border-color:#b9d2f5;background:#eef6ff}.purchase-summary article:last-child{background:#fff7e9;border-color:#f2d7a8}.purchase-summary article:last-child b{color:#a45c00}.purchase-supplier-cost-note.cost-found{color:#14815a;font-weight:700}.account-disabled{opacity:.6}.account-disabled select{background:#f0f2f5}.purchase-due-help,.payment-account-help{min-height:16px}
@media(max-width:760px){.purchase-summary{grid-template-columns:1fr}.purchase-summary article{padding:11px}.purchase-summary b{font-size:17px}}

/* Version 2.5 — readable and consistent application typography */
body{font-size:15px;line-height:1.5}.page-head h1,.smart-head h1{font-size:30px;font-weight:700}.page-head p,.smart-head p{font-size:14px}.btn{font-size:14px;font-weight:600;min-height:42px}.link-btn{font-size:13px}
.card-head h2,.panel-title h2,.quick-actions h2,.data-toolbar h2{font-size:17px}.card-head p,.data-toolbar p{font-size:13px}.search-box input,.top-search input{font-size:14px}
.form-grid label,.modal-body>label,.settings-card label,.auth-card label,.cart-customer label{font-size:13px;line-height:1.4}.form-grid input,.form-grid select,.form-grid textarea,.modal-body input,.modal-body select,.settings-card input,.settings-card select,.auth-card input,.cart-customer input,.cart-customer select,.cart-customer textarea{font-size:14px;min-height:44px}.field-help{font-size:12px}.modal-head h2{font-size:22px}.modal-head p{font-size:13px}
table th{font-size:12px;padding:14px 16px}table td,table td b{font-size:14px}table td small{font-size:12px}.status{font-size:12px}.flash{font-size:14px}
.sale-layout>.card{padding:22px}.product-picker{gap:11px}.pick-product{min-height:68px;padding:12px 13px;gap:11px}.pick-product>img,.pick-product>i{width:48px;height:48px;flex-basis:48px}.pick-product b{font-size:14px;font-weight:600;line-height:1.35}.pick-product small{font-size:11px;line-height:1.4;margin-top:4px}.pick-product strong{font:600 13px "Segoe UI",Arial,sans-serif}.price-level-note{font-size:12px;padding:6px 10px}.cart-list{max-height:320px}.cart-row{gap:10px;padding:13px 0}.cart-row b{font-size:14px;font-weight:600}.cart-row small{font-size:12px;line-height:1.5}.cart-row input{width:58px;padding:5px;font-size:12px}.cart-row strong{font:600 13px "Segoe UI",Arial,sans-serif}.cart-row button{width:28px;height:28px;font-size:16px}.credit-info{font-size:12px;padding:10px 12px}.cart-total span{font-size:14px}.cart-total b{font:600 27px "Segoe UI",Arial,sans-serif}.cart-card .btn-block{font-size:14px;min-height:44px}
@media(max-width:760px){.page-head h1,.smart-head h1{font-size:26px}.sale-layout>.card{padding:17px}.pick-product b,.cart-row b{font-size:13px}}

/* Version 3.0 — service scheduling, teams and Telegram group */
.head-actions{display:flex;gap:10px;align-items:center}.service-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px}.service-summary article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px 18px;box-shadow:0 4px 14px rgba(18,43,76,.06)}.service-summary span{display:block;color:#65758a;font-size:13px}.service-summary b{display:block;font-size:25px;font-weight:600;margin:3px 0}.service-summary small{color:#8491a3;font-size:12px}
.schedule-board{grid-template-columns:repeat(5,minmax(270px,1fr));overflow-x:auto;align-items:start}.schedule-board .job-column{min-height:520px;background:#edf1f6;border:1px solid #e2e7ee}.schedule-board .job-column>header{border-bottom:3px solid #7a8ba3;margin-bottom:11px;padding:7px 5px 12px}.schedule-board .column-scheduled>header{border-color:#2670d8}.schedule-board .column-in-progress>header{border-color:#e79a26}.schedule-board .column-need-follow-up>header{border-color:#8b5fd3}.schedule-board .column-completed>header{border-color:#1b9b68}.schedule-board .column-cancelled>header{border-color:#c34a4a}.schedule-board .job-column h2{font-size:15px}.schedule-board .job-column>header span{font-size:11px}
.service-job{padding:15px;border-radius:12px;box-shadow:0 3px 12px rgba(18,43,76,.06)}.service-job .job-no{font-size:12px;align-items:center}.status.scheduled{background:#eaf2ff;color:#145ebe}.status.need-follow-up{background:#f2ebfd;color:#6840ac}.status.cancelled{background:#fdecec;color:#b73535}.arrival-block{display:grid;grid-template-columns:1fr auto;gap:1px 10px;margin:13px 0;padding:11px 12px;border-radius:9px;background:#eef5ff;border-left:4px solid #2670d8}.arrival-block span{grid-column:1/-1;color:#53729e;font-size:10px;font-weight:700;letter-spacing:.06em}.arrival-block b{font-size:14px;font-weight:600}.arrival-block strong{grid-row:2;font-size:18px;color:#0b54b4}.service-job h3{font-size:16px;margin:12px 0 6px;font-weight:650}.customer-line{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:0 0 12px!important}.customer-line b{font-size:13px;color:#26364c}.customer-line a{font-size:12px;color:#1261c9}.job-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.job-meta p{margin:0!important;padding:8px;border:1px solid #e5eaf0;border-radius:8px}.job-meta span{display:block;font-size:10px;color:#7d8a9e}.job-meta b{display:block;font-size:12px;font-weight:600;margin-top:2px;color:#33445a}.map-link{display:inline-flex;margin-top:10px;color:#1164cf;font-size:12px;font-weight:600}.job-description{padding:10px;margin:11px 0!important;background:#f8fafc;border-radius:8px;color:#53647a!important;white-space:pre-line}.work-preview{margin:11px 0;padding:10px;border-radius:8px;background:#eef9f4;border:1px solid #d4eee2}.work-preview span{font-size:11px;font-weight:650;color:#16835a}.work-preview p{margin:4px 0!important;color:#34495e!important;white-space:pre-line}.work-preview small{font-size:11px;color:#5d7469}.job-money{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:12px 0}.job-money span{padding:7px 4px;text-align:center;background:#f5f7fa;border-radius:7px;color:#77869a;font-size:10px}.job-money b{display:block;margin-top:2px;color:#24364e;font-size:12px}.pending-payment,.confirmed-payment{padding:9px;border-radius:8px;font-size:12px;margin-bottom:10px}.pending-payment{background:#fff5e5;color:#955b10}.pending-payment b{font-size:13px}.pending-payment small{display:block;margin-top:3px}.confirmed-payment{background:#eaf8f2;color:#147c56}.job-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;border-top:1px solid #edf0f4;padding-top:11px}.job-actions form{margin:0}.job-actions .btn{min-height:34px;padding:0 10px;font-size:12px}.job-actions .link-btn{padding:7px}.btn-cancel-job{border:1px solid #e2a1a1;background:#fff;color:#b73535}.btn-cancel-job:hover{background:#fff1f1}.btn-success{background:#18895f;color:#fff}.confirm-payment-form{margin-top:9px}.confirm-payment-form .btn{width:100%;font-size:12px}.created-by{display:block!important;margin-top:10px;color:#8a96a6!important;font-size:10px!important;line-height:1.45}
.check-label{display:flex!important;align-items:center;gap:9px;padding:10px 12px;border:1px solid #e1e6ed;border-radius:8px;background:#f8fafc}.check-label input{width:17px!important;min-height:17px!important;margin:0!important}.team-manager form>label{display:block;font-size:13px;color:#526279}.team-manager input[type=text],.team-manager form>label input{width:100%;min-height:44px;border:1px solid #dbe3ed;border-radius:8px;padding:9px 11px;margin-top:6px}.existing-teams{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:18px}.existing-teams article{padding:11px;border:1px solid #e1e6ed;border-radius:9px}.existing-teams b,.existing-teams span{display:block}.existing-teams b{font-size:13px}.existing-teams span{font-size:11px;color:#748297;margin-top:3px}.team-manager fieldset{border:1px solid #e1e6ed;border-radius:10px;margin:15px 0;padding:10px}.team-manager legend{font-size:12px;color:#526279;padding:0 5px}.member-check{display:flex;align-items:center;gap:9px;padding:8px}.member-check input{width:17px;height:17px}.member-check span{flex:1}.member-check b,.member-check small{display:block}.member-check b{font-size:13px}.member-check small{font-size:11px;color:#7a8799}.settings-wide{max-width:900px}.settings-section-title{border-top:1px solid #e4e8ee;padding-top:19px;margin-top:5px}.settings-section-title:first-of-type{border-top:0;padding-top:0}.settings-section-title h2,.settings-section-title p{margin:0}.settings-section-title p{margin-top:4px}.telegram-test{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:15px;border-radius:10px;background:#f3f7fd;border:1px solid #dce7f5}.telegram-test b{font-size:14px}.telegram-test p{margin:3px 0 0}.telegram-user-form{display:flex;align-items:center;gap:5px;min-width:220px}.telegram-user-form input{width:125px;border:1px solid #dbe3ed;border-radius:7px;padding:7px;font-size:13px}.telegram-user-form span{color:#708096}
@media(max-width:1250px){.service-summary{grid-template-columns:1fr 1fr}.schedule-board{grid-template-columns:repeat(5,300px)}}
@media(max-width:760px){.service-head{gap:15px}.head-actions{flex-wrap:wrap;justify-content:flex-end}.service-summary{grid-template-columns:1fr 1fr;gap:9px}.service-summary article{padding:13px}.service-summary b{font-size:21px}.schedule-board{display:grid;grid-template-columns:1fr;overflow:visible}.schedule-board .job-column{min-height:180px}.telegram-test{align-items:flex-start;flex-direction:column}.existing-teams{grid-template-columns:1fr}}
@media(max-width:440px){.service-summary{grid-template-columns:1fr}.service-head{flex-direction:column}.head-actions{width:100%;justify-content:flex-start}.job-meta{grid-template-columns:1fr}}

/* Version 3.3 — team members without login accounts */
.existing-teams article .link-btn{margin-top:9px;padding:5px 0;text-align:left}.existing-teams article span strong{display:inline;font-size:11px;color:#526279}.guest-access-note{display:flex;flex-direction:column;gap:3px;padding:12px;border-radius:9px;background:#fff7e9;border:1px solid #f0d7ae}.guest-access-note b{font-size:13px;color:#965b11}.guest-access-note span{font-size:12px;color:#715c42}

/* Version 4.0 — PC Builder and printable Quotations */
.pc-builder-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:18px;align-items:start}.pc-catalog,.pc-build-cart{padding:20px}.pc-build-cart{position:sticky;top:88px}.pc-product-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:570px;overflow:auto}.pc-product-card{position:relative;border:1px solid #e0e6ee;border-radius:11px;background:#fff;overflow:hidden}.pc-add-product{width:100%;min-height:82px;border:0;background:#fff;padding:11px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer}.pc-add-product:hover{background:#f7faff}.pc-part-icon{width:43px;height:43px;flex:0 0 43px;border-radius:9px;display:grid;place-items:center;background:#e9f2ff;color:#115dbd;font-size:12px;font-weight:700}.pc-add-product>span:nth-child(2){min-width:0;flex:1}.pc-add-product b,.pc-add-product small,.pc-add-product em{display:block}.pc-add-product b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-add-product small{font-size:11px;color:#7b8899;margin-top:3px}.pc-add-product em{width:max-content;margin-top:5px;padding:2px 6px;border-radius:12px;background:#eef3f8;color:#52647a;font-size:10px;font-style:normal}.pc-add-product strong{font-size:12px;color:#0758c4}.pc-spec-link{position:absolute;right:7px;bottom:5px;border:0;background:transparent;color:#13805a;font-size:10px;font-weight:650;cursor:pointer}.pc-selected{margin:16px 0;max-height:340px;overflow:auto}.pc-selected-head,.pc-selected-row{display:grid;grid-template-columns:minmax(150px,1fr) 53px 82px 75px 25px;gap:7px;align-items:center}.pc-selected-head{padding:7px;color:#7d8a9c;font-size:10px;text-transform:uppercase}.pc-selected-row{padding:10px 0;border-bottom:1px solid #edf0f4}.pc-selected-row b,.pc-selected-row small{display:block}.pc-selected-row b{font-size:12px}.pc-selected-row small{font-size:10px;color:#788699;margin-top:2px}.pc-selected-row input{width:100%;min-height:34px;border:1px solid #dce3ec;border-radius:6px;padding:5px;font-size:11px}.pc-selected-row strong{font-size:11px}.pc-selected-row button{width:24px;height:24px;border:0;border-radius:6px;background:#ffeded;color:#c23b3b;cursor:pointer}.compatibility-result{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:9px;margin-bottom:14px}.compatibility-result b{font-size:13px}.compatibility-result span{font-size:11px;line-height:1.55}.compatibility-result.compatible{background:#eaf8f2;color:#147b55}.compatibility-result.warning{background:#fff7e8;color:#8d5a18}.compatibility-result.incompatible{background:#fdecec;color:#aa3030}.pc-customer-fields{border-top:1px solid #e6eaf0;padding-top:14px}.pc-build-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.pc-build-totals span{padding:11px;border-radius:9px;background:#f2f6fb;color:#637389;font-size:11px}.pc-build-totals b{display:block;margin-top:4px;font-size:18px;color:#173b6d}.pc-build-totals span:last-child{background:#eaf8f2}.pc-build-totals span:last-child b{color:#147b55}.pc-build-history{margin-top:20px}.compatibility-table-note{max-width:320px;white-space:pre-line}.pc-spec-help{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:9px;background:#eef5ff;color:#345e91}.pc-spec-help b{font-size:13px}.pc-spec-help span{font-size:11px;line-height:1.5}.quotation-document .bill-info small{display:block;margin-top:4px;color:#738196}.quote-compatibility{display:flex;flex-direction:column;gap:4px;margin-top:15px;padding:10px;border-radius:8px;background:#eef8f3;max-width:460px}.quote-compatibility b{font-size:12px;color:#147b55}.quote-compatibility span{white-space:pre-line;font-size:10px;color:#52675e}
@media(max-width:1180px){.pc-builder-layout{grid-template-columns:1fr}.pc-build-cart{position:static}.pc-product-list{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.pc-product-list{grid-template-columns:1fr}.pc-catalog,.pc-build-cart{padding:15px}.pc-selected-head{display:none}.pc-selected-row{grid-template-columns:1fr 52px 75px 25px}.pc-selected-row>strong{grid-column:2/4;text-align:right}.pc-build-totals{grid-template-columns:1fr}.quotation-document{padding:20px}}

/* Version 4.1 — Product Groups and automatic Quotations */
.product-group-guide{display:flex;align-items:center;gap:9px;margin:-7px 0 17px;padding:12px 15px;border:1px solid #dfe6ef;border-radius:12px;background:#fff}.product-group-guide small{margin-left:4px;color:#68788e;font-size:13px}.product-group{display:inline-flex;width:max-content;padding:4px 9px;border-radius:20px;font-size:12px;font-weight:600}.group-computer{background:#e8f1ff;color:#155eb6}.group-cctv{background:#e8f8f1;color:#147a56}.group-network{background:#f0eafe;color:#6843a8}.group-other{background:#eef1f5;color:#5e6b7d}
.quote-builder-layout{display:grid;grid-template-columns:1.06fr .94fr;gap:18px;align-items:start}.quote-catalog,.quote-cart{padding:21px}.quote-cart{position:sticky;top:88px}.quote-filters{display:flex;gap:8px;margin-bottom:12px}.quote-filters button{border:1px solid #dce4ee;background:#fff;color:#5e6e83;border-radius:20px;padding:7px 13px;font-size:13px;cursor:pointer}.quote-filters button.active{border-color:#1261cf;background:#eaf2ff;color:#0c58bd;font-weight:600}.quote-product-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:520px;overflow:auto;margin-top:12px}.quote-product{min-height:82px;border:1px solid #dfe6ee;border-radius:11px;background:#fff;padding:12px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;cursor:pointer}.quote-product[hidden]{display:none!important}.quote-product:hover{border-color:#9bbcea;background:#f8fbff}.quote-product span:nth-child(2){min-width:0}.quote-product b,.quote-product small{display:block}.quote-product b{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quote-product small{margin-top:4px;color:#75849a;font-size:12px}.quote-product strong{color:#0758c4;font-size:14px}.quote-selected{margin:10px 0 16px;max-height:315px;overflow:auto}.quote-selected-head,.quote-selected-row{display:grid;grid-template-columns:minmax(150px,1fr) 58px 88px 76px 27px;gap:8px;align-items:center}.quote-selected-head{padding:7px;color:#78869a;font-size:11px;text-transform:uppercase}.quote-selected-row{padding:11px 0;border-bottom:1px solid #e9edf2}.quote-selected-row b,.quote-selected-row small{display:block}.quote-selected-row b{font-size:14px;font-weight:600}.quote-selected-row small{font-size:12px;color:#7a899c;margin-top:2px}.quote-selected-row input{width:100%;min-height:38px;border:1px solid #dce4ed;border-radius:7px;padding:6px;font-size:13px}.quote-selected-row strong{font-size:13px}.quote-selected-row button{width:27px;height:27px;border:0;border-radius:7px;background:#ffeded;color:#bf3939;cursor:pointer}.quote-customer-fields{padding-top:14px;border-top:1px solid #e5eaf0}.quote-grand-total{display:flex;align-items:center;justify-content:space-between;margin-top:15px;padding:14px 0;border-top:1px solid #e2e7ed}.quote-grand-total span{font-size:15px;font-weight:600}.quote-grand-total b{font-size:27px;color:#0b5dcc}.quote-stock-note{display:block;margin-top:10px;text-align:center;color:#748398;font-size:12px}.quote-history{margin-top:20px}
@media(max-width:1180px){.quote-builder-layout{grid-template-columns:1fr}.quote-cart{position:static}}
@media(max-width:760px){.product-group-guide{align-items:flex-start;flex-wrap:wrap}.product-group-guide small{width:100%;margin:3px 0 0}.quote-product-list{grid-template-columns:1fr}.quote-catalog,.quote-cart{padding:15px}.quote-selected-head{display:none}.quote-selected-row{grid-template-columns:1fr 55px 78px 27px}.quote-selected-row strong{grid-column:2/4;text-align:right}}

/* Version 7.22 — Quotation save, preview, edit, discount and profit summary */
.quote-profit-summary{margin:16px 0 14px;border-top:1px solid #dce4ed}.quote-profit-summary>div{display:flex;align-items:center;justify-content:space-between;padding:8px 2px;border-bottom:1px solid #edf1f5}.quote-profit-summary span{color:#53647a;font-size:13px}.quote-profit-summary b{color:#17243a;font-size:15px}.quote-profit-summary .quote-sale-total{padding-top:11px}.quote-profit-summary .quote-sale-total span,.quote-profit-summary .quote-profit-total span{font-size:15px;font-weight:700;color:#17243a}.quote-profit-summary .quote-sale-total b{font-size:23px;color:#0b5dcc}.quote-profit-summary .quote-profit-total b{font-size:20px;color:#0b8a5b}.quote-profit-summary .quote-profit-total b.negative{color:#c23434}.quote-edit-link{color:#0b5dcc!important;font-weight:700}
.quote-preview-financials{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;max-width:820px;margin:0 auto 16px}.quote-preview-financials>div{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border:1px solid #dfe6ef;border-radius:10px;background:#fff}.quote-preview-financials span{color:#66768a;font-size:13px}.quote-preview-financials b{font-size:18px;color:#14233a}.quote-preview-financials>div:last-child b{color:#0b8a5b}.quote-preview-financials b.negative{color:#c23434!important}@media(max-width:760px){.quote-preview-financials{grid-template-columns:1fr}}

/* Version 4.2 — Brand-first product catalog */
.brand-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-7px 0 17px;padding:12px 15px;border:1px solid #dfe6ef;border-radius:12px;background:#fff}.brand-strip b{margin-right:4px;font-size:13px;color:#40526a}.brand-strip a,.brand-badge{display:inline-flex;width:max-content;padding:5px 10px;border-radius:20px;background:#eaf2ff;color:#155eb6;font-size:12px;font-weight:600}.brand-strip a:hover{background:#dceaff}.brand-badge{background:#edf3fc;color:#355f91}.quote-filters{flex-wrap:wrap;max-height:94px;overflow:auto;padding-bottom:2px}.quote-product .brand-badge{max-width:95px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand-strip a.active{background:#155fbd;color:#fff}.brand-more{position:relative}.brand-more summary{cursor:pointer;list-style:none;padding:5px 10px;border-radius:20px;background:#f0f3f7;color:#596a80;font-size:12px;font-weight:600}.brand-more summary::-webkit-details-marker{display:none}.brand-more>div{position:absolute;z-index:25;top:34px;right:0;width:260px;max-height:260px;overflow:auto;display:flex;flex-wrap:wrap;gap:7px;padding:12px;border:1px solid #dce4ee;border-radius:12px;background:#fff;box-shadow:0 14px 35px #10243f26}.modal.modal-wide{width:min(1040px,100%)}.catalog-manager-note{display:flex;gap:10px;padding:12px 14px;margin-bottom:16px;border:1px solid #cfe1f8;border-radius:10px;background:#f4f8fe;color:#45617f;font-size:12px}.catalog-manager-note b{white-space:nowrap;color:#155fbd}.catalog-manager-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.catalog-manager-grid>section{min-width:0;border:1px solid #dfe6ef;border-radius:12px;padding:14px}.catalog-manager-grid h3{display:flex;justify-content:space-between;margin:0 0 12px;font-size:15px}.catalog-manager-grid h3 span{padding:2px 7px;border-radius:20px;background:#edf3fb;color:#55708f;font-size:11px}.catalog-add-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}.catalog-add-form input,.catalog-manager-row input{min-width:0;height:38px;border:1px solid #d9e2ed;border-radius:8px;padding:7px 9px}.catalog-manager-list{max-height:430px;overflow:auto}.catalog-manager-row{display:grid;grid-template-columns:minmax(0,1fr) 72px auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #edf1f5}.catalog-manager-row>form:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.catalog-manager-row form button{height:34px;border:0;border-radius:7px;padding:0 9px;background:#e9f1fd;color:#155eb6;font-size:11px;font-weight:700;cursor:pointer}.catalog-manager-row small{text-align:center;color:#718096;font-size:10px}.catalog-manager-row .catalog-delete{background:#fff0f0;color:#c94747}.catalog-manager-row .catalog-delete:disabled{cursor:not-allowed;opacity:.4}
@media(max-width:760px){.brand-strip{align-items:flex-start}.brand-more>div{left:0;right:auto;width:min(280px,80vw)}.catalog-manager-grid{grid-template-columns:1fr}.catalog-manager-note{display:block}.catalog-manager-note b{display:block;margin-bottom:5px}.quote-product .brand-badge{max-width:78px}}

/* Version 4.3 — professional quotation based on the YST reference document */
.quote-paper{max-width:1050px;margin:0 auto;background:#fff;border:1px solid #dfe4ea;box-shadow:0 8px 28px rgba(20,40,70,.09);padding:34px 38px 30px;color:#171717;font-family:Arial,"Noto Sans Khmer",sans-serif}.quote-letterhead{display:flex;align-items:center;justify-content:space-between;min-height:92px}.quote-logo{width:190px;height:78px;border:2px solid #0a64ae;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#fff,#eff8ff)}.quote-logo i{font:800 italic 35px Arial;color:#075b9f;letter-spacing:-3px}.quote-logo small{font-size:7px;letter-spacing:1px;color:#277045}.quote-company-name{text-align:center;color:#0570ba}.quote-company-name strong{display:block;font:700 27px "Noto Sans Khmer","Khmer OS Battambang",Arial,sans-serif}.quote-company-name span{display:block;margin-top:5px;font:700 22px Georgia,serif}.quote-orange-rule{height:3px;background:#ef6c00;margin:5px 0 23px}.quote-company-details{display:flex;justify-content:space-between;gap:25px}.quote-company-details p{margin:3px 0;font-size:13px}.quote-company-details>div:last-child{text-align:right}.quote-heading{display:flex;align-items:center;gap:24px;margin:18px 24px 10px}.quote-heading span{height:5px;flex:1;border-top:2px solid #1f72bc;border-bottom:1px solid #1f72bc}.quote-heading h1{margin:0;color:#0672bd;font:700 27px Georgia,serif}.quote-customer-block{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:center;margin:4px 24px 11px}.quote-customer-label{display:block;margin-bottom:4px;font:700 16px Georgia,serif}.quote-customer-block p{display:grid;grid-template-columns:72px 1fr;margin:3px 0;font-size:14px}.quote-customer-block p span{font-weight:600}.quote-customer-block p strong{border-bottom:1px solid #333;text-align:center;font-weight:500;padding:0 5px}.quote-brand-watermark{text-align:center;color:#d52128;font:italic 800 31px Arial;letter-spacing:-1px;overflow-wrap:anywhere}.quote-items-table{width:100%;min-width:0;border-collapse:collapse;table-layout:fixed}.quote-items-table th,.quote-items-table td{border:1px solid #222;padding:7px 6px;color:#222;background:#fff;text-transform:none;letter-spacing:0}.quote-items-table th{background:#eeece2;text-align:center;font:700 14px Georgia,serif}.quote-code-col{width:14%}.quote-desc-col{width:42%}.quote-image-col{width:15%}.quote-qty-col{width:9%}.quote-price-col{width:10%}.quote-amount-col{width:10%}.quote-section-row td{text-align:center;background:#eeece2;font:700 14px Georgia,serif;padding:5px;color:#111}.quote-product-row{break-inside:avoid}.quote-product-row td{font-size:12px;vertical-align:middle}.quote-code{text-align:center;font-weight:700;overflow-wrap:anywhere}.quote-description b{display:block;font-size:13px;line-height:1.35}.quote-description em{display:block;margin:2px 0 4px;color:#666;font-size:10px;font-style:normal}.quote-description ul{margin:4px 0 0;padding-left:16px}.quote-description li{margin:2px 0;line-height:1.35}.quote-product-image{text-align:center}.quote-product-image img{display:block;width:96px;height:78px;margin:auto;object-fit:contain}.quote-product-image span{display:inline-grid;place-items:center;width:72px;height:52px;border:1px solid #d4dce6;border-radius:6px;color:#7191b3;font-weight:700}.quote-number,.quote-money{text-align:center;white-space:nowrap}.quote-summary-wrap{display:grid;grid-template-columns:1fr 275px}.quote-summary{background:#f1efe5}.quote-summary p{display:grid;grid-template-columns:1fr 120px;margin:0;min-height:29px;align-items:center;border-bottom:1px solid #222;color:#0672bd;font:700 13px Georgia,serif}.quote-summary span{text-align:right;padding:5px 10px}.quote-summary b{border-left:1px solid #222;padding:5px 9px;text-align:right;font:700 13px Arial;color:#0672bd}.quote-summary .grand{font-size:15px}.quote-remark{margin-top:10px;padding:7px 9px;border-left:3px solid #f17a18;background:#fff9f3;font-size:11px;white-space:pre-line}.quote-signatures{display:grid;grid-template-columns:1fr 355px;gap:80px;align-items:start;margin:14px 65px 18px}.quote-signatures>div:first-child{text-align:center;font:700 14px Georgia,serif;text-decoration:underline}.quote-signatures>div:first-child span{display:block;height:82px;border-bottom:1px solid #1f72bc}.quoted-by{min-height:116px;border:1px solid #6f99c8;border-radius:28px;text-align:center;padding:15px 12px 9px}.quoted-by b{font:700 15px Georgia,serif}.quoted-by p{margin:10px 0;font-size:13px}.quoted-by small{display:block;margin-top:23px;color:#7b8795;font-size:9px}.quote-terms{border-top:1px solid #8ca9c9;margin-top:15px;padding-top:11px;break-inside:avoid}.quote-terms h2{font:700 14px Georgia,serif;text-decoration:underline;margin:4px 0}.quote-terms p{font:12px Georgia,serif;margin:3px 0;line-height:1.35}.quote-terms>div+div{margin-top:7px}
@media(max-width:760px){.quote-paper{padding:20px 16px;overflow:auto}.quote-letterhead{gap:15px}.quote-logo{width:135px;height:65px}.quote-company-name strong{font-size:20px}.quote-company-name span{font-size:17px}.quote-company-details{flex-direction:column;gap:6px}.quote-company-details>div:last-child{text-align:left}.quote-customer-block{grid-template-columns:1fr;margin:4px 0 11px}.quote-brand-watermark{font-size:24px}.quote-items-table{min-width:760px}.quote-signatures{grid-template-columns:1fr;gap:22px;margin:15px 20px}.quote-summary-wrap{grid-template-columns:1fr 275px}}
@media print{@page{size:Letter;margin:7mm}html,body{background:#fff!important}.quote-paper{width:100%;max-width:none;margin:0;border:0;box-shadow:none;padding:0;font-family:Arial,"Noto Sans Khmer",sans-serif}.quote-letterhead{min-height:62px}.quote-logo{width:135px;height:60px}.quote-logo i{font-size:29px}.quote-company-name strong{font-size:22px}.quote-company-name span{font-size:17px}.quote-orange-rule{margin:3px 0 12px}.quote-company-details p{font-size:10px;margin:1px 0}.quote-heading{margin:9px 20px 5px}.quote-heading h1{font-size:20px}.quote-customer-block{grid-template-columns:1fr 250px;margin:3px 18px 6px}.quote-customer-label{font-size:12px}.quote-customer-block p{font-size:10px;margin:1px 0}.quote-brand-watermark{font-size:24px}.quote-items-table th{font-size:10px;padding:4px}.quote-items-table td{padding:4px}.quote-section-row td{font-size:10px;padding:3px}.quote-product-row td{font-size:9px}.quote-description b{font-size:10px}.quote-description em{font-size:8px}.quote-description li{font-size:8px;margin:1px 0}.quote-product-image img{width:68px;height:55px}.quote-product-image span{width:52px;height:38px;font-size:9px}.quote-summary-wrap{grid-template-columns:1fr 220px}.quote-summary p,.quote-summary b{font-size:9px;min-height:22px}.quote-summary .grand{font-size:11px}.quote-signatures{grid-template-columns:1fr 280px;gap:55px;margin:9px 45px 8px}.quote-signatures>div:first-child{font-size:10px}.quote-signatures>div:first-child span{height:54px}.quoted-by{min-height:80px;padding:9px;border-radius:20px}.quoted-by b{font-size:10px}.quoted-by p{font-size:9px;margin:5px}.quoted-by small{font-size:7px;margin-top:12px}.quote-remark{font-size:8px;margin-top:5px}.quote-compatibility{font-size:8px;margin:6px 0}.quote-terms{margin-top:7px;padding-top:5px}.quote-terms h2{font-size:10px;margin:2px 0}.quote-terms p{font-size:8px;margin:1px 0}.quote-product-row,.quote-summary-wrap,.quote-signatures,.quote-terms{break-inside:avoid}.quote-items-table thead{display:table-header-group}}

/* Version 4.5 — quotation delete controls */
.quote-history-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}.quote-history-actions form{margin:0}.quote-delete-link{border:0;background:transparent;color:#b42323;font:600 12px Arial;cursor:pointer;padding:0}.quote-delete-link:hover{text-decoration:underline}
.quote-status-link{border:0;background:transparent;padding:0;font:700 12px Arial;cursor:pointer}.quote-status-link:hover{text-decoration:underline}.quote-status-link.won{color:#14815a}.quote-status-link.lost{color:#ba3030}.quote-status-link.draft{color:#596a80}
.contact-search-card{margin-bottom:14px;padding:16px}.contact-search-form{display:flex;align-items:center;gap:10px}.contact-search-form .search-box{flex:1;max-width:560px}.contact-search-count{margin-left:auto;color:#68778b;font-size:12px;white-space:nowrap}@media(max-width:760px){.contact-search-form{flex-wrap:wrap}.contact-search-form .search-box{flex-basis:100%;max-width:none}.contact-search-count{margin-left:0}}

/* Version 6.0 — safe product deletion */
.row-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.product-delete-form{display:inline;margin:0}.product-delete-link{border:0;background:transparent;color:#b42323;font-size:13px;font-weight:650;cursor:pointer;padding:0}.product-delete-link:hover{text-decoration:underline;color:#8f1d1d}

/* Version 6.1 — bulk product selection and password visibility */
.bulk-product-bar{display:flex;align-items:center;gap:12px;padding:10px 20px;border-bottom:1px solid var(--line);background:#fbfcfe}.bulk-product-bar label{display:flex;align-items:center;gap:7px;color:#47586e;font-size:12px;font-weight:650;cursor:pointer}.bulk-product-bar>span{color:var(--muted);font-size:12px}.bulk-product-bar .btn{margin-left:auto;min-height:34px}.btn-danger{background:#bd2f2f;color:#fff}.btn-danger:hover{background:#9e2424}.btn-danger:disabled{opacity:.42;cursor:not-allowed}.product-select-column{width:42px!important;padding-left:14px!important;padding-right:8px!important;text-align:center}.product-select-column input,.bulk-product-bar input{width:16px;height:16px;accent-color:#155fc8;cursor:pointer}.password-input-wrap{position:relative;margin-top:6px}.password-input-wrap input{margin-top:0!important;padding-right:52px!important}.password-input-wrap button{position:absolute;right:7px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:36px;min-width:36px;height:32px;padding:0;border:0;border-radius:7px;background:transparent;color:#55708f;cursor:pointer}.password-input-wrap button:hover,.password-input-wrap button:focus-visible{background:#eaf2ff;color:#145ebe}.password-eye{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-eye[hidden]{display:none}.auth-logo.login-brand-logo{display:flex;align-items:center;justify-content:center;width:82px;height:64px;margin:0 auto 10px;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.auth-logo.login-brand-logo img{display:block;width:100%;height:100%;object-fit:contain}

/* Version 6.2 — full business reports */
.report-presets{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-5px 0 12px}.report-presets a{padding:7px 13px;border:1px solid #dbe3ee;border-radius:20px;background:#fff;color:#50627a;font-size:12px;font-weight:650}.report-presets a:hover{border-color:#9bbce7;color:#0b5ec3}.report-presets a.active{border-color:#1764c4;background:#1764c4;color:#fff;box-shadow:0 3px 8px #1764c42b}
.finance-filter-card{margin-bottom:18px;padding:16px 18px;border:1px solid var(--line);border-radius:13px;background:var(--card);box-shadow:0 5px 15px #263c5b0a}.finance-filter-card .report-presets{margin:0 0 14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.finance-filter{display:grid;grid-template-columns:minmax(160px,190px) minmax(145px,180px) minmax(145px,180px) minmax(210px,1fr) auto auto;gap:10px;align-items:end}.finance-filter label{color:var(--muted);font-size:12px;font-weight:650}.finance-filter label>span{display:block;margin-bottom:6px}.finance-filter input,.finance-filter select{width:100%;height:40px;padding:7px 11px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;outline:0}.finance-filter input:focus,.finance-filter select:focus{border-color:#5c93dc;box-shadow:0 0 0 3px #1766d21a}.finance-filter .btn{height:40px;padding:0 15px}
@media(max-width:1100px){.finance-filter{grid-template-columns:1fr 1fr 1fr}.finance-filter label:nth-child(4){grid-column:1/-1}}@media(max-width:560px){.finance-filter{grid-template-columns:1fr}.finance-filter label:nth-child(4){grid-column:auto}.finance-filter .btn{width:100%}}
.report-print-title{display:none}.report-filter{display:grid;grid-template-columns:190px 190px auto auto 1fr auto auto;gap:10px;align-items:end;margin-bottom:18px;padding:15px 18px;border:1px solid var(--line);border-radius:13px;background:#fff}.report-filter label{color:#53637a;font-size:12px;font-weight:650}.report-filter input{display:block;width:100%;height:39px;margin-top:5px;padding:7px 10px;border:1px solid #d6dfeb;border-radius:8px;background:#fff;color:var(--ink)}.report-summary{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:13px;margin-bottom:18px}.report-summary article{min-height:112px;padding:17px 18px;border:1px solid var(--line);border-top:3px solid #1764c4;border-radius:12px;background:#fff;box-shadow:0 5px 15px #263c5b0a}.report-summary article.positive{border-top-color:#189563}.report-summary article.negative{border-top-color:#d45845}.report-summary article.highlight{border-top-color:#e18a24;background:#fffcf7}.report-summary small,.report-summary b,.report-summary em{display:block}.report-summary small{color:#5b6b80;font-size:12px;font-weight:650}.report-summary b{margin:8px 0 5px;color:#112746;font-size:23px}.report-summary em{color:#8591a2;font-size:10px;font-style:normal}.report-section{margin-bottom:18px;border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.report-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 17px;border-bottom:1px solid var(--line)}.report-section-head h2{margin:0;color:#152942;font-size:16px}.report-section-head p{margin:3px 0 0;color:#7a8798;font-size:11px}.report-section-head>b{color:#0b5dc0;font-size:16px}.report-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.report-table{width:100%;min-width:650px;border-collapse:collapse}.report-table th{padding:9px 11px;background:#f6f8fb;color:#64738a;font-size:10px;letter-spacing:.2px;text-align:left;text-transform:uppercase}.report-table td{padding:10px 11px;border-top:1px solid #edf0f4;color:#33445b;font-size:11px;vertical-align:middle}.report-table td>b,.report-table td>small{display:block}.report-table td>small{margin-top:3px;color:#8491a2;font-size:9px}.report-profit{color:#078452!important;font-weight:700}.report-loss{color:#c03d31!important;font-weight:700}.report-empty{height:58px;color:#8995a5!important;text-align:center}.btn-success{background:#128656;color:#fff}.btn-success:hover{background:#0d7047}
@media(max-width:1200px){.report-filter{grid-template-columns:1fr 1fr auto auto}.report-filter>span{display:none}.report-summary{grid-template-columns:repeat(2,1fr)}.report-columns{grid-template-columns:1fr}}
@media(max-width:650px){.report-filter{grid-template-columns:1fr 1fr}.report-filter .btn{width:100%}.report-summary{grid-template-columns:1fr}.report-summary article{min-height:96px}}
@media print{@page{size:A4 landscape;margin:10mm}.report-page-head{display:flex!important;margin:0 0 8mm!important}.report-page-head p{display:none}.report-page-head h1{font-size:20px}.report-print-title{display:block;color:#65758a;font-size:11px}.report-summary{grid-template-columns:repeat(4,1fr);gap:4mm;margin-bottom:5mm}.report-summary article{min-height:0;padding:4mm;border-radius:2mm;box-shadow:none}.report-summary b{font-size:15px}.report-summary em{font-size:8px}.report-section{break-inside:auto;margin-bottom:5mm;border-radius:0}.report-section-head{padding:3mm 4mm}.report-section-head h2{font-size:13px}.report-section-head p{font-size:8px}.report-section-head>b{font-size:12px}.report-columns{display:block}.report-table{min-width:0}.report-table thead{display:table-header-group}.report-table tr{break-inside:avoid}.report-table th{padding:2mm;font-size:7px}.report-table td{padding:2mm;font-size:8px}.report-table td>small{font-size:6px}.report-section:nth-of-type(n+3){break-before:page}}

/* Version 7.5 — AI-assisted product catalog descriptions */
.ai-description-field{padding:12px;border:1px solid #dbe5f1;border-radius:10px;background:#f8fbff}.ai-description-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.ai-description-head label{margin:0;color:#526279;font-size:12px;font-weight:700}.ai-generate-button{min-height:34px;padding:0 12px;border:1px solid #a9c8f3;border-radius:8px;background:#eaf3ff;color:#0b59b8;font-size:11px;font-weight:700;cursor:pointer}.ai-generate-button:hover{background:#dcecff}.ai-generate-button:disabled{cursor:wait;opacity:.65}.ai-description-field textarea{margin-top:0!important;background:#fff!important}.ai-description-status{min-height:16px;margin-top:8px;font-size:10px}.ai-description-status.loading{color:#46698e}.ai-description-status.success{color:#087a4d}.ai-description-status.error{color:#bd3434}.ai-description-sources{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px;color:#6d7e93;font-size:9px}.ai-description-sources a{max-width:180px;overflow:hidden;color:#0b60bf;text-decoration:underline;text-overflow:ellipsis;white-space:nowrap}

/* Version 7.6 — preserve modal forms after validation errors */
.modal-form-error{display:flex;flex-direction:column;gap:3px;margin:0 0 12px;padding:11px 13px;border:1px solid #efb4b4;border-left:4px solid #bd3434;border-radius:8px;background:#fff4f4;color:#8f2929;font-size:11px;line-height:1.4}.modal-form-error b{font-size:12px}.modal-field-error{border-color:#d84a4a!important;background:#fffafa!important;box-shadow:0 0 0 2px #d84a4a18!important}
.modal-note{padding:10px 12px;border-radius:8px;background:#f2f6fb;color:#5d6d82;font-size:12px;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:9px}
.flash.warning{background:#7a4b0f;color:#fff}
.product-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}@media(max-width:760px){.product-price-grid{grid-template-columns:1fr}}
.sale-catalog-toolbar{display:flex;align-items:center;gap:12px;margin:16px 0 0}.sale-catalog-toolbar .catalog-switch{flex:0 0 auto;margin:0}.sale-brand-filter{min-width:190px;display:flex;align-items:center;gap:8px;margin-left:auto;color:#718096;font-size:11px;font-weight:700}.sale-brand-filter[hidden]{display:none}.sale-brand-filter select{width:170px;height:38px;padding:0 34px 0 11px;border:1px solid #dce4ee;border-radius:7px;background-color:#fff;color:#24354c;font-size:12px;font-weight:600;cursor:pointer}.sale-brand-filter select:hover,.sale-brand-filter select:focus{border-color:#1766cf}.theme-dark .sale-brand-filter select{border-color:#33445a;background-color:#172437;color:#dce6f2}@media(max-width:900px){.sale-catalog-toolbar{align-items:stretch;flex-wrap:wrap}.sale-brand-filter{margin-left:0}}@media(max-width:620px){.sale-catalog-toolbar{flex-direction:column}.sale-catalog-toolbar .catalog-switch{display:grid;grid-template-columns:1fr 1fr}.sale-catalog-toolbar .catalog-switch button{padding:0 8px}.sale-brand-filter{width:100%}.sale-brand-filter select{flex:1;width:auto}}
.quote-filter-toolbar{display:flex;align-items:flex-end;gap:14px;margin:14px 0 2px}.quote-brand-filter{margin-left:0}.quote-brand-filter select{width:240px}.quote-catalog-switch{margin:0}.quote-catalog-switch button{min-height:38px}.quote-product-out-of-stock{border-color:#f0d5d8}.quote-stock-status{font-style:normal;font-weight:700}.quote-stock-status.out-of-stock{color:#c62828}.theme-dark .quote-product-out-of-stock{border-color:#6d3b42}.theme-dark .quote-stock-status.out-of-stock{color:#ff8f98}@media(max-width:620px){.quote-filter-toolbar{align-items:stretch;flex-direction:column}.quote-brand-filter{width:100%;align-items:flex-start;flex-direction:column}.quote-brand-filter select{width:100%}.quote-catalog-switch{display:grid;grid-template-columns:1fr 1fr}.quote-catalog-switch button{padding:0 8px}}
.delivery-product-menu{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:9px;background:#f8fafc}.delivery-product-menu .btn{margin-bottom:0}.delivery-selected-products{border:1px solid var(--line);border-radius:9px;overflow:hidden}.delivery-selected-products .empty{padding:17px!important}.delivery-selected-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line)}.delivery-selected-row:last-child{border-bottom:0}.delivery-selected-row span{min-width:0;flex:1}.delivery-selected-row b,.delivery-selected-row small{display:block}.delivery-selected-row b{font-size:12px}.delivery-selected-row small{margin-top:2px;color:var(--muted);font-size:10px}.delivery-selected-row strong{font-size:12px}.delivery-selected-row button{width:28px;height:28px;border:0;border-radius:6px;background:#fff0f0;color:#c83f3f;font-size:18px;cursor:pointer}@media(max-width:620px){.delivery-product-menu{grid-template-columns:1fr}.delivery-product-menu .btn{width:100%}}
.flash{position:relative;overflow:hidden;transition:opacity .22s ease,transform .22s ease}.flash>span{padding-right:12px}.flash button{cursor:pointer}.flash::after{content:"";position:absolute;right:0;bottom:0;left:0;height:3px;background:rgba(255,255,255,.48);transform-origin:left;animation:flash-countdown var(--flash-duration,4s) linear forwards}.flash:hover::after,.flash:focus-within::after{animation-play-state:paused}.flash.flash-hiding{opacity:0;transform:translateY(-8px);pointer-events:none}@keyframes flash-countdown{from{transform:scaleX(1)}to{transform:scaleX(0)}}

/* Version 7.7 — PC Part Type is available only for Computer products */
.pc-part-type-field select:disabled{cursor:not-allowed;border-color:#dce2ea;background:#edf1f6!important;color:#8995a5;opacity:1}.pc-part-type-field.field-disabled{color:#8793a3}.pc-part-type-field.field-disabled .field-help{color:#9aa5b3}

/* Version 8.0 — Option C: Premium Compact application shell and dashboard */
:root{--navy:#081a33;--navy2:#0d2749;--blue:#1261cf;--blue2:#0d52b7;--green:#0b8a5b;--orange:#d97706;--ink:#17243a;--muted:#69788d;--line:#dde4ed;--bg:#f4f6f9;--danger:#c43c3c}
html,body{background:var(--bg);color:var(--ink);font-family:"Noto Sans Khmer","Segoe UI Variable","Segoe UI",Arial,sans-serif}
.ui-icon{display:block;flex:none}
.card,.metric{border:1px solid var(--line);border-radius:9px;box-shadow:0 2px 7px rgba(18,36,61,.035)}
.btn{min-height:38px;border-radius:7px;gap:7px}.btn-primary{background:var(--blue);box-shadow:none}.btn-primary:hover{background:var(--blue2);box-shadow:none;transform:none}

/* Compact light navigation */
.sidebar{inset:0 auto 0 0;width:224px;height:100vh;padding:0;background:#fff;color:var(--ink);border-right:1px solid var(--line);box-shadow:none;overflow:hidden;z-index:90}
.sidebar .brand{height:66px;flex:0 0 66px;gap:10px;padding:0 16px;border-bottom:1px solid var(--line)}
.sidebar .brand>span.sidebar-brand-mark{width:34px;height:34px;display:grid;place-items:center;overflow:hidden;border-radius:7px;background:var(--navy);color:#fff;box-shadow:none;font:750 16px Arial}
.sidebar-brand-mark img{width:100%;height:100%;padding:2px;object-fit:contain;background:#fff}
.sidebar .brand b{color:#0b2a50;font-size:15px;font-weight:750;letter-spacing:.1px}.sidebar .brand small{margin-top:1px;color:#8995a6;font-size:9px;letter-spacing:.2px}
.sidebar nav{flex:1;gap:1px;margin:0;padding:9px 9px 16px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cdd6e1 transparent}
.sidebar nav a{min-height:37px;gap:10px;padding:0 10px;border-radius:6px;color:#53647a;font-size:11px;font-weight:550}
.sidebar nav a:hover{background:#f3f6fa;color:#173c69}.sidebar nav a.active{padding-left:10px;border-left:0;background:#eaf2ff;color:#0f5ec9;box-shadow:none;font-weight:700}
.sidebar nav i{width:20px;display:grid;place-items:center;color:#758398;font-size:0}.sidebar nav a.active i{color:#0f5ec9}
.sidebar .nav-label{padding:12px 10px 4px;color:#98a3b3;font-size:8px;font-weight:750;letter-spacing:.9px}.sidebar .nav-label.first{padding-top:4px}
.sidebar-bottom{display:block;flex:0 0 auto;margin:0;padding:9px;border-top:1px solid var(--line)}
.sidebar-help{min-height:36px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:6px;color:#607086;font-size:10px;font-weight:600}.sidebar-help:hover{background:#f3f6fa;color:#173c69}
.local-status{gap:7px;padding:7px 10px 3px;color:#8a96a7;font:600 8px "Noto Sans Khmer",Arial}.local-status>span{width:6px;height:6px;background:#0d9b66;box-shadow:none}

/* Navy utility bar */
.main{width:calc(100% - 224px);margin-left:224px;padding-top:58px}
.topbar{position:fixed;top:0;right:0;left:224px;width:auto;height:58px;padding:0 18px;background:var(--navy);border:0;box-shadow:0 2px 7px rgba(2,12,28,.18);z-index:80}
.mobile-menu{display:none;color:#fff}.top-search{width:min(390px,38vw);height:34px;padding:0 10px;border:1px solid rgba(255,255,255,.13);border-radius:7px;background:rgba(255,255,255,.07);color:#9eb2ca}
.top-search:focus-within{border-color:#4f8fe3;background:rgba(255,255,255,.1);box-shadow:0 0 0 3px rgba(38,119,224,.16)}
.top-search input{padding-left:7px;color:#fff;font-size:11px}.top-search input::placeholder{color:#9eb0c6}.top-search kbd{padding:2px 5px;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:#a8b8cb;background:rgba(255,255,255,.05);font:500 8px Arial;white-space:nowrap}
.top-date{display:flex;align-items:center;gap:7px;margin-left:18px;color:#b7c4d5;font-size:10px}.top-actions{align-items:center;gap:6px}
.top-icon{position:relative;width:34px;height:34px;border:0;border-radius:7px;background:transparent;color:#c5d0df}.top-icon:hover{background:rgba(255,255,255,.1);color:#fff}.notification-button>span{position:absolute;right:7px;top:6px;width:5px;height:5px;border-radius:50%;background:#ef6a62;box-shadow:0 0 0 2px var(--navy)}
.top-user{height:36px;gap:8px;margin-left:3px;padding:0 8px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:rgba(255,255,255,.06)!important;color:#fff!important}
.top-user:hover,.user-menu-toggle[aria-expanded="true"]{background:rgba(255,255,255,.12)!important;color:#fff!important}.top-user img,.top-user-initials{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#eaf2ff;color:#0e59bc;font-size:8px;font-weight:750}
.top-user-copy{display:block!important;text-align:left}.top-user-copy b{display:block;color:#fff;font-size:10px;line-height:1.1}.top-user-copy small{display:block;margin-top:2px;color:#9eb0c5;font-size:8px;line-height:1}.top-user>em{color:#a8b7c9;font-size:10px;font-style:normal}
.user-menu-dropdown{top:calc(100% + 10px);border-radius:10px;box-shadow:0 16px 42px rgba(7,22,43,.22)}
.page-wrap{max-width:1660px;margin:auto;padding:24px 26px 48px}.page-head{margin-bottom:18px}.page-head h1{color:#15243a;font-size:24px;font-weight:750}.page-head p{margin-bottom:3px;color:#78879a;font-size:10px}

/* Premium compact dashboard */
.premium-dashboard-head{align-items:end}.dashboard-head-actions{display:flex;align-items:center;gap:8px}.period-chip{height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#53647a;font-size:10px;font-weight:650}.period-chip:hover{border-color:#a9bed9;color:#0f5ec9}
.premium-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 2px 7px rgba(18,36,61,.035);overflow:hidden}
.premium-metric{min-height:116px;padding:16px 17px;border-right:1px solid var(--line)}.premium-metric:last-child{border-right:0}.metric-heading{display:flex;align-items:center;justify-content:space-between;color:#65758a}.metric-heading>span{font-size:10px;font-weight:650}.metric-heading>i{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;background:#edf4ff;color:#1261cf}
.premium-metric>b{display:block;margin:8px 0 7px;color:#12233b;font:750 21px Arial}.metric-trend,.metric-note{font-size:8px;font-weight:700}.metric-trend em{margin-left:3px;color:#8b97a7;font-style:normal;font-weight:500}.metric-trend.up{color:#0b8a5b}.metric-trend.down{color:#c43c3c}.metric-note{color:#8b97a7;font-weight:500}.alert-metric .metric-heading>i{background:#fff2e6;color:#d97706}.alert-metric>b{color:#c43c3c}
.dashboard-overview{margin-bottom:14px;overflow:hidden}.premium-panel-title{min-height:53px;height:auto;padding:12px 15px;border-bottom:1px solid var(--line)}.premium-panel-title h2{margin:0;color:#1a2a41;font-size:12px;font-weight:750}.premium-panel-title p{margin:3px 0 0;color:#8793a4;font-size:8px}.premium-panel-title>a{padding:0;border:0;color:#1261cf;font-size:9px;font-weight:700}.premium-panel-title>a:hover{text-decoration:underline}
.sales-overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 185px;min-height:265px}.sales-chart-wrap{min-width:0;padding:8px 12px 2px}.sales-line-chart{display:block;width:100%;height:250px;overflow:visible}.chart-grid-line{stroke:#e9edf3;stroke-width:1}.chart-y-label,.chart-x-label{fill:#8895a5;font:8px "Noto Sans Khmer",Arial}.chart-area{fill:#1261cf0e}.chart-line{fill:none;stroke:#1261cf;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.chart-point{fill:#fff;stroke:#1261cf;stroke-width:2}
.chart-summary{display:grid;align-content:center;gap:18px;padding:18px;border-left:1px solid var(--line);background:#fbfcfe}.chart-summary span,.chart-summary b,.chart-summary small{display:block}.chart-summary span{color:#7b899b;font-size:8px}.chart-summary b{margin-top:4px;color:#162942;font:750 15px Arial}.chart-summary small{margin-top:3px;color:#8b97a6;font-size:8px}
.premium-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.75fr);gap:14px;margin-bottom:14px}.premium-dashboard-grid>.card{overflow:hidden}.compact-dashboard-table{min-width:650px}.compact-dashboard-table th{padding:9px 12px;background:#f8fafc;color:#758398;font-size:8px;letter-spacing:.25px}.compact-dashboard-table td{padding:10px 12px;color:#4d5e73;font-size:10px}.compact-dashboard-table td b{font-size:10px}.compact-dashboard-table td small{font-size:8px}.compact-dashboard-table td strong{color:#21344d;font-weight:700}.compact-dashboard-table .status{padding:4px 7px;font-size:8px}
.premium-stock-list>a{display:flex;align-items:center;gap:10px;min-height:57px;padding:9px 14px;border-bottom:1px solid #edf1f5}.premium-stock-list>a:last-child{border-bottom:0}.premium-stock-list>a:hover{background:#f8fafc}.premium-stock-list>a>i{width:30px;height:30px;display:grid;place-items:center;border-radius:6px;background:#f0f4f9;color:#60748e}.premium-stock-list>a>span{min-width:0;flex:1}.premium-stock-list b,.premium-stock-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.premium-stock-list b{color:#25374e;font-size:9px}.premium-stock-list small{margin-top:3px;color:#8b97a6;font-size:7px}.premium-stock-list em{min-width:24px;height:22px;display:grid;place-items:center;border-radius:12px;background:#fff0e4;color:#c56611;font-size:8px;font-style:normal;font-weight:750}.stock-empty{min-height:190px;display:grid;place-items:center;align-content:center;gap:9px;color:#8190a3;font-size:10px}.stock-empty .ui-icon{color:#0b8a5b}
.premium-quick-actions{overflow:hidden}.premium-quick-actions>.premium-panel-title{display:flex}.premium-action-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:12px}.premium-action-grid>a{min-height:68px;display:flex;align-items:center;justify-content:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#41536b;font-size:9px;font-weight:650}.premium-action-grid>a:hover{border-color:#a9c3e6;background:#f7faff;color:#0f5ec9}.premium-action-grid i{width:32px;height:32px;display:grid;place-items:center;border-radius:7px;background:#eaf2ff;color:#1261cf}

@media(max-width:1100px){.sidebar{width:210px}.main{width:calc(100% - 210px);margin-left:210px}.topbar{left:210px}.top-date{display:none}.premium-metrics{grid-template-columns:1fr 1fr}.premium-metric:nth-child(2){border-right:0}.premium-metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.premium-dashboard-grid{grid-template-columns:1fr}.premium-action-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.sidebar{top:0;width:236px;transform:translateX(-100%);box-shadow:10px 0 35px rgba(5,20,40,.18)}.menu-open .sidebar{transform:none}.main{width:100%;margin:0;padding-top:58px}.topbar{left:0;height:58px;padding:0 10px}.mobile-menu{display:grid;place-items:center;margin-right:7px}.top-search{width:auto;min-width:0;flex:1}.top-search kbd{display:none}.top-actions>.top-icon{display:none}.top-user-copy{display:none!important}.top-user{padding:0 5px}.page-wrap{padding:18px 12px 35px}.premium-dashboard-head{align-items:flex-start}.dashboard-head-actions .period-chip{display:none}.premium-metrics{grid-template-columns:1fr 1fr}.sales-overview-layout{grid-template-columns:1fr}.chart-summary{grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid var(--line);border-left:0}.premium-action-grid{grid-template-columns:1fr 1fr}.user-menu-dropdown{top:58px}}
@media(max-width:480px){.premium-metrics{grid-template-columns:1fr}.premium-metric{border-right:0;border-bottom:1px solid var(--line)!important}.premium-metric:last-child{border-bottom:0!important}.premium-metric{min-height:105px}.sales-chart-wrap{overflow-x:auto}.sales-line-chart{min-width:600px}.chart-summary{grid-template-columns:1fr}.premium-action-grid{grid-template-columns:1fr}.premium-action-grid>a{justify-content:flex-start;padding-left:18px}}

/* Version 8.1 — readable typography and Dashboard period filter */
body{font-size:15px}
.sidebar .brand b{font-size:17px}.sidebar .brand small{font-size:11px}.sidebar nav a{min-height:41px;font-size:13px}.sidebar .nav-label{padding-top:13px;font-size:9.5px}.sidebar-help{font-size:12px}.local-status{font-size:10px}
.top-search{height:38px}.top-search input{font-size:13px}.top-search kbd{font-size:9px}.top-date{font-size:12px}.top-user-copy b{font-size:12px}.top-user-copy small{font-size:9px}
.page-head h1{font-size:28px}.page-head p{font-size:12px}.premium-dashboard-head{gap:15px}.dashboard-head-actions{flex-wrap:wrap;justify-content:flex-end}
.dashboard-period-filter{height:40px;display:flex;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff;color:#53647a}
.dashboard-period-filter label{height:100%;display:flex;align-items:center;gap:7px;padding:0 10px;border-right:1px solid var(--line);font-size:11px;font-weight:650}.dashboard-period-filter select{height:100%;min-width:135px;padding:0 28px 0 10px;border:0;background:#fff;color:#26384f;outline:0;font-size:12px;font-weight:650;cursor:pointer}.dashboard-period-filter button{height:30px;margin-right:5px;padding:0 11px;border:0;border-radius:5px;background:#eaf2ff;color:#0f5ec9;font-size:11px;font-weight:750;cursor:pointer}.dashboard-period-filter button:hover{background:#dceaff}
.premium-metric{min-height:128px;padding:18px 19px}.metric-heading>span{font-size:13px}.metric-heading>i{width:32px;height:32px}.premium-metric>b{margin:10px 0 9px;font-size:26px}.metric-trend,.metric-note{font-size:10.5px}.metric-trend em{margin-left:5px}
.premium-panel-title{min-height:61px;padding:13px 16px}.premium-panel-title h2{font-size:14px}.premium-panel-title p{font-size:10.5px}.premium-panel-title>a{font-size:11px}
.chart-y-label,.chart-x-label{font-size:10px}.chart-summary span{font-size:10.5px}.chart-summary b{font-size:18px}.chart-summary small{font-size:10px}
.compact-dashboard-table th{padding:11px 13px;font-size:10.5px}.compact-dashboard-table td{padding:12px 13px;font-size:12.5px}.compact-dashboard-table td b{font-size:12.5px}.compact-dashboard-table td small{font-size:10px}.compact-dashboard-table .status{font-size:10px}
.premium-stock-list>a{min-height:64px;padding:10px 15px}.premium-stock-list b{font-size:12px}.premium-stock-list small{font-size:9.5px}.premium-stock-list em{min-width:27px;height:25px;font-size:10px}.stock-empty{font-size:12px}
.premium-action-grid>a{min-height:74px;font-size:12px}.period-chip{font-size:12px}
@media(max-width:760px){.premium-dashboard-head{display:block}.dashboard-head-actions{justify-content:flex-start;margin-top:13px}.dashboard-period-filter{flex:1;min-width:280px}.dashboard-period-filter select{min-width:0;flex:1}.premium-metric{min-height:118px}.page-head h1{font-size:25px}}
@media(max-width:480px){.dashboard-period-filter{width:100%;min-width:0}.dashboard-head-actions>.btn{width:100%}.dashboard-period-filter label span{display:none}.dashboard-period-filter select{font-size:11px}.metric-heading>span{font-size:12px}}

/* Checkout-stage Invoice Type selector. */
.invoice-apply-panel{display:grid;grid-template-columns:1fr minmax(235px,1.15fr);align-items:center;gap:12px;margin-bottom:7px;padding:13px;border:1px solid #cddcf0;border-radius:10px;background:#f5f8fc}.invoice-apply-panel b{display:block;font-size:13px;color:#17283f}.invoice-apply-panel small{display:block;margin-top:3px;font-size:10px;line-height:1.4;color:#6b7d94}.invoice-apply-panel select{margin:0!important;font-weight:600}.invoice-type-help{margin:0 0 12px;padding-left:2px;font-size:11px;line-height:1.45;color:#60738c}.invoice-customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.optional-label{margin-left:5px;color:#7c8ca1;font-size:10px;font-weight:400}.sale-total-summary>p{display:flex;justify-content:space-between;margin:0;padding:7px 0;font-size:12px;border-bottom:1px solid #edf1f5}.sale-total-summary>p b{font-weight:650}.cart-customer [hidden]{display:none!important}
@media(max-width:600px){.invoice-apply-panel{grid-template-columns:1fr}.invoice-customer-grid{grid-template-columns:1fr}.invoice-customer-grid .span-2{grid-column:auto}}
.global-search-form{display:flex;align-items:center;gap:10px;padding:14px 16px}.global-search-form .search-box{flex:1;margin:0}.search-result-summary{margin:17px 2px 12px;color:#66768b;font-size:12px}.search-result-summary b{color:#13243b}.global-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.search-result-card{overflow:hidden}.search-result-card>.card-head{padding:16px 18px;border-bottom:1px solid var(--line)}.search-result-card>.card-head h2{font-size:15px}.search-result-card>.card-head p{font-size:10px}.search-result-list>a{min-height:62px;display:flex;align-items:center;gap:12px;padding:11px 17px;border-bottom:1px solid #edf1f5}.search-result-list>a:last-child{border-bottom:0}.search-result-list>a:hover{background:#f5f8fc}.search-result-list span{flex:1;min-width:0}.search-result-list b{display:block;font-size:13px;color:#14253b}.search-result-list small{display:block;margin-top:3px;font-size:10px;color:#728197}.search-result-list strong{font-size:12px;color:#0f5fc9;white-space:nowrap}.search-start{padding:28px;text-align:center}.search-start b{font-size:16px}.search-start p{max-width:650px;margin:8px auto 0;color:#6e7e93;font-size:12px;line-height:1.6}@media(max-width:800px){.global-result-grid{grid-template-columns:1fr}}@media(max-width:520px){.global-search-form{align-items:stretch;flex-direction:column}.global-search-form .btn{width:100%}}
.service-row-actions{display:flex;align-items:center;gap:8px}.service-row-actions form{margin:0}.catalog-switch{display:flex;gap:7px;margin:16px 0 0}.catalog-switch button{min-height:34px;padding:0 13px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#5e6f85;font-size:11px;font-weight:650;cursor:pointer}.catalog-switch button.active{border-color:#1c67ce;background:#eaf2ff;color:#0e5abf}.service-catalog-card>i{background:#edf8f2!important;color:#148159!important}.item-type-pill{display:inline-block;margin-left:5px;padding:2px 5px;border-radius:9px;background:#e8f6ef;color:#167956;font-size:8px}
.catalog-product-image{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;overflow:hidden;border:1px solid #e0e6ee;border-radius:10px;background:#fff}.catalog-product-image img{display:block;width:100%;height:100%;padding:3px;object-fit:contain}.catalog-image-placeholder{display:grid;place-items:center;width:100%;height:100%;background:#edf3fb;color:#6d87a6;font-size:20px}.selected-product-copy{display:flex;align-items:center;gap:8px;min-width:0}.selected-product-copy>span:last-child{min-width:0}.selected-product-image{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;overflow:hidden;border:1px solid #e0e6ee;border-radius:8px;background:#fff;color:#6d87a6}.selected-product-image img{display:block;width:100%;height:100%;padding:2px;object-fit:contain}.quote-service-product>.brand-badge{width:52px;height:52px;justify-content:center;padding:0;white-space:normal;text-align:center}.theme-dark .catalog-product-image,.theme-dark .selected-product-image{border-color:#33445a;background:#101b2a}.theme-dark .catalog-image-placeholder{background:#223249;color:#a9bad0}@media(max-width:760px){.catalog-product-image{width:46px;height:46px;flex-basis:46px}.selected-product-image{display:none}}
.invoice-row-actions,.invoice-page-actions{display:flex;align-items:center;gap:9px;white-space:nowrap}.invoice-row-actions form,.invoice-page-actions form{margin:0}.invoice-edit-link,.invoice-delete-link{border:0;background:transparent;font-size:11px;font-weight:700;cursor:pointer}.invoice-edit-link{color:#14815a}.invoice-delete-link{color:#c93434}.invoice-delete-button{border:1px solid #e7aaaa;background:#fff;color:#b62929}.invoice-delete-button:hover{background:#fff1f1}.admin-edit-safety{display:flex;flex-direction:column;gap:4px;padding:11px 13px;border:1px solid #f0d69b;border-radius:9px;background:#fff9e9;color:#71541c}.admin-edit-safety b{font-size:11px}.admin-edit-safety span{font-size:10px;line-height:1.5;font-weight:400}.theme-dark .admin-edit-safety{border-color:#6c572d;background:#2d281c;color:#f1d58f}@media(max-width:760px){.invoice-page-actions{align-items:stretch;flex-wrap:wrap}.invoice-page-actions .btn{flex:1}.invoice-row-actions{gap:7px}}

/* Version 10.7 — multi-item Supplier Purchase */
.purchase-modal-wide{width:min(900px,100%)}.purchase-item-builder{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(110px,.5fr) minmax(130px,.6fr) auto;gap:10px;align-items:end;padding:14px;border:1px solid #dbe4ef;border-radius:10px;background:#f8fafc}.purchase-add-item{height:44px;white-space:nowrap}.purchase-cart{overflow:hidden;border:1px solid #dbe4ef;border-radius:10px;background:#fff}.purchase-cart-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #e5eaf1}.purchase-cart-head b{font-size:13px}.purchase-cart-head span{padding:4px 8px;border-radius:20px;background:#eaf2ff;color:#0f5ec9;font-size:10px;font-weight:700}.purchase-cart-columns,.purchase-cart-row{display:grid;grid-template-columns:minmax(240px,1fr) 65px 95px 100px 28px;gap:10px;align-items:center}.purchase-cart-columns{padding:8px 12px;background:#f7f9fc;color:#718096;font-size:9px;font-weight:700;text-transform:uppercase}.purchase-item-list>p{margin:0;padding:22px;text-align:center;color:#7c899a;font-size:11px}.purchase-cart-row{min-height:58px;padding:9px 12px;border-top:1px solid #edf1f5}.purchase-cart-row:first-child{border-top:0}.purchase-cart-row>span{min-width:0}.purchase-cart-row b,.purchase-cart-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-cart-row b{font-size:12px}.purchase-cart-row small{margin-top:3px;color:#718096;font-size:9px}.purchase-cart-row strong{font-size:11px;font-weight:600;text-align:right}.purchase-cart-row button{width:27px;height:27px;border:0;border-radius:6px;background:#fff0f0;color:#c93434;font-size:17px;cursor:pointer}.theme-dark .purchase-item-builder,.theme-dark .purchase-cart-columns{border-color:#33445a;background:#172437}.theme-dark .purchase-cart,.theme-dark .purchase-cart-row{border-color:#33445a;background:#101b2a}.theme-dark .purchase-cart-head{border-color:#33445a}.theme-dark .purchase-cart-row button{background:#3a2025}.theme-dark .purchase-item-list>p{color:#9aacbf}
@media(max-width:760px){.purchase-item-builder{grid-template-columns:1fr 1fr}.purchase-item-builder>label:first-child,.purchase-add-item{grid-column:1/-1}.purchase-cart{overflow-x:auto}.purchase-cart-columns,.purchase-cart-row{min-width:610px}.purchase-modal-wide{width:100%}}

/* Purchase Product finder — remains fast and readable with large catalogs. */
.purchase-modal-wide{width:min(980px,100%)}
.purchase-item-builder{display:block;padding:14px}
.purchase-product-finder{overflow:hidden;border:1px solid #dbe4ef;border-radius:10px;background:#fff}
.purchase-finder-head{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-bottom:1px solid #e5eaf1}
.purchase-finder-head b,.purchase-finder-head small{display:block}.purchase-finder-head b{font-size:13px}.purchase-finder-head small{margin-top:2px;color:#718096;font-size:10px;font-weight:400}
.purchase-result-count{padding:4px 8px;border-radius:20px;background:#eaf2ff;color:#0f5ec9;font-size:10px;font-weight:700}
.purchase-finder-tools{display:grid;grid-template-columns:minmax(280px,1fr) 160px 180px;gap:8px;padding:10px 12px;background:#f8fafc}
.purchase-finder-tools label>span{display:block;margin-bottom:5px;color:#53647a;font-size:10px;font-weight:600}
.purchase-finder-tools input,.purchase-finder-tools select{height:39px;font-size:12px}
.purchase-product-results{max-height:235px;overflow-y:auto;padding:5px}
.purchase-product-results>p{margin:0;padding:28px;text-align:center;color:#718096;font-size:11px}
.purchase-product-option{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 84px;gap:10px;align-items:center;width:100%;min-height:54px;padding:7px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#10213b;text-align:left;cursor:pointer}
.purchase-product-option:hover{background:#f4f8fe}.purchase-product-option.active{border-color:#1766cf;background:#eaf2ff}
.purchase-product-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#edf3fb;color:#125dc0;font-size:10px;font-weight:800}
.purchase-product-option b,.purchase-product-option small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-product-option b{font-size:12px}.purchase-product-option small{margin-top:3px;color:#718096;font-size:9px;font-weight:400}
.purchase-product-option strong{text-align:right;color:#0a55b5;font-size:11px}.purchase-product-option em{position:absolute;right:10px;bottom:3px;color:#13845b;font-size:8px;font-style:normal;font-weight:700}
.purchase-item-entry{display:grid;grid-template-columns:minmax(220px,1fr) 125px 90px 135px auto;gap:9px;align-items:end;margin-top:10px}
.purchase-selected-copy{align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:7px 11px;border:1px solid #dbe4ef;border-radius:8px;background:#fff}
.purchase-selected-copy span,.purchase-selected-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-selected-copy span{font-size:11px;font-weight:700}.purchase-selected-copy small{margin-top:3px;color:#718096;font-size:9px}
.purchase-item-entry label{margin:0}.purchase-item-entry input{height:42px}.purchase-item-entry .purchase-add-item{height:42px}.purchase-item-entry .purchase-add-item:disabled{cursor:not-allowed;opacity:.45}
.theme-dark .purchase-product-finder,.theme-dark .purchase-selected-copy,.theme-dark .purchase-product-option{border-color:#33445a;background:#101b2a;color:#d9e2ee}.theme-dark .purchase-finder-head{border-color:#33445a}.theme-dark .purchase-finder-tools,.theme-dark .purchase-product-option:hover{background:#172437}.theme-dark .purchase-product-option.active{border-color:#4f91e8;background:#173b69}.theme-dark .purchase-product-mark{background:#20334d;color:#9dc5fa}
@media(max-width:760px){.purchase-finder-tools{grid-template-columns:1fr 1fr}.purchase-search-field{grid-column:1/-1}.purchase-item-entry{grid-template-columns:1fr 1fr}.purchase-selected-copy,.purchase-item-entry .purchase-add-item{grid-column:1/-1}.purchase-product-option{grid-template-columns:34px minmax(0,1fr) 72px}.purchase-product-results{max-height:210px}}
/* Roll + Meter inventory */
.roll-meter-toggle{display:flex!important;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}
.roll-meter-toggle input{width:18px;height:18px;flex:0 0 auto}.roll-meter-toggle span{display:flex;flex-direction:column;gap:3px}.roll-meter-toggle small{color:var(--muted)}
.roll-meter-panel{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff}
.roll-meter-panel[hidden],.normal-opening-stock[hidden]{display:none!important}.roll-stock-summary{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:8px;background:#fff;color:#0f2747}.roll-stock-summary small{color:var(--muted)}
.cable-product-card{cursor:default!important}.cable-product-card>span{min-width:0}.cable-product-card .cable-sale-actions{display:flex;gap:7px;margin-left:auto}.cable-sale-actions button{min-width:92px;padding:7px 9px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#0759c7;cursor:pointer}.cable-sale-actions button:hover{background:#dbeafe}.cable-sale-actions button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:760px){.roll-meter-panel{grid-template-columns:1fr 1fr}.cable-product-card{align-items:flex-start}.cable-product-card .cable-sale-actions{flex-direction:column}.cable-sale-actions button{min-width:82px}}
.purchase-record-search{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:14px 16px}.purchase-record-search .search-box{flex:1;max-width:680px}.purchase-record-search>span{margin-left:auto;color:#68778b;font-size:12px;white-space:nowrap}.supplier-invoice-link b{color:#08783e}.purchase-detail-meta{grid-template-columns:minmax(220px,1.7fr) repeat(4,1fr)}@media(max-width:760px){.purchase-record-search{flex-wrap:wrap}.purchase-record-search .search-box{flex-basis:100%;max-width:none}.purchase-record-search>span{margin-left:0}.purchase-detail-meta{grid-template-columns:1fr 1fr}}

/* User History search, activity filter and complete paginated results. */
.history-search-form{display:flex;align-items:end;gap:10px;margin-bottom:14px;padding:14px 16px}.history-search-form .search-box{flex:1;max-width:680px}.history-action-filter{display:flex;flex-direction:column;gap:5px;color:#53647a;font-size:10px;font-weight:650}.history-action-filter select{min-width:210px;height:39px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-size:11px;outline:0}.history-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 16px;border-top:1px solid var(--line)}.history-pagination span{color:#68778b;font-size:11px}.history-pagination .disabled{pointer-events:none;opacity:.45}.theme-dark .history-action-filter select{border-color:#33445a;background:#101b2a;color:#d9e2ee}@media(max-width:760px){.history-search-form{align-items:stretch;flex-wrap:wrap}.history-search-form .search-box{flex-basis:100%;max-width:none}.history-action-filter{flex:1}.history-action-filter select{width:100%;min-width:0}.history-pagination{justify-content:space-between}.history-pagination .btn{padding:0 10px}}

/* Unified period presets for Dashboard, Reports, Statements, Cash Flow and Sales. */
.custom-date-field[hidden]{display:none!important}.sales-report-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding:14px 16px}.sales-report-filter .search-box{flex:1 1 330px}.sales-report-filter>label:not(.search-box){display:flex;flex-direction:column;gap:5px;min-width:145px;color:#53647a;font-size:10px;font-weight:650}.sales-report-filter select,.sales-report-filter input[type="date"]{height:39px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink);font-size:11px}.sales-report-filter>span{margin-left:auto;color:#68778b;font-size:11px;white-space:nowrap}.dashboard-period-filter{height:auto!important;min-height:40px;overflow:visible!important}.dashboard-period-filter .dashboard-custom-date{gap:5px;padding:4px 8px}.dashboard-period-filter .dashboard-custom-date input{width:120px;height:30px;padding:0 6px;border:1px solid var(--line);border-radius:5px;background:var(--card);color:var(--ink);font-size:10px}.theme-dark .sales-report-filter select,.theme-dark .sales-report-filter input[type="date"]{border-color:#33445a;background:#101b2a;color:#d9e2ee}@media(max-width:760px){.sales-report-filter{align-items:stretch}.sales-report-filter .search-box{flex-basis:100%}.sales-report-filter>label:not(.search-box){flex:1}.sales-report-filter .btn{flex:1}.sales-report-filter>span{width:100%;margin-left:0}.dashboard-period-filter .dashboard-custom-date{width:100%;border-top:1px solid var(--line)}.dashboard-period-filter .dashboard-custom-date input{flex:1;width:auto}}

/* Editable per-sale prices use the current sale only. */
.cart-row .sale-unit-price{display:inline-flex;align-items:center;gap:5px;color:#526276;font-size:11px}.cart-row input.sale-price-input{width:82px;min-width:0;padding:5px;border:1px solid #cbd8ea;border-radius:5px;background:#fff;color:#142238}.theme-dark .cart-row input.sale-price-input{background:#172437;color:#e8eef7;border-color:#40536b}
