:root{--blue: #1e5ab4;--blue-d: #174fa0;--blue-l: #e8f0fb;--blue-m: #c8dcf5;--gold: #e8c97a;--green: #2d6010;--green-bg: #e8f5d8;--amber: #7a4500;--amber-bg: #faeeda;--red: #9b2525;--red-bg: #fceaea;--ink: #18181b;--ink-2: #44444a;--ink-3: #71717a;--ink-4: #a1a1aa;--ink-5: #d4d4d8;--surf: #ffffff;--bg: #f2f1ed;--bg-2: #faf9f7;--border: #e4e2db;--border-2: #f0ede7;--r: 9px;--r-sm: 6px;--font: "DM Sans", sans-serif;--mono: "DM Mono", monospace;--shadow: 0 1px 3px rgba(0, 0, 0, .07), 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08), 0 2px 4px rgba(0, 0, 0, .05)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);font-family:var(--font);color:var(--ink);font-size:14px;line-height:1.5}a{color:var(--blue);text-decoration:none}button{font-family:var(--font)}img{max-width:100%}.portal{min-height:100vh;display:flex;flex-direction:column}.muted{color:var(--ink-3)}.mono{font-family:var(--mono);font-size:12.5px}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar{background:#111;color:#888;padding:0 24px;height:34px;display:flex;align-items:center;justify-content:space-between;font-size:11.5px;gap:12px}.topbar-left{display:flex;gap:18px;min-width:0}.nav{background:var(--surf);border-bottom:1px solid var(--border);padding:0 24px;display:flex;align-items:center;height:60px;gap:0;position:relative;z-index:40}.logo{font-size:17px;font-weight:700;color:var(--ink);margin-right:24px;display:flex;align-items:center;gap:8px;letter-spacing:-.3px;white-space:nowrap}.logo-badge{background:var(--blue);color:#fff;font-size:9px;padding:2px 7px;border-radius:3px;letter-spacing:1px;font-weight:700;font-family:var(--mono)}.nav-links{display:flex}.nav-link{padding:0 13px;height:60px;display:flex;align-items:center;font-size:13px;color:var(--ink-3);border-bottom:2px solid transparent;cursor:pointer;gap:5px;white-space:nowrap}.nav-link:hover{color:var(--ink)}.nav-link.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.nav-burger{display:none;background:none;border:none;font-size:22px;color:var(--ink-2);cursor:pointer;margin-right:10px;align-items:center}.nav-right{display:flex;align-items:center;gap:10px;margin-left:12px}.account-pill{display:flex;align-items:center;gap:7px;background:var(--blue-l);border-radius:20px;padding:4px 12px 4px 5px;white-space:nowrap}.avatar{width:27px;height:27px;border-radius:50%;background:var(--blue);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-lg{width:32px;height:32px}.account-name{font-size:12.5px;font-weight:600;color:var(--blue)}.cart-btn{background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:7px 15px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap}.cart-btn:hover{background:var(--blue-d)}.cart-badge{background:var(--gold);color:var(--ink);border-radius:10px;padding:1px 6px;font-size:11px;font-weight:700}.icon-btn{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r-sm);width:34px;height:34px;font-size:16px;color:var(--ink-3);cursor:pointer;display:flex;align-items:center;justify-content:center}.icon-btn:hover{color:var(--blue);border-color:var(--blue-m)}.nav-search{position:relative;flex:1;max-width:320px;margin-left:auto;min-width:120px}.nav-search>i{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--ink-4);font-size:15px;pointer-events:none}.nav-search input{width:100%;border:1px solid var(--border);border-radius:var(--r-sm);padding:8px 10px 8px 32px;font-size:13px;background:var(--bg-2);color:var(--ink);font-family:var(--font)}.nav-search input:focus{outline:none;border-color:var(--blue);background:#fff}.search-drop{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:var(--shadow-md);z-index:60;max-height:340px;overflow-y:auto}.sd-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:9px 12px;cursor:pointer;font-size:13px;background:none;border:none;border-bottom:1px solid var(--border-2);color:var(--ink)}.sd-item:last-child{border-bottom:none}.sd-item:hover{background:var(--blue-l)}.sd-main{display:flex;flex-direction:column;min-width:0}.sd-name{font-weight:500}.sd-meta{font-size:11px;color:var(--ink-4);font-family:var(--mono)}.sd-tag{font-size:10px;font-weight:700;padding:2px 7px;border-radius:4px;background:var(--bg-2);border:1px solid var(--border);color:var(--ink-3);flex-shrink:0}.sd-tag-group{background:var(--blue-l);border-color:var(--blue-m);color:var(--blue)}.sd-empty{padding:12px;font-size:12.5px;color:var(--ink-4)}.page{flex:1;width:100%;max-width:1360px;margin:0 auto;padding:16px 24px 40px}.footer{padding:20px 24px;text-align:center;font-size:12px;color:var(--ink-4);border-top:1px solid var(--border)}.breadcrumb{font-size:12px;color:var(--ink-4);margin-bottom:14px;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.breadcrumb a,.breadcrumb button{color:var(--blue);background:none;border:none;font-size:12px;font-family:var(--font);cursor:pointer;padding:0}.breadcrumb i{font-size:12px}.section-title{font-size:13px;font-weight:500;color:var(--ink);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.section-title a{font-size:12px;font-weight:400}.section-title.pad{padding:14px 16px 0;margin-bottom:4px}.panel{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:14px 16px;box-shadow:var(--shadow)}.panel-label{font-size:11px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;display:flex;align-items:center;gap:6px}.panel-label i{color:var(--blue);font-size:14px}.btn-p,.btn-s,.btn-a{border-radius:var(--r-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;width:100%;transition:background .12s}.btn-p{background:var(--blue);color:#fff;border:none;padding:11px;font-size:13.5px;font-weight:700}.btn-p:hover{background:var(--blue-d)}.btn-s{background:#fff;color:var(--blue);border:1.5px solid var(--blue);padding:9px;font-size:13px;font-weight:600;margin-top:7px}.btn-a{background:var(--bg-2);color:var(--ink-2);border:1px solid var(--border);padding:9px;font-size:12.5px;font-weight:500;margin-top:7px}.btn-p:disabled,.btn-s:disabled,.btn-a:disabled{opacity:.5;cursor:not-allowed}.btn-white{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:7px 14px;border-radius:var(--r-sm);font-size:13px;cursor:pointer}.btn-gold{background:var(--gold);color:var(--ink);border:none;padding:7px 14px;border-radius:var(--r-sm);font-size:13px;font-weight:500;cursor:pointer}.stk{font-size:11.5px;padding:3px 8px;border-radius:4px;font-weight:500;white-space:nowrap;display:inline-block}.stk-in{background:var(--green-bg);color:var(--green)}.stk-low{background:var(--amber-bg);color:var(--amber)}.stk-out{background:var(--red-bg);color:var(--red)}.status-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:4px;font-size:11.5px;font-weight:500;white-space:nowrap}.badge-delivered{background:#eaf3de;color:#3b6d11}.badge-pending{background:#faeeda;color:#854f0b}.badge-processing{background:#e6f1fb;color:#185fa5}.badge-invoice{background:#fbeaf0;color:#993556}.badge-cancelled{background:#f1efe8;color:#5f5e5a}.trade-tag{position:absolute;top:8px;left:8px;background:var(--blue);color:#fff;font-size:10px;padding:2px 6px;border-radius:3px;font-weight:600;letter-spacing:.4px}.stock-float{position:absolute;top:8px;right:8px}.price-row{display:flex;align-items:baseline;gap:7px}.trade-price{font-size:16px;font-weight:700;color:var(--blue);white-space:nowrap}.rrp-price{font-size:12px;color:var(--ink-4);text-decoration:line-through;white-space:nowrap}.price-sub{display:flex;gap:6px;align-items:center;margin-top:3px;flex-wrap:wrap}.saving-tag{font-size:11px;background:var(--amber-bg);color:var(--amber);padding:2px 6px;border-radius:3px;font-weight:500;white-space:nowrap}.price-note{font-size:11.5px;color:var(--ink-3)}.qw{display:inline-flex;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;flex-shrink:0;background:#fff}.qb{width:28px;height:30px;background:var(--bg-2);border:none;font-size:15px;color:var(--ink-3);cursor:pointer;display:flex;align-items:center;justify-content:center}.qb:hover{background:var(--blue-l);color:var(--blue)}.qi{width:40px;height:30px;text-align:center;border:none;border-left:1px solid var(--border);border-right:1px solid var(--border);font-size:12.5px;font-weight:600;background:#fff;color:var(--ink);font-family:var(--mono)}.qi:focus{outline:none}.qi::-webkit-outer-spin-button,.qi::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qi{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.qw-sm .qb{width:24px;height:26px;font-size:14px}.qw-sm .qi{width:34px;height:26px;font-size:12px}.field{display:block;margin-top:10px}.field span{display:block;font-size:12px;font-weight:500;color:var(--ink-2);margin-bottom:4px}.field input,.field textarea{width:100%;border:1px solid var(--border);border-radius:var(--r-sm);padding:9px 11px;font-size:13px;background:var(--bg-2);color:var(--ink);font-family:var(--font);resize:vertical}.field input:focus,.field textarea:focus{outline:none;border-color:var(--blue);background:#fff}.form-error{background:var(--red-bg);color:var(--red);border:1px solid #efc9c9;border-radius:var(--r-sm);padding:9px 11px;font-size:12.5px;margin:10px 0}.banner{display:flex;align-items:flex-start;gap:9px;border-radius:var(--r-sm);padding:11px 14px;font-size:13px;margin-bottom:14px}.banner i{font-size:17px;margin-top:1px;flex-shrink:0}.banner-success{background:var(--green-bg);color:var(--green);border:1px solid #c8e3ab}.banner-warning{background:var(--amber-bg);color:var(--amber);border:1px solid #ecd3ab}.banner-error{background:var(--red-bg);color:var(--red);border:1px solid #efc9c9}.tbl-card{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow)}.tbl-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;min-width:640px}.tbl th{padding:10px 14px;font-size:11px;font-weight:600;color:var(--ink-4);text-align:left;text-transform:uppercase;letter-spacing:.6px;background:var(--bg-2);border-bottom:1px solid var(--border-2);white-space:nowrap}.tbl td{padding:11px 14px;font-size:13px;border-bottom:1px solid var(--border-2);vertical-align:middle}.tbl tbody tr:last-child>td{border-bottom:none}.tbl .num{text-align:right}.tbl .ellipsis{display:block;max-width:280px}.tbl-row.clickable{cursor:pointer}.tbl-row.clickable:hover{background:var(--bg-2)}.tbl-row.open{background:var(--blue-l)}.tbl-expand>td{background:var(--bg-2);padding:8px 14px 14px}.tbl-lines{min-width:0}.tbl-lines th{background:transparent}.order-num{color:var(--blue);font-weight:600;white-space:nowrap}.row-tools{white-space:nowrap;display:flex;align-items:center;gap:10px;justify-content:flex-end}.reorder-btn{font-size:12px;color:var(--blue);cursor:pointer;display:inline-flex;align-items:center;gap:4px;background:none;border:none;font-family:var(--font);white-space:nowrap}.reorder-btn:hover{text-decoration:underline}.pdf-link{font-size:16px}.inv-overdue{color:#a32d2d;font-weight:500}.pagination{display:flex;align-items:center;justify-content:center;gap:4px;padding-top:14px}.page-btn{min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-sm);border:1px solid var(--border);background:#fff;font-size:13px;cursor:pointer;color:var(--ink-2);padding:0 6px}.page-btn:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.page-btn.active{background:var(--blue);color:#fff;border-color:var(--blue)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-gap{color:var(--ink-4);font-size:13px;padding:0 4px}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--ink-3);font-size:14px}.spin{animation:spin 1s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading{padding:60px 20px;text-align:center;color:var(--ink-4);font-size:13.5px}.loading.small{padding:16px}.empty-state{background:var(--surf);border:1px dashed var(--border);border-radius:var(--r);padding:48px 24px;text-align:center;color:var(--ink-3);font-size:13.5px;display:flex;flex-direction:column;align-items:center;gap:8px}.empty-state i{font-size:30px;color:var(--ink-5)}.empty-row{padding:18px 16px;font-size:13px;color:var(--ink-4)}@media (max-width: 900px){.topbar-address{display:none}.nav{padding:0 14px}.nav-burger{display:flex}.logo{margin-right:8px;font-size:15px}.nav-links{display:none;position:absolute;top:60px;left:0;right:0;background:var(--surf);flex-direction:column;border-bottom:1px solid var(--border);box-shadow:var(--shadow-md);z-index:50}.nav-links.open{display:flex}.nav-links .nav-link{height:48px;border-bottom:1px solid var(--border-2);border-left:3px solid transparent;padding:0 18px}.nav-links .nav-link.active{border-left-color:var(--blue);border-bottom-color:var(--border-2);background:var(--blue-l)}.page{padding:14px 14px 32px}}@media (max-width: 600px){.topbar{padding:0 14px}.topbar-hours,.account-pill{display:none}.nav-search{min-width:90px}.cart-btn{padding:7px 11px}}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.login-card{background:var(--surf);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-md);padding:32px 30px;width:100%;max-width:380px}.login-logo{font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px;margin-bottom:18px}.login-card h1{font-size:21px;font-weight:700;margin-bottom:5px}.login-sub{font-size:13px;color:var(--ink-3);margin-bottom:14px}.login-card .btn-p{margin-top:18px}.login-foot{margin-top:16px;font-size:12px;color:var(--ink-4);text-align:center}.dash-content{display:grid;grid-template-columns:240px 1fr;gap:20px;align-items:start}.dash-sidebar{display:flex;flex-direction:column;gap:12px}.dash-main{display:flex;flex-direction:column;gap:16px;min-width:0}.account-card,.quick-links{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:16px;box-shadow:var(--shadow)}.card-header-label{font-size:11px;color:var(--ink-4);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px}.company-name{font-size:16px;font-weight:600;margin-bottom:2px}.account-status{display:inline-flex;align-items:center;gap:5px;font-size:12px;background:var(--green-bg);color:#3b6d11;padding:3px 9px;border-radius:4px;margin-bottom:12px}.status-dot{width:6px;height:6px;border-radius:50%;background:#639922}.account-detail{font-size:12.5px;color:var(--ink-3);margin-bottom:4px;display:flex;justify-content:space-between;gap:10px}.account-detail strong{color:var(--ink);text-align:right}.credit-bar{margin-top:10px}.credit-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:5px}.credit-label span:first-child{color:var(--ink-3)}.credit-label span:last-child{font-weight:600}.bar-track{background:var(--border-2);border-radius:4px;height:6px}.bar-fill{background:var(--blue);height:6px;border-radius:4px;transition:width .3s}.quick-link-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 0;border:none;border-bottom:1px solid var(--border-2);background:none;font-size:13.5px;font-family:var(--font);color:var(--ink-2);cursor:pointer;text-align:left}.quick-link-item:last-child{border-bottom:none;padding-bottom:0}.quick-link-item i{color:var(--blue);font-size:16px}.quick-link-item:hover:not(:disabled){color:var(--blue)}.quick-link-item:disabled{opacity:.5;cursor:not-allowed}.welcome-bar{background:var(--blue);border-radius:var(--r);padding:18px 22px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.welcome-text h2{font-size:17px;font-weight:500;margin-bottom:3px}.welcome-text p{font-size:13px;opacity:.75}.welcome-actions{display:flex;gap:8px}.pickup-notice{background:var(--amber-bg);border:1px solid #ecd3ab;border-radius:var(--r-sm);padding:10px 14px;display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:var(--amber)}.pickup-notice i{font-size:17px;flex-shrink:0}.pickup-notice a{font-weight:600;white-space:nowrap}.pickup-notice span{flex:1}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-card{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:14px 16px;box-shadow:var(--shadow)}.stat-label{font-size:11.5px;color:var(--ink-3);margin-bottom:6px}.stat-value{font-size:20px;font-weight:600}.stat-value.stat-red,.stat-red{color:#a32d2d}.stat-value.stat-blue,.stat-blue{color:#185fa5}.stat-sub{font-size:11.5px;color:var(--ink-3);margin-top:3px}.orders-widget{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow)}.orders-grid{display:grid;grid-template-columns:100px 1fr 90px 90px 100px 90px;gap:8px;align-items:center}.orders-grid>*{min-width:0}.table-head{padding:10px 16px;background:var(--bg-2);border-bottom:1px solid var(--border-2);font-size:11.5px;color:var(--ink-4);font-weight:500}.table-row{padding:11px 16px;border-bottom:1px solid var(--border-2);font-size:13px}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--bg-2)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.quick-order,.invoices-widget{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:16px;box-shadow:var(--shadow)}.search-input-wrap{display:flex;gap:8px;margin-bottom:12px}.search-input{flex:1;border:1px solid var(--border);border-radius:var(--r-sm);padding:8px 12px;font-size:13px;background:var(--bg-2);color:var(--ink);font-family:var(--font)}.search-input:focus{outline:none;border-color:var(--blue);background:#fff}.quick-order-items{display:flex;flex-direction:column;gap:6px}.qo-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-2);border-radius:var(--r-sm);border:1px solid var(--border-2)}.qo-item-name{flex:1;font-size:13px;min-width:0;display:flex;flex-direction:column}.qo-item-sub{font-size:11px;color:var(--ink-4);font-family:var(--mono)}.qty-input{width:48px;border:1px solid var(--border);border-radius:4px;padding:4px 6px;font-size:12px;text-align:center;background:#fff;color:var(--ink);font-family:var(--mono)}.add-btn{background:var(--blue);color:#fff;border:none;border-radius:4px;width:28px;height:28px;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.add-btn:hover{background:var(--blue-d)}.qo-hint{font-size:12.5px;color:var(--ink-4);padding:6px 2px}.inv-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--border-2);font-size:13px}.inv-row:last-child{border-bottom:none}.inv-num{font-weight:500}.inv-date{color:var(--ink-4);font-size:12px}.inv-amount{font-weight:500;margin-left:auto}.pay-btn{font-size:12px;background:#fbeaf0;color:#993556;border:none;border-radius:4px;padding:3px 9px;cursor:pointer;font-weight:500;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.paid-tag{font-size:12px;background:var(--green-bg);color:#3b6d11;border-radius:4px;padding:3px 9px}.shop-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px;flex-wrap:wrap}.shop-title{font-size:20px;font-weight:600}.result-count{font-size:13px;color:var(--ink-3);margin-top:2px}.sort-row{display:flex;align-items:center;gap:8px;font-size:13px}.sort-select{border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 10px;font-size:13px;background:#fff;color:var(--ink);cursor:pointer;font-family:var(--font)}.view-toggle{display:flex;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.view-btn{padding:6px 10px;background:#fff;border:none;cursor:pointer;color:var(--ink-3);font-size:15px;display:flex;align-items:center}.view-btn.active{background:var(--blue);color:#fff}.category-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.pill{padding:6px 14px;border-radius:20px;font-size:12.5px;cursor:pointer;border:1px solid var(--border);background:#fff;color:var(--ink-2);white-space:nowrap;font-family:var(--font)}.pill:hover{border-color:var(--blue);color:var(--blue)}.pill.active{background:var(--blue);color:#fff;border-color:var(--blue)}.pill.active:hover{color:#fff}.pill-child{border-style:dashed}.pill-count{opacity:.6;font-size:11px}.filters-toggle{display:none;align-items:center;gap:6px;background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);padding:8px 14px;font-size:13px;color:var(--ink-2);cursor:pointer;margin-bottom:12px}.shop-body{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:start}.filters{display:flex;flex-direction:column;gap:14px}.trade-notice{background:var(--green-bg);border:1px solid #c0dd97;border-radius:var(--r-sm);padding:10px 14px;display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:#3b6d11}.trade-notice i{font-size:16px;margin-top:1px;flex-shrink:0}.filter-card{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:14px 16px;box-shadow:var(--shadow)}.filter-heading{font-size:11px;color:var(--ink-4);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.filter-heading button{font-size:11px;color:var(--blue);text-transform:none;letter-spacing:0;cursor:pointer;background:none;border:none}.detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px}.dm-item{background:var(--surf);border:1px solid var(--border);border-radius:var(--r);padding:12px 14px;display:flex;flex-direction:column;gap:3px}.dm-key{font-size:11px;color:var(--ink-4);text-transform:uppercase;letter-spacing:.7px}.dm-val{font-size:13.5px;font-weight:600;color:var(--ink)}.detail-totals{border-top:1px solid var(--border-2);padding:12px 16px;display:flex;flex-direction:column;gap:6px;align-items:flex-end}.detail-totals>div{display:flex;justify-content:space-between;gap:24px;min-width:240px;font-size:13px;color:var(--ink-2)}.detail-totals .grand{font-size:15px;font-weight:700;color:var(--ink);border-top:1px solid var(--border);padding-top:6px}.reorder-btn.big{background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:9px 16px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;text-decoration:none}.reorder-btn.big:hover{background:var(--blue-d);color:#fff}.clear-all-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;background:var(--surf);border:1px solid var(--border);border-radius:var(--r-sm);font-size:12.5px;font-weight:600;color:var(--blue);cursor:pointer}.clear-all-btn:hover{border-color:var(--blue);background:var(--blue-l)}.filter-option{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13px;color:var(--ink-2);cursor:pointer}.filter-option input[type=checkbox]{accent-color:var(--blue);cursor:pointer}.filter-option .count{color:var(--ink-5);font-size:12px;margin-left:auto}.filter-option.checked{color:var(--blue);font-weight:500}.price-range{display:flex;align-items:center;gap:8px;margin-top:6px}.price-input{width:72px;min-width:0;flex:1;border:1px solid var(--border);border-radius:5px;padding:5px 8px;font-size:12px;background:var(--bg-2);color:var(--ink);font-family:var(--font)}.price-sep{color:var(--ink-4);font-size:12px}.apply-btn{width:100%;background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:7px;font-size:12.5px;cursor:pointer;margin-top:10px}.apply-btn:hover{background:var(--blue-d)}.products{display:flex;flex-direction:column;gap:14px;min-width:0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.list-rows{display:flex;flex-direction:column;gap:8px}.product-card{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s;box-shadow:var(--shadow)}.product-card:hover{border-color:var(--blue)}.product-img{height:150px;background:var(--bg-2);display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid var(--border-2);overflow:hidden}.product-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.product-info{padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:6px}.product-sku{font-size:11px;color:var(--ink-4);font-family:var(--mono);min-height:14px}.product-name{font-size:13.5px;font-weight:500;color:var(--ink);line-height:1.4;flex:1}.product-name:hover{color:var(--blue)}.product-meta{font-size:11.5px;color:var(--ink-3)}.card-actions{display:flex;gap:7px;margin-top:4px;align-items:center}.add-cart-btn{flex:1;background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:8px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.add-cart-btn:hover{background:var(--blue-d);color:#fff}.add-cart-btn:disabled{opacity:.6;cursor:wait}.add-cart-btn.added{background:var(--green)}.add-cart-btn.quote-btn{background:#555}.add-cart-btn.quote-btn:hover{background:#333}.notify-btn{flex:1;background:var(--ink);color:#fff;border:none;border-radius:var(--r-sm);padding:8px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.notify-btn:hover{background:#000}.notify-btn:disabled{cursor:default}.notify-btn.done{background:var(--green-bg);color:var(--green)}.notify-btn-sm{flex:none;padding:5px 11px;font-size:12px;font-weight:600}.product-row{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);display:flex;align-items:center;gap:16px;padding:14px 16px;transition:border-color .15s;box-shadow:var(--shadow);flex-wrap:wrap}.product-row:hover{border-color:var(--blue)}.row-img{width:72px;height:72px;background:var(--bg-2);border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid var(--border-2);overflow:hidden}.row-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.row-info{flex:1;min-width:180px}.row-name{font-size:14px;font-weight:500;color:var(--ink);margin-bottom:3px;display:block}.row-name:hover{color:var(--blue)}.row-sku{font-size:12px;color:var(--ink-4);font-family:var(--mono);margin-bottom:5px}.row-price-col{text-align:right;margin-left:auto}.row-price-col .price-sub{justify-content:flex-end}.row-actions{display:flex;gap:7px;align-items:center;margin-left:16px}.row-actions .add-cart-btn{flex:none;padding:8px 14px}.product-grid{display:grid;grid-template-columns:260px minmax(0,1fr) 340px;grid-template-areas:"media sheet side" "details sheet side";grid-template-rows:auto 1fr;gap:16px;align-items:start}.pg-media{grid-area:media;display:flex;flex-direction:column;gap:14px}.pg-sheet{grid-area:sheet;display:flex;flex-direction:column;gap:14px;min-width:0}.pg-side{grid-area:side;display:flex;flex-direction:column;gap:14px;position:sticky;top:14px}.pg-details{grid-area:details;display:flex;flex-direction:column;gap:14px}.img-panel{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow)}.img-main{height:220px;background:var(--bg-2);display:flex;align-items:center;justify-content:center;position:relative}.img-main img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.img-badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;align-items:flex-start;gap:5px}.ibadge{font-size:10.5px;padding:2px 8px;border-radius:4px;font-weight:700;display:inline-block}.ib-blue{background:var(--blue);color:#fff}.name-block{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:14px 16px;box-shadow:var(--shadow)}.range-chip{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-family:var(--mono);color:var(--blue);background:var(--blue-l);padding:2px 9px;border-radius:4px;margin-bottom:8px;letter-spacing:.3px}.prod-name{font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-.3px;margin-bottom:8px}.prod-desc{font-size:12.5px;color:var(--ink-3);line-height:1.65;margin-bottom:10px;white-space:pre-line}.meta-row{display:flex;gap:6px;flex-wrap:wrap}.mpill{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;padding:3px 9px;border-radius:4px;border:1px solid var(--border);color:var(--ink-3);background:var(--bg-2)}.mpill.hi{background:var(--blue-l);border-color:var(--blue-m);color:var(--blue);font-weight:500}.specs-mini,.docs-block{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:14px 16px;box-shadow:var(--shadow)}.sm-grid{display:grid;grid-template-columns:1fr 1fr}.sm-row{display:flex;flex-direction:column;padding:7px 8px;border-bottom:1px solid var(--border-2)}.sm-row:nth-child(odd){border-right:1px solid var(--border-2)}.sm-row:nth-last-child(-n+2){border-bottom:none}.sm-key{font-size:11px;color:var(--ink-4);margin-bottom:2px}.sm-val{font-size:12.5px;font-weight:600}.sm-badge{display:inline-flex;align-items:center;gap:4px;background:var(--blue-l);color:var(--blue);padding:2px 8px;border-radius:4px;font-size:11.5px;font-weight:600}.doc-chips{display:flex;flex-direction:column;gap:6px}.doc-chip{display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r-sm);font-size:12.5px;color:var(--ink-2);cursor:pointer;transition:all .12s}.doc-chip:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-l)}.doc-chip i{color:var(--blue);font-size:15px;flex-shrink:0}.doc-chip .dc-meta{font-size:11px;color:var(--ink-4);margin-left:auto;font-family:var(--mono)}.length-panel{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow)}.lp-header{padding:12px 16px;border-bottom:1px solid var(--border-2);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.lp-title{font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:7px}.lp-title i{color:var(--blue)}.lp-hint{font-size:11.5px;color:var(--ink-4)}.lt-wrap{overflow-x:auto}.lt{width:100%;border-collapse:collapse;min-width:520px}.lt-head th{padding:8px 14px;font-size:11px;font-weight:600;color:var(--ink-4);text-align:left;text-transform:uppercase;letter-spacing:.6px;background:var(--bg-2);border-bottom:1px solid var(--border-2)}.lt-head th.num{text-align:right}.lt-row{border-bottom:1px solid var(--border-2);transition:background .1s}.lt-row:last-child{border-bottom:none}.lt-row:hover{background:var(--bg-2)}.lt-row td{padding:10px 14px;font-size:13px;vertical-align:middle}.lt-len{font-weight:700;font-family:var(--mono);font-size:13.5px}.lt-sku{font-size:11px;color:var(--ink-4);font-family:var(--mono);margin-top:1px}.lt-pc{text-align:right}.lt-pc .price-row{justify-content:flex-end}.lt-pc .trade-price{font-size:14.5px}.lt-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.lt-add{background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:5px 11px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:4px}.lt-add:hover{background:var(--blue-d)}.lt-add.added{background:var(--green)}.lt-poa{font-size:11.5px;color:var(--ink-4);white-space:nowrap}.lp-footer{padding:10px 16px;background:var(--bg-2);border-top:1px solid var(--border-2)}.lp-fnote{font-size:11.5px;color:var(--ink-4);display:flex;align-items:center;gap:5px}.lp-fnote i{color:var(--blue)}.single-buy{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.acc-panel{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow)}.acc-header{padding:12px 16px;background:linear-gradient(135deg,#163d80,var(--blue));color:#fff}.acc-header-l h3{font-size:13.5px;font-weight:700;margin-bottom:2px}.acc-header-l p{font-size:11.5px;opacity:.7}.acc-tabs{display:flex;background:var(--bg-2);border-bottom:1px solid var(--border-2);overflow-x:auto}.acc-tab{padding:8px 12px;font-size:12px;font-weight:500;color:var(--ink-3);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;white-space:nowrap;display:flex;align-items:center;gap:5px}.acc-tab.on{color:var(--blue);border-bottom-color:var(--blue);font-weight:700}.tab-n{background:var(--blue);color:#fff;font-size:10px;padding:1px 5px;border-radius:8px;font-family:var(--mono)}.acc-list{display:flex;flex-direction:column;max-height:420px;overflow-y:auto}.acc-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border-2);transition:background .1s}.acc-item:last-child{border-bottom:none}.acc-item:hover{background:var(--bg-2)}.acc-item.added{background:var(--blue-l)}.acc-img{width:40px;height:40px;border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--border-2);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.acc-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.acc-info{flex:1;min-width:0}.acc-sku{font-size:10px;color:var(--ink-4);font-family:var(--mono);margin-bottom:2px}.acc-name{font-size:12.5px;font-weight:600;margin-bottom:3px;line-height:1.3}.acc-why{font-size:11.5px;color:var(--ink-3);line-height:1.45}.acc-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px}.acc-bottom .trade-price{font-size:14px}.acc-actions{display:flex;align-items:center;gap:5px;margin-top:6px}.acc-add{flex:1;background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:5px 9px;font-size:11.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px}.acc-add:hover{background:var(--blue-d)}.acc-added{flex:1;background:var(--green-bg);color:var(--green);border:none;border-radius:var(--r-sm);padding:5px 9px;font-size:11.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px}.acc-poa{font-size:11.5px;color:var(--ink-4)}.acc-footer{padding:10px 14px;background:var(--bg-2);border-top:1px solid var(--border-2);display:flex;align-items:center;justify-content:space-between;gap:10px}.acc-footer-note{font-size:11.5px;color:var(--ink-4)}.acc-add-all{background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:7px 13px;font-size:12.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;white-space:nowrap}.acc-add-all:hover{background:var(--blue-d)}.order-panel{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);padding:16px;box-shadow:var(--shadow)}.op-title{font-size:10.5px;font-weight:700;color:var(--ink-4);text-transform:uppercase;letter-spacing:.8px;font-family:var(--mono);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.op-count{background:var(--blue);color:#fff;font-size:10px;padding:1px 7px;border-radius:10px}.op-empty{text-align:center;padding:14px 0;color:var(--ink-4);font-size:12.5px}.op-empty i{font-size:26px;display:block;margin-bottom:5px;color:var(--ink-5)}.cl{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-2)}.cl-info{flex:1;min-width:0}.cl-n{font-size:12.5px;font-weight:500}.cl-m{font-size:11px;color:var(--ink-4);font-family:var(--mono)}.cl-right{text-align:right}.cl-p{font-size:13px;font-weight:700;color:var(--blue);white-space:nowrap}.cl-rm{font-size:11px;color:var(--ink-4);cursor:pointer;margin-top:2px;background:none;border:none;padding:0;font-family:var(--font)}.cl-rm:hover{color:var(--red)}.op-tot-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.op-tot-l{font-size:12px;font-weight:600;color:var(--ink-2)}.op-tot-v{font-size:22px;font-weight:700;color:var(--blue)}.op-gst{font-size:11.5px;color:var(--ink-4);text-align:right;margin:2px 0 8px}.op-save{background:var(--amber-bg);color:var(--amber);font-size:12px;padding:5px 10px;border-radius:var(--r-sm);display:flex;align-items:center;gap:5px;font-weight:500;margin-bottom:12px}.ful-row{display:flex;flex-direction:column;gap:6px;margin:10px 0 12px}.frow{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--r-sm);border:1px solid var(--border);cursor:pointer;background:var(--bg-2);transition:all .12s;width:100%;text-align:left;font-family:var(--font)}.frow.on{border-color:var(--blue);background:var(--blue-l)}.fr-radio{width:13px;height:13px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color .12s;background:#fff}.frow.on .fr-radio{border-color:var(--blue)}.fr-dot{width:5px;height:5px;border-radius:50%;background:var(--blue);display:none}.frow.on .fr-dot{display:block}.fr-info{flex:1;display:flex;flex-direction:column;min-width:0}.fr-t{font-size:12px;font-weight:600;color:var(--ink)}.fr-s{font-size:11px;color:var(--ink-4)}.fr-tag{font-size:11px;padding:2px 7px;border-radius:4px;font-weight:600;flex-shrink:0;background:var(--bg-2);border:1px solid var(--border-2);color:var(--ink-3)}.fr-tag-free{background:var(--green-bg);color:var(--green);border-color:transparent}.charge-note{font-size:11px;color:var(--ink-4);text-align:center;display:flex;align-items:center;justify-content:center;gap:4px;margin-top:6px}.charge-note i{color:var(--green)}.acct-bar{background:var(--blue-l);border-radius:var(--r-sm);padding:9px 11px;display:flex;align-items:center;gap:9px;margin-top:10px}.ab-info{flex:1;min-width:0}.ab-name{font-size:12px;font-weight:600;color:var(--blue)}.ab-sub{font-size:11px;color:var(--ink-4)}.ab-credit{text-align:right}.ab-amt{font-size:13px;font-weight:700;color:var(--blue)}.ab-lbl{font-size:10.5px;color:var(--ink-4)}.rep-mini{display:flex;align-items:center;gap:9px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-2)}.rep-av{width:32px;height:32px;border-radius:50%;background:#1a1a1a;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rep-info{flex:1}.rep-name{font-size:12.5px;font-weight:600}.rep-role{font-size:11.5px;color:var(--ink-4)}.rep-btns{display:flex;gap:5px;margin-top:8px}.rep-btn{flex:1;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:6px;font-size:11.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;color:var(--ink-2)}.rep-btn:hover{background:var(--blue-l);color:var(--blue);border-color:var(--blue-m)}.below{margin-top:24px}.section-div{display:flex;align-items:center;gap:12px;margin-bottom:16px}.sd-line{flex:1;height:1px;background:var(--border)}.sd-label{font-size:11.5px;font-weight:700;color:var(--ink-4);text-transform:uppercase;letter-spacing:.9px;font-family:var(--mono);white-space:nowrap;display:flex;align-items:center;gap:5px}.prev-list{display:flex;flex-direction:column;gap:8px}.prev-row{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);display:flex;align-items:center;gap:12px;padding:11px 14px;transition:border-color .12s;box-shadow:var(--shadow);flex-wrap:wrap}.prev-row:hover{border-color:var(--blue)}.prev-img{width:46px;height:46px;background:var(--bg-2);border-radius:var(--r-sm);border:1px solid var(--border-2);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.prev-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.prev-info{flex:1;min-width:200px}.prev-name{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:3px;display:block}.prev-name:hover{color:var(--blue)}.prev-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.prev-last{font-size:11px;color:var(--ink-4);font-family:var(--mono);margin-top:2px}.prev-pc{text-align:right;flex-shrink:0}.prev-pc .price-row{justify-content:flex-end}.prev-pc .trade-price{font-size:14px}.prev-acts{display:flex;align-items:center;gap:6px;margin-left:10px;flex-shrink:0}.padd{background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);padding:7px 12px;font-size:12.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;white-space:nowrap}.padd:hover{background:var(--blue-d)}.cart-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.cart-lines{background:var(--surf);border-radius:var(--r);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden}.cart-line{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--border-2);flex-wrap:wrap}.cart-line:last-child{border-bottom:none}.cart-line-info{flex:1;min-width:160px}.cart-line-name{font-size:13.5px;font-weight:500}.cart-line-sku{font-size:11px;color:var(--ink-4);font-family:var(--mono);margin-top:1px}.cart-line-each{font-size:12px;color:var(--ink-3);margin-top:2px}.cart-line-total{font-size:14px;font-weight:700;color:var(--blue);min-width:88px;text-align:right}.cart-line-rm{background:none;border:none;color:var(--ink-4);font-size:16px;cursor:pointer;padding:4px}.cart-line-rm:hover{color:var(--red)}.cart-side{display:flex;flex-direction:column;gap:14px}.totals-panel .btn-p{margin-top:12px}.tot-line{display:flex;justify-content:space-between;font-size:13px;padding:5px 0;color:var(--ink-2)}.tot-grand{border-top:1px solid var(--border);margin-top:4px;padding-top:10px;font-size:15px;font-weight:700;color:var(--ink)}.totals-panel .op-save{margin:8px 0 0}@media (max-width: 1100px){.product-grid{grid-template-columns:260px minmax(0,1fr);grid-template-areas:"media sheet" "details sheet" "side side"}.pg-side{position:static}.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.dash-content{grid-template-columns:1fr}.dash-sidebar{order:2}.dash-main{order:1}.stats-row{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}.orders-grid{grid-template-columns:90px 1fr 80px 90px}.orders-grid>:nth-child(3),.orders-grid>:nth-child(4){display:none}.shop-body{grid-template-columns:1fr}.filters-toggle{display:inline-flex}.filters{display:none}.filters.open{display:flex}.product-grid{grid-template-columns:1fr;grid-template-areas:"media" "sheet" "side" "details"}.cart-grid{grid-template-columns:1fr}}@media (max-width: 600px){.stats-row,.grid-3{grid-template-columns:1fr}.welcome-bar{flex-direction:column;align-items:flex-start}.row-actions,.prev-acts{margin-left:0;width:100%;justify-content:flex-end}.row-price-col{text-align:left;margin-left:0}.row-price-col .price-sub,.row-price-col .price-row{justify-content:flex-start}.cart-line-total{min-width:0}}
