@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--yellow-primary:#ffd600;--yellow-hover:#ffc700;--yellow-light:#fff9cc;--yellow-soft:#fffbe6;--bg-main:#f5f5f5;--bg-sidebar:#fff;--bg-card:#fff;--bg-modal:#fff;--text-primary:#1a1a1a;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--text-on-yellow:#1a1a1a;--border-color:#e5e7eb;--border-light:#f3f4f6;--green-positive:#10b981;--green-light:#d1fae5;--red-negative:#ef4444;--red-light:#fee2e2;--blue-info:#3b82f6;--blue-light:#dbeafe;--orange-warn:#f59e0b;--orange-light:#fef3c7;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 30px #0000001f;--shadow-xl:0 20px 50px #00000026;--sidebar-width:240px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;font-size:14px}body{background:var(--bg-main);color:var(--text-primary);height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;overflow:hidden}#root{height:100vh;display:flex}.app-layout{width:100%;height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-color);z-index:100;flex-direction:column;height:100vh;padding:0;transition:transform .3s;display:flex;overflow:hidden;box-shadow:2px 0 8px #0000000a}.sidebar-header{border-bottom:1px solid var(--border-light);padding:20px 16px 16px}.sidebar-logo{align-items:center;gap:10px;margin-bottom:16px;display:flex}.logo-badge{background:var(--yellow-primary);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:800;display:flex}.logo-text{flex-direction:column;display:flex}.logo-store-name{color:var(--text-primary);font-size:13px;font-weight:700;line-height:1.2}.logo-store-sub{color:var(--text-tertiary);font-size:11px}.btn-new-sale{background:var(--yellow-primary);width:100%;color:var(--text-on-yellow);border-radius:var(--radius-sm);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 14px;font-family:Inter,sans-serif;font-size:12.5px;font-weight:600;transition:all .2s;display:flex}.btn-new-sale:hover{background:var(--yellow-hover);transform:translateY(-1px);box-shadow:0 4px 12px #ffd60066}.btn-new-sale:active{transform:translateY(0)}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:8px;display:flex;overflow-y:auto}.nav-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s;display:flex;position:relative}.nav-item:hover{background:var(--yellow-soft);color:var(--text-primary)}.nav-item.active{background:var(--yellow-light);color:var(--text-primary);font-weight:600}.nav-item.active .nav-icon{color:var(--text-primary)}.nav-icon{flex-shrink:0;width:18px;height:18px;transition:color .2s}.nav-item.active:before{content:"";background:var(--yellow-primary);border-radius:0 2px 2px 0;width:3px;height:60%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.sidebar-footer{border-top:1px solid var(--border-light);padding:12px}.main-content{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.page-wrapper{flex:1;padding:24px 24px 90px;overflow-y:auto}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.page-title{color:var(--text-primary);font-size:22px;font-weight:700}.page-subtitle{color:var(--text-secondary);margin-top:2px;font-size:13px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}.stat-card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);cursor:default;padding:20px;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.stat-card-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.stat-card-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;display:flex}.stat-card-icon.yellow{background:var(--yellow-light);color:#b7860d}.stat-card-icon.green{background:var(--green-light);color:var(--green-positive)}.stat-card-icon.red{background:var(--red-light);color:var(--red-negative)}.stat-card-value{color:var(--text-primary);margin-bottom:6px;font-size:26px;font-weight:800;line-height:1}.stat-card-delta{align-items:center;gap:4px;font-size:11.5px;font-weight:500;display:flex}.stat-card-delta.positive{color:var(--green-positive)}.stat-card-delta.negative{color:var(--red-negative)}.stat-card-delta.neutral{color:var(--text-tertiary)}.filter-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.search-input-wrap{flex:1;min-width:200px;position:relative}.search-icon{color:var(--text-tertiary);width:15px;height:15px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-input{border:1.5px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:var(--bg-card);outline:none;padding:9px 12px 9px 32px;font-family:Inter,sans-serif;font-size:13px;transition:border-color .2s}.search-input:focus{border-color:var(--yellow-primary);box-shadow:0 0 0 3px #ffd60026}.filter-chip{border-radius:var(--radius-full);border:1.5px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap;padding:8px 14px;font-family:Inter,sans-serif;font-size:12.5px;font-weight:500;transition:all .2s}.filter-chip:hover{border-color:var(--yellow-primary);background:var(--yellow-soft);color:var(--text-primary)}.filter-chip.active{background:var(--yellow-primary);border-color:var(--yellow-primary);color:var(--text-on-yellow);font-weight:600}.table-card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);overflow:hidden}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%}thead{background:var(--bg-main);border-bottom:1px solid var(--border-color)}th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap;padding:11px 16px;font-size:11px;font-weight:600}td{color:var(--text-primary);border-bottom:1px solid var(--border-light);vertical-align:middle;padding:13px 16px;font-size:13px}tr:last-child td{border-bottom:none}tbody tr{transition:background .15s}tbody tr:hover{background:var(--bg-main)}.amount-positive{color:var(--green-positive);font-weight:600}.amount-negative{color:var(--red-negative);font-weight:600}.amount-neutral{color:var(--text-primary);font-weight:600}.badge{border-radius:var(--radius-full);align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-green{background:var(--green-light);color:var(--green-positive)}.badge-red{background:var(--red-light);color:var(--red-negative)}.badge-yellow{background:var(--yellow-light);color:#8b6d00}.badge-blue{background:var(--blue-light);color:var(--blue-info)}.badge-gray{background:var(--border-light);color:var(--text-secondary)}.badge-orange{background:var(--orange-light);color:var(--orange-warn)}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;outline:none;align-items:center;gap:6px;padding:9px 16px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--yellow-primary);color:var(--text-on-yellow)}.btn-primary:hover{background:var(--yellow-hover);transform:translateY(-1px);box-shadow:0 4px 12px #ffd60059}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1.5px solid var(--border-color)}.btn-secondary:hover{border-color:var(--yellow-primary);background:var(--yellow-soft)}.btn-ghost{color:var(--text-secondary);background:0 0;padding:6px 8px}.btn-ghost:hover{background:var(--bg-main);color:var(--text-primary)}.btn-danger{background:var(--red-light);color:var(--red-negative)}.btn-danger:hover{background:var(--red-negative);color:#fff}.btn-sm{padding:6px 12px;font-size:12px}.btn-icon{border-radius:var(--radius-sm);justify-content:center;width:32px;height:32px;padding:0}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000059;justify-content:flex-end;animation:.2s overlayIn;display:flex;position:fixed;inset:0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal-panel{background:var(--bg-modal);width:420px;max-width:100vw;height:100vh;box-shadow:var(--shadow-xl);flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) panelIn;display:flex}@keyframes panelIn{0%{transform:translate(100%)}to{transform:translate(0)}}.modal-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{color:var(--text-primary);font-size:16px;font-weight:700}.modal-body{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);background:var(--bg-modal);flex-shrink:0;gap:10px;padding:16px 24px 28px;display:flex}.modal-footer .btn{flex:1;justify-content:center}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;font-size:12px;font-weight:600}.form-control{border:1.5px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:var(--bg-card);outline:none;padding:10px 12px;font-family:Inter,sans-serif;font-size:13px;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--yellow-primary);box-shadow:0 0 0 3px #ffd60026}.form-control::placeholder{color:var(--text-tertiary)}select.form-control{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;padding-right:32px}textarea.form-control{resize:vertical;min-height:80px}.payment-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.payment-option{border:1.5px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;text-align:center;background:var(--bg-card);flex-direction:column;align-items:center;gap:4px;padding:10px 6px;transition:all .2s;display:flex}.payment-option:hover{border-color:var(--yellow-primary);background:var(--yellow-soft)}.payment-option.selected{border-color:var(--yellow-primary);background:var(--yellow-light)}.payment-option .icon{font-size:18px}.payment-option .label{color:var(--text-secondary);font-size:11px;font-weight:500}.payment-option.selected .label{color:var(--text-primary);font-weight:600}.pos-layout{gap:20px;height:calc(100vh - 80px);display:flex}.product-catalog{flex-direction:column;flex:1;display:flex;overflow:hidden}.category-bar{scrollbar-width:none;gap:8px;margin-bottom:16px;padding-bottom:4px;display:flex;overflow-x:auto}.category-bar::-webkit-scrollbar{display:none}.product-grid{padding-right:6px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))!important;align-content:start!important;gap:16px!important;max-height:calc(100vh - 200px)!important;display:grid!important;overflow-y:auto!important}.product-card{background:var(--bg-card);border:1.5px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;gap:6px;padding:10px;transition:all .2s;position:relative;overflow:hidden;box-sizing:border-box!important;flex-direction:column!important;justify-content:space-between!important;height:100%!important;min-height:155px!important;display:flex!important}.product-card:hover{border-color:var(--yellow-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.product-card.out-of-stock{opacity:.5;cursor:not-allowed}.product-card.out-of-stock:hover{border-color:var(--border-color);box-shadow:none;transform:none}.product-img{aspect-ratio:1;object-fit:cover;background:var(--bg-main);width:100%}.product-img-placeholder{border-radius:var(--radius-sm);background:linear-gradient(135deg,#f3f4f6,#e5e7eb);flex-shrink:0;justify-content:center;align-items:center;width:100%;height:60px;font-size:28px;display:flex}.product-info,.product-details{flex-direction:column;gap:2px;display:flex}.product-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:13px;font-weight:600;line-height:1.3;overflow:hidden}.product-price{color:var(--text-primary);font-size:13px;font-weight:700;line-height:1.2}.product-stock{color:var(--text-tertiary);font-size:11px;line-height:1.2}.product-card-added{background:var(--yellow-primary);color:var(--text-on-yellow);width:22px;height:22px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;position:absolute;top:6px;right:6px}.cart-panel{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);width:320px;min-width:280px;box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.cart-header{border-bottom:1px solid var(--border-color);padding:16px 18px}.cart-title{align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.cart-items{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.cart-item{background:var(--bg-main);border-radius:var(--radius-sm);border:1px solid var(--border-light);align-items:center;gap:10px;padding:10px 12px;display:flex}.cart-item-info{flex:1;min-width:0}.cart-item-name{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.cart-item-price{color:var(--text-secondary);font-size:12px}.cart-qty-controls{align-items:center;gap:6px;display:flex}.qty-btn{border:1.5px solid var(--border-color);background:var(--bg-card);cursor:pointer;width:24px;height:24px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:600;transition:all .15s;display:flex}.qty-btn:hover{background:var(--yellow-primary);border-color:var(--yellow-primary);color:var(--text-on-yellow)}.qty-value{text-align:center;min-width:16px;font-size:13px;font-weight:700}.cart-summary{border-top:1px solid var(--border-color);background:var(--bg-card);padding:16px 18px 24px}.cart-total-row{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.cart-total-label{color:var(--text-secondary);font-size:13px;font-weight:500}.cart-total-value{color:var(--text-primary);font-size:22px;font-weight:800}.cart-empty{color:var(--text-tertiary);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:40px 20px;display:flex}.cart-empty-icon{opacity:.3;font-size:48px}.product-thumb{border-radius:var(--radius-sm);object-fit:cover;background:var(--bg-main);flex-shrink:0;width:40px;height:40px}.product-thumb-placeholder{border-radius:var(--radius-sm);background:linear-gradient(135deg,#f0f0f0,#e0e0e0);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.product-name-cell{align-items:center;gap:10px;display:flex}.stock-indicator{align-items:center;gap:6px;display:flex}.stock-dot{border-radius:50%;width:8px;height:8px}.stock-dot.ok{background:var(--green-positive)}.stock-dot.low{background:var(--orange-warn)}.stock-dot.out{background:var(--red-negative)}.editable-cell{align-items:center;gap:6px;display:flex}.inline-input{border:1.5px solid var(--border-color);border-radius:var(--radius-sm);text-align:right;outline:none;width:80px;padding:5px 8px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;transition:border-color .2s}.inline-input:focus{border-color:var(--yellow-primary);box-shadow:0 0 0 2px #ffd60026}.upload-zone{border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;cursor:pointer;padding:32px;transition:all .2s}.upload-zone:hover{border-color:var(--yellow-primary);background:var(--yellow-soft)}.upload-zone-icon{margin-bottom:8px;font-size:36px}.upload-zone p{color:var(--text-secondary);font-size:13px}.upload-zone span{color:var(--yellow-primary);font-weight:600}.client-avatar{background:var(--yellow-light);color:#8b6d00;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 40px;display:flex}.empty-state-icon{opacity:.25;font-size:52px}.empty-state-title{color:var(--text-primary);font-size:16px;font-weight:700}.empty-state-sub{color:var(--text-secondary);font-size:13px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.25s forwards fadeIn}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:1.5s infinite pulse}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--text-primary);color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:all;align-items:center;gap:8px;padding:12px 20px;font-size:13px;font-weight:500;animation:.3s cubic-bezier(.16,1,.3,1) toastIn;display:flex}.toast.success{background:var(--green-positive)}.toast.error{background:var(--red-negative)}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.divider{background:var(--border-color);height:1px;margin:4px 0}.section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-title{color:var(--text-primary);font-size:14px;font-weight:700}@media (width<=900px){:root{--sidebar-width:200px}.stats-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}@media (width<=700px){.sidebar{position:fixed;transform:translate(-100%)}.sidebar.open{transform:translate(0)}}@keyframes pulseGreen{0%{transform:scale(1.04)}50%{transform:scale(1.02)}to{transform:scale(1)}}.editable-cell.saved-pulse .inline-input{animation:1.2s ease-out pulseGreen;border-color:var(--green-positive)!important;background-color:var(--green-light)!important;box-shadow:0 0 0 3px #10b98140!important}.product-card.out-of-stock-allowed{background:#fffdfd;border-color:#fecaca}.product-card.out-of-stock-allowed:hover{border-color:var(--yellow-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}[data-netlify-deploy-id],.netlify-badge,#netlify-badge,div[class*=netlify-drawer],div[class*=netlify-feedback],iframe[src*=netlify]{opacity:.85;transition:opacity .2s,transform .2s;z-index:90!important;max-width:130px!important}[data-netlify-deploy-id]:hover,.netlify-badge:hover,#netlify-badge:hover{opacity:1}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}
