:root{--ink:#252742;--muted:#697187;--primary:#6d4aff;--primary-dark:#5333d6;--line:#e4e3ef;--bg:#f5f4fa;--sidebar:#1b2040;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);font:14px/1.5 'Segoe UI',Arial,sans-serif;color:var(--ink)}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-dark)}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{display:block;width:100%;border:1px solid #deddec;border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink);min-height:42px;outline:none}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6d4aff12}input:disabled{background:#f0eff7;color:#74788d}label{display:block;font-size:12px;font-weight:600;letter-spacing:.1px}label input,label select{margin-top:6px}h1,h2,h3,p{margin-top:0}h1{font-size:29px;font-weight:650;letter-spacing:-1px;margin-bottom:0}h2{font-size:17px;font-weight:650;letter-spacing:-.3px;margin-bottom:0}small,.small{font-size:11px}td small{display:block;color:var(--muted);margin-top:3px}.muted{color:var(--muted)}.eyebrow{color:var(--muted);letter-spacing:1.5px;font-size:10px;font-weight:700;margin-bottom:6px}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--sidebar);color:#e9eafa;padding:25px 17px 14px;overflow-y:auto;z-index:20;display:flex;flex-direction:column}.brand{font-size:26px;letter-spacing:-1px;color:#fff;display:flex;align-items:center;font-weight:650;margin:0 10px 27px}.brand>span:last-child{font-weight:350}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:#f5c56a;color:#302a45;width:36px;height:38px;border-radius:11px;font-size:24px;font-weight:800;margin-right:10px}.store-chip{display:flex;gap:10px;border:1px solid #3b4268;border-radius:10px;padding:12px;margin-bottom:24px;font-size:12px}.store-chip small{display:block;font-size:8px;letter-spacing:1.5px;color:#a8afce;margin-top:4px}.status-dot{width:7px;height:7px;background:#f5c56a;border-radius:50%;margin-top:6px}.nav-label{font-size:9px;letter-spacing:1.8px;color:#a8afce;margin:0 13px 8px}.sidebar nav a{display:flex;align-items:center;color:#c3c8df;padding:9px 13px;border-radius:8px;gap:12px;margin:3px 0;font-size:12px;transition:background .15s}.sidebar nav a:hover{background:#30385f;color:white}.sidebar nav a.active{background:#f5c56a;color:#282641;font-weight:650}.nav-icon{width:18px;font-size:18px;line-height:20px;text-align:center}.sidebar-bottom{margin-top:auto;padding:20px 12px 0;font-size:11px}.sidebar-bottom a{color:#c3c8df}.sidebar-bottom button{background:none;border:0;color:#c3c8df;padding:12px 0}.workspace{margin-left:230px}.topbar{height:80px;background:#fff;border-bottom:1px solid var(--line);padding:0 32px;display:flex;align-items:center;justify-content:space-between}.breadcrumb{font-size:11px;color:#737b91;margin:0;gap:12px}.breadcrumb strong{color:#4e5572;font-weight:500}.breadcrumb span{margin:0 12px}.topbar-right{display:flex;align-items:center;gap:11px;font-size:11px}.topbar-right small{display:block;color:var(--muted);font-size:9px}.today{margin-right:20px;color:var(--muted)}.avatar{height:34px;width:34px;border-radius:50%;background:#fff0ce;display:flex;align-items:center;justify-content:center;font-weight:700}main{padding:29px 32px;max-width:1900px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;font-size:12px;font-weight:600;padding:10px 16px;min-height:38px;border-radius:8px;border:1px solid #deddec;background:#fff;color:#4e5572;text-decoration:none;box-shadow:none}.btn:hover{background:#efecff;color:#5333d6}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-dark)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.small{padding:6px 10px;min-height:32px;font-size:11px}.full{width:100%}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:22px;min-width:0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:10px}.section-heading p{font-size:12px;margin:6px 0 0}.toolbar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:20px}.toolbar p{margin:auto auto auto 0}.toolbar label{min-width:150px}.toolbar input,.toolbar select{max-width:260px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:8px}.form-actions,.wide{grid-column:1/-1}.form-actions{border-top:1px solid var(--line);padding-top:18px;margin-top:4px}.check{display:flex;gap:8px;align-items:center;align-self:center}.check input{display:inline-block;width:16px;min-height:16px;accent-color:var(--primary);margin:0}.alert{padding:12px 16px;border-radius:9px;margin-bottom:18px;font-size:13px}.alert.error{background:#fff0ed;color:#a84131;border:1px solid #f5d7d0}.alert.success{background:#eaf6eb;color:#2b6c40;border:1px solid #d0e8d1}.table-wrap{overflow:auto;width:100%}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{background:#f7f6fc;color:#697187;font-size:10px;font-weight:600;letter-spacing:.3px;white-space:nowrap;padding:12px 13px;border-bottom:1px solid var(--line)}td{padding:14px 13px;border-bottom:1px solid #eeedf5;vertical-align:middle}tr:last-child td{border-bottom:0}td strong{font-weight:600}td input{min-width:75px}.empty{text-align:center;padding:46px 16px;color:var(--muted);font-size:12px}.badge{display:inline-block;font-size:10px;padding:5px 9px;border-radius:5px;background:#eeedf8;color:#626782;font-weight:500}.badge.good{background:#e6f5ef;color:#267255}.badge.warning{background:#fff0cc;color:#855b0a}.product-cell{display:flex;align-items:center;gap:12px;min-width:170px}.product-cell img{height:40px;width:40px;border-radius:9px;object-fit:cover}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:15px;font-size:11px;color:var(--muted)}.pagination>span{margin-right:auto}.tabs{display:flex;gap:9px;margin-bottom:22px;flex-wrap:wrap}.tabs a{padding:9px 16px;border-radius:8px;background:white;color:var(--muted);border:1px solid var(--line);font-size:12px}.tabs a.selected{background:var(--primary);color:white}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:20px}.metric{padding:23px;border-radius:var(--radius);border:1px solid var(--line);background:#fff}.metric-label{font-size:12px;color:#606783;display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.metric-label>span{font-size:20px;color:#6240bd;background:#e9e1ff;border-radius:8px;width:30px;text-align:center}.metric>strong{font-size:27px;font-weight:650;letter-spacing:-.7px;display:block}.metric>small{color:#747b90;font-size:10px}.metric.green{background:#f0eaff;border-color:#dfd2ff}.metric.green>strong{color:#5635ae}.metric.blue .metric-label>span{background:#deebff;color:#3267b3}.metric.purple .metric-label>span{background:#d9f3e9;color:#22765c}.metric.orange .metric-label>span{background:#ffe9b7;color:#976512}.mini-metrics{display:flex;gap:0;border:1px solid var(--line);background:white;border-radius:12px;margin-bottom:22px}.mini-metrics>div,.mini-metrics>a{flex:1;padding:17px 20px;border-right:1px solid var(--line);color:var(--ink)}.mini-metrics> :last-child{border:0}.mini-metrics span{display:block;color:var(--muted);font-size:10px}.mini-metrics strong{display:block;font-size:20px;margin-top:5px;font-weight:600}.dashboard-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:11px}.stat-row span{color:var(--muted)}.stat-row strong{font-size:13px;font-weight:600}.sales-chart{display:flex;align-items:flex-end;gap:18px;height:230px;padding:15px 8px 10px;overflow-x:auto;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 48px,#eceaf5 49px,#eceaf5 50px)}.chart-column{text-align:center}.chart-column small{display:block;color:#717a91;font-size:9px;white-space:nowrap;margin-top:9px}.app-footer{display:flex;justify-content:space-between;padding:15px 32px 25px;color:#747c92;font-size:10px}.menu-toggle{display:none}.result-row{display:flex;width:100%;gap:16px;justify-content:space-between;padding:15px;border:1px solid var(--line);border-radius:8px;margin:8px 0;font-size:12px;color:var(--ink);background:#fff}.result-row span{color:var(--muted)}
/* POS workspace */
.pos-layout{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(540px,1.5fr);gap:20px}.pos-layout .panel{padding:18px}.scanner-label{font-size:10px;color:var(--muted)}#barcode-input{border:1.5px solid var(--primary);background:#f6f2ff}.product-search{display:flex;gap:8px;margin:12px 0 18px}.product-search input{min-width:0;font-size:11px}.product-search select{width:125px;font-size:10px}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:670px;overflow:auto}.product-tile{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;text-align:left;min-width:0}.product-tile:hover{border-color:var(--primary);background:#faf8ff}.product-tile img{width:100%;height:90px;object-fit:contain;border-radius:6px;margin-bottom:8px}.tile-category{display:block;text-transform:uppercase;font-size:8px;letter-spacing:.7px;color:var(--muted)}.product-tile strong{display:block;font-size:12px;margin:4px 0 10px;line-height:1.35}.product-tile>div{display:flex;justify-content:space-between;gap:4px;align-items:center}.product-tile b{font-size:12px;color:var(--primary)}.product-tile small{font-size:8px;color:var(--muted)}.customer-picker{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.customer-picker input{flex:1;font-size:11px;min-width:120px}.customer-picker select{flex:1;font-size:11px;min-width:130px}.cart-table{font-size:10px}.cart-table th{padding:10px 5px;font-size:9px}.cart-table td{padding:13px 5px}.cart-table td:first-child{min-width:105px}.cart-table td small{font-size:8px}.cart-table td input,.cart-table select{padding:5px;min-height:30px;min-width:57px;font-size:10px;border-radius:5px}.cart-table .batch-input{margin-top:6px}.qty-control{display:flex;align-items:center;gap:2px}.qty-control button{width:20px;border:0;border-radius:4px;background:#eee8ff;color:#6240bd;padding:2px;font-size:12px}.qty-control input{width:49px;min-width:49px!important;text-align:center;appearance:textfield}.qty-control input::-webkit-inner-spin-button{appearance:none}.cart-table .line-total{font-weight:650;white-space:nowrap}.remove-item{border:0;background:#fff1ed;color:#b07365;border-radius:4px;font-size:16px;width:22px}.cart-wrap{min-height:230px}.cart-bottom{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--line);margin-top:16px;padding-top:18px}.cart-options label{max-width:180px}.cart-options .toolbar{margin-top:12px;gap:7px}.cart-options p{line-height:1.8;font-size:9px}.cart-summary>div{display:flex;justify-content:space-between;font-size:10px;margin-bottom:7px}.cart-summary span{color:var(--muted)}.cart-summary strong{font-weight:600}.cart-summary .grand{border-top:1px solid var(--line);padding-top:12px;font-size:15px}.grand span{color:var(--ink)}.pay-button{width:100%;margin-top:20px;font-size:16px;min-height:54px;justify-content:space-between}.pay-button>span{margin-left:auto;margin-right:12px}dialog{border:0;border-radius:15px;box-shadow:0 20px 90px #20204430;padding:26px;width:540px;max-width:95vw;max-height:92vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#151a3c88;backdrop-filter:blur(3px)}dialog label{margin-bottom:15px}dialog .form-grid{grid-template-columns:1fr 1fr;gap:10px}.payment-total{font-size:40px;font-weight:650;text-align:center;margin:20px 0;color:var(--primary)}.payment-presets{display:flex;gap:7px;margin-bottom:20px;flex-wrap:wrap}.payment-change{color:var(--muted);font-size:12px;padding:10px}.payment-change strong{display:block;font-size:24px;color:var(--primary)}
/* Complementary dashboard accents */
.metric.blue{background:#edf4ff;border-color:#d5e3fa}.metric.blue>strong{color:#2f5fa5}.metric.purple{background:#eaf7f1;border-color:#cde9dd}.metric.purple>strong{color:#256c54}.metric.orange{background:#fff4df;border-color:#f4dfb4}.metric.orange>strong{color:#895d12}
.sidebar{background:linear-gradient(180deg,#1b2040 0%,#262044 100%)}.login-story{background:linear-gradient(145deg,#1b2040 0%,#3c286c 100%)}.brand:hover{color:#f5c56a}.panel{box-shadow:0 3px 16px #26204404}
.login-page{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh;background:#fff}.login-story{background:#202548;color:#f7f3ff;padding:70px 12%;display:flex;flex-direction:column;justify-content:center}.login-story .brand-mark{margin-bottom:70px;width:52px;height:55px;font-size:35px}.login-story h1{font-size:56px;line-height:1.15;letter-spacing:-2.5px;font-weight:500;margin-bottom:30px}.login-story p{color:#c1c7e2;font-size:18px;line-height:1.8}.story-foot{margin-top:90px;font-size:9px;letter-spacing:2px;color:#afb8db}.login-panel{align-self:center;padding:60px 15%;max-width:630px}.login-panel h2{font-size:26px;margin:12px 0}.login-panel form{margin-top:35px}.login-panel label{margin-bottom:22px}.login-panel .small{margin-top:22px;font-size:10px}#label-sheet{display:none}.barcode-label{width:50mm;height:30mm;border:1px dashed #ddd;padding:2mm;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;font-family:Arial,sans-serif;font-size:9px;break-inside:avoid;background:white;color:black}.barcode-label strong{font-size:9px;white-space:nowrap;max-width:100%;overflow:hidden}.barcode-label svg{height:11mm;width:44mm;margin-top:1mm;flex-shrink:0}.barcode-label small{font-size:8px}.label-size-38 .barcode-label{width:38mm;height:25mm;padding:1mm}.label-size-38 .barcode-label svg{width:34mm;height:9mm}
@media(min-width:1600px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1250px){.sidebar{width:205px}.workspace{margin-left:205px}main{padding:24px 20px}.topbar{padding:0 20px}.pos-layout{grid-template-columns:1fr}.catalogue .product-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-height:250px}.metrics{gap:12px}.metric{padding:17px}.metric>strong{font-size:23px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:transform .2s}.workspace{margin-left:0}.menu-toggle{display:inline-flex}.menu-open .sidebar{transform:translateX(0);box-shadow:0 0 0 100vmax #151a3c66}.menu-open .menu-toggle{position:relative;z-index:25;margin-left:205px}.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.today{display:none}.mini-metrics{flex-wrap:wrap}.mini-metrics>div,.mini-metrics>a{min-width:130px}.login-story{padding:50px 12%}.login-story h1{font-size:40px}.login-panel{padding:45px 12%}}@media(max-width:600px){main{padding:20px 12px}.topbar{height:66px;padding:0 12px}.breadcrumb{display:none}.page-heading{gap:10px}h1{font-size:24px}.form-grid{grid-template-columns:1fr}.panel{padding:16px}.toolbar label{min-width:120px}.toolbar .btn{align-self:flex-end}.topbar-right{margin-left:auto}.catalogue .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-tile img{height:60px}.product-tile>div{display:block}.pos-layout{display:block}.cart-bottom{gap:15px}.metrics .metric{padding:15px}.metric>strong{font-size:22px}.login-page{display:block}.login-story{padding:30px}.login-story .brand-mark{margin-bottom:25px}.login-story h1{font-size:32px}.login-story p,.story-foot{display:none}.login-panel{padding:40px 30px}.app-footer span{display:none}.result-row{flex-wrap:wrap}.mini-metrics>div,.mini-metrics>a{padding:12px}.product-search{flex-wrap:wrap}.product-search select{width:100%}}@media print{body{background:white;font-size:10px}.sidebar,.topbar,.app-footer,.page-heading>.btn,.toolbar,.pagination,.menu-toggle,.form-grid,.tabs{display:none!important}.workspace{margin:0}main{padding:0;max-width:none}.panel{border:0;padding:0;box-shadow:none}.table-wrap{overflow:visible}th,td{padding:7px 4px}thead{display:table-header-group}tr{break-inside:avoid}.printing-labels .sidebar,.printing-labels .workspace{display:none!important}.printing-labels #label-sheet{display:flex!important;flex-wrap:wrap;position:absolute;top:0;left:0}.printing-labels .workspace:has(#label-sheet){display:block!important}.printing-labels main>*:not(#label-sheet){display:none!important}.printing-labels main{padding:0}.printing-labels main #label-sheet{display:flex!important}@page{size:A4;margin:8mm}}
