*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f5f3ee;--bg2: #ffffff;--bg3: #eae8e3;--bg4: #dedad3;--text: #1a1a1a;--text2: #5a5955;--text3: #8a8780;--border: #e8e5df;--border2: #dedad3;--border3: #ccc8c0;--accent: #1a1a1a;--accent-bg: rgba(26,26,26,.06);--sidebar-bg: #1a1a1a;--sidebar-text: #f5f3ee;--sidebar-muted: #6a6a6a;--sidebar-hover: rgba(255,255,255,.08);--sidebar-active: rgba(255,255,255,.12);--green: #2d6a4f;--green-bg: rgba(45,106,79,.08);--red: #dc3d3d;--red-bg: rgba(220,61,61,.06);--yellow: #c27a1e;--yellow-bg: rgba(194,122,30,.06);--orange: #c27a1e;--orange-bg: rgba(194,122,30,.06);--blue: #3b6fc0;--blue-bg: rgba(59,111,192,.06);--purple: #7c5cbf;--purple-bg: rgba(124,92,191,.06);--radius: 6px;--radius-lg: 10px;--font-heading: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-body: "Lexend", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--sans: "Lexend", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--mono: "JetBrains Mono", "SF Mono", "Menlo", "Consolas", monospace}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01","ss03"}.num,[class*=num],.tbl td,code,pre{font-feature-settings:"tnum" 1,"cv11" 1;font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border3)}input,select,textarea{font-family:var(--sans);font-size:13px;background:var(--bg2);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:8px 11px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%}input:hover,select:hover,textarea:hover{border-color:var(--border2)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}input::placeholder,textarea::placeholder{color:var(--text3)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input[type=date]{font-family:var(--font-body);background:var(--bg2);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:8px 12px;font-size:13px;outline:none;transition:border-color .15s;color-scheme:light;cursor:pointer}input[type=date]:hover{border-color:var(--border2)}input[type=date]:focus{border-color:var(--accent)}input[type=date]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer;margin-left:4px}input[type=date]:hover::-webkit-calendar-picker-indicator{opacity:1}input[type=date]::-webkit-datetime-edit{color:var(--text)}input[type=date]::-webkit-datetime-edit-fields-wrapper{color:var(--text)}input[type=date]::-webkit-datetime-edit-text{color:var(--text3);padding:0 2px}select option{background:var(--bg2);color:var(--text)}button{font-family:var(--sans);cursor:pointer;border:none;transition:all .12s;font-size:13px}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:var(--radius);font-weight:500}.btn-primary{background:var(--accent);color:var(--sidebar-text)}.btn-primary:hover{background:#000}.btn-ghost{background:var(--bg2);color:var(--text);border:1px solid var(--border)}.btn-ghost:hover{background:var(--bg3);border-color:var(--border2)}.btn-danger{background:var(--red-bg);color:var(--red);border:1px solid var(--red-bg)}.btn-danger:hover{background:#dc3d3d1f}.btn-google{background:#fff;color:#333;border:1px solid var(--border)}.btn-google:hover{background:var(--bg3)}.btn-sm{padding:5px 10px;font-size:12px}.card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-lg)}.tag{display:inline-flex;align-items:center;padding:2px 7px;border-radius:20px;font-size:11px;font-weight:500;font-family:var(--mono)}.tag-green{background:var(--green-bg);color:var(--green)}.tag-red{background:var(--red-bg);color:var(--red)}.tag-blue{background:var(--blue-bg);color:var(--blue)}.tag-yellow{background:var(--yellow-bg);color:var(--yellow)}.tag-gray{background:var(--bg3);color:var(--text2)}.page{padding:28px 32px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.page-title{font-family:var(--font-heading);font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.card-title{font-family:var(--font-heading);font-weight:600}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:600;color:var(--text)}nav button{font-family:var(--font-heading)}.page-sub{font-size:13px;color:var(--text2);margin-top:2px}.page-actions{display:flex;gap:8px;align-items:center}.form-field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.form-label{font-size:12px;font-weight:500;color:var(--text2)}.form-hint{font-size:11px;color:var(--text3);margin-top:3px;line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-section{font-size:11px;font-weight:600;color:var(--text3);letter-spacing:.07em;text-transform:uppercase;padding-bottom:8px;border-bottom:1px solid var(--border);margin:20px 0 14px}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;width:500px;max-width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000014}.modal-title{font-size:16px;font-weight:600;letter-spacing:-.01em;margin-bottom:20px;color:var(--text)}.modal-footer{display:flex;gap:8px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{text-align:right;padding:11px 12px;color:var(--text3);font-size:11px;font-weight:500;letter-spacing:0;border-bottom:1px solid var(--border);white-space:nowrap;font-family:var(--font-body)}.tbl th:first-child{text-align:left}.tbl td{text-align:right;padding:11px 12px;border-bottom:1px solid var(--border);color:var(--text);font-family:var(--font-body);font-size:13px;white-space:nowrap;font-variant-numeric:tabular-nums}.tbl td:first-child{text-align:left;font-variant-numeric:normal}.tbl tr:last-child td{border-bottom:none}.tbl tbody tr{transition:background-color .08s}.tbl tbody tr:hover td{background:var(--bg3)}.tbl .pos{color:var(--green);font-weight:500}.tbl .neg{color:var(--red);font-weight:500}.tbl .dim{color:var(--text3)}.tbl .dash{color:var(--text3);font-weight:400}.pp-page button{transition:background .15s ease,color .15s ease,border-color .15s ease,opacity .15s ease,transform .12s ease}.pp-check{width:15px;height:15px;cursor:pointer;accent-color:var(--green);transition:transform .12s ease}.pp-check:hover:not(:disabled){transform:scale(1.2)}.pp-check:disabled{cursor:default;opacity:.35}.pp-row td{transition:background-color .15s ease,box-shadow .15s ease}.pp-row-selected td{background:#4ade8012}.pp-row-selected td:first-child{box-shadow:inset 3px 0 0 var(--green)}.pp-row-selected:hover td{background:#4ade801f}.pp-bulkbar{animation:pp-bar-in .18s ease-out}@keyframes pp-bar-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.pp-actionbtn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.15)}.pp-actionbtn:active:not(:disabled){transform:translateY(0)}.sparkline{width:100%;height:32px;display:block;opacity:.85}.product-thumb{width:36px;height:36px;border-radius:var(--radius);object-fit:cover;flex-shrink:0;border:1px solid var(--border);background:var(--bg3)}.skeleton{background:linear-gradient(90deg,var(--bg3) 0%,var(--bg4) 50%,var(--bg3) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:var(--radius)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-row{height:14px;margin:6px 0}.skeleton-tr td{padding:12px}.skeleton-tr .skeleton{height:12px}.tag-green:before{content:"▴ ";font-size:9px}.tag-red:before{content:"▾ ";font-size:9px}@media print{html,body{background:#fff!important}body{color:#1a1a1a!important}.no-print,.app-sidebar,.app-topbar,.app-sidebar-backdrop{display:none!important}.app-main{margin-left:0!important;padding:0!important}.modal-bg{position:static!important;background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0!important;display:block!important}.invoice-modal{max-height:none!important;overflow:visible!important;box-shadow:none!important;width:100%!important}.invoice-print-target{border-radius:0!important;overflow:visible!important}.invoice-document{padding:32px 36px!important;width:100%!important;max-width:100%!important}@page{margin:16mm 14mm;size:A4 portrait}}.sticky-save{position:sticky;bottom:0;background:linear-gradient(to top,var(--bg) 60%,rgba(245,243,238,0));padding:16px 0 12px;display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.app-topbar,.app-sidebar-backdrop{display:none}@media (max-width: 1024px) and (min-width: 769px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.pl-chart-grid,.bulk-form-grid{grid-template-columns:1fr!important}.summary-grid-4{grid-template-columns:repeat(4,1fr)!important}.filter-grid-4{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){body{font-size:14px}button,.btn{min-height:44px}.btn-sm{min-height:36px}input,select,textarea{font-size:14px;min-height:40px}input[type=date]{min-height:40px}html,body{overflow-x:hidden;max-width:100vw}.app-topbar{display:flex;position:fixed;top:0;left:0;right:0;height:54px;background:var(--bg2);border-bottom:1px solid var(--border);align-items:center;padding:0 12px;gap:10px;z-index:110}.app-topbar-brand{font-family:var(--font-heading);font-size:15px;font-weight:600;color:var(--text)}.app-topbar-store{flex:1;text-align:right;font-size:12px;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-hamburger{width:44px;height:44px;min-height:44px;background:transparent;border:none;color:var(--text);display:flex;align-items:center;justify-content:center;border-radius:8px}.app-hamburger:hover{background:var(--bg3)}.app-sidebar{width:240px!important;transform:translate(-100%);transition:transform .25s ease;z-index:120!important}.app-sidebar.open{transform:translate(0)}.app-sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:115;opacity:0;pointer-events:none;transition:opacity .2s ease}.app-sidebar-backdrop.open{opacity:1;pointer-events:auto}.app-sidebar nav button{min-height:44px;font-size:14px!important;padding:10px 12px!important}.app-main{margin-left:0!important;padding-top:54px!important;width:100%;min-width:0}.page{padding:14px 12px!important}.page-header{flex-direction:column!important;align-items:stretch!important;gap:12px}.page-actions{flex-wrap:wrap;gap:6px}.page-title{font-size:18px!important}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pl-chart-grid,.summary-grid-3{grid-template-columns:1fr!important}.summary-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}.filter-grid-4{grid-template-columns:1fr!important;gap:14px}.bulk-form-grid,.form-row,.grid-1fr-120,.grid-1fr-1fr{grid-template-columns:1fr!important}.pp-search-bar{flex-wrap:wrap}.mobile-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.mobile-table-wrap table{min-width:700px}.sticky-col-1 th:first-child,.sticky-col-1 td:first-child{position:sticky;left:0;z-index:2;background:var(--bg2);box-shadow:1px 0 0 var(--border)}.sticky-col-1 tr:hover td:first-child{background:var(--bg3)}.sticky-col-2 th:first-child,.sticky-col-2 td:first-child{position:sticky;left:0;z-index:2;background:var(--bg2)}.sticky-col-2 th:nth-child(2),.sticky-col-2 td:nth-child(2){position:sticky;left:56px;z-index:2;background:var(--bg2);box-shadow:1px 0 0 var(--border);max-width:180px}.sticky-col-2 tr:hover td:first-child,.sticky-col-2 tr:hover td:nth-child(2){background:var(--bg3)}.modal{width:100%!important;max-width:100vw!important;border-radius:0!important;max-height:100vh!important}.modal-bg{padding:0!important}.login-card,.picker-card{width:100%!important;max-width:420px;padding:20px!important}.cogs-action-row{flex-direction:column;align-items:stretch!important}.cogs-action-row>*{width:100%}}
