:root{--bg-app:#f8fafc;--bg-surface:#fff;--bg-surface-subtle:#f1f5f9;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-input:#fff;--bg-modal-backdrop:#0f172a8c;--border-subtle:#f1f5f9;--border-default:#e2e8f0;--border-focus:#1e293b;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#fff;--accent-primary:#1e293b;--accent-primary-hover:#0f172a;--accent-primary-active:#020617;--accent-primary-text:#fff;--accent-secondary:#e2e8f0;--accent-secondary-hover:#cbd5e1;--accent-secondary-text:#1e293b;--status-success-bg:#ecfdf5;--status-success-border:#a7f3d0;--status-success-text:#065f46;--status-warning-bg:#fffbeb;--status-warning-border:#fde68a;--status-warning-text:#92400e;--status-danger-bg:#fef2f2;--status-danger-border:#fecaca;--status-danger-text:#991b1b;--status-info-bg:#f0f9ff;--status-info-border:#bae6fd;--status-info-text:#075985;--font-sans:"Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--shadow-xs:0 1px 2px 0 #0000000a;--shadow-sm:0 1px 3px 0 #0000000f, 0 1px 2px 0 #0000000a;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -2px #00000008;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px}[data-theme=dark]{--bg-app:#0b0f19;--bg-surface:#111827;--bg-surface-subtle:#1f2937;--bg-card:#161f30;--bg-card-hover:#1e293b;--bg-input:#111827;--bg-modal-backdrop:#000000bf;--border-subtle:#1e293b;--border-default:#334155;--border-focus:#94a3b8;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--text-inverse:#0f172a;--accent-primary:#f8fafc;--accent-primary-hover:#e2e8f0;--accent-primary-active:#cbd5e1;--accent-primary-text:#0f172a;--accent-secondary:#1f2937;--accent-secondary-hover:#334155;--accent-secondary-text:#f8fafc;--status-success-bg:#064e3b;--status-success-border:#047857;--status-success-text:#a7f3d0;--status-warning-bg:#451a03;--status-warning-border:#78350f;--status-warning-text:#fde68a;--status-danger-bg:#450a0a;--status-danger-border:#7f1d1d;--status-danger-text:#fecaca;--status-info-bg:#0c4a6e;--status-info-border:#0369a1;--status-info-text:#bae6fd;--shadow-xs:0 1px 2px 0 #0000004d;--shadow-sm:0 1px 3px 0 #0006;--shadow-md:0 4px 6px -1px #00000073;--shadow-lg:0 10px 15px -3px #00000080;--shadow-xl:0 20px 25px -5px #0009}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background-color:var(--bg-app);width:100%;height:100%;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.5;overflow-x:hidden}#root{flex-direction:column;min-height:100%;display:flex}h1,h2,h3,h4,h5,h6{color:var(--text-primary);letter-spacing:-.02em;font-weight:700;line-height:1.25}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}input,select,textarea{color:var(--text-primary);background-color:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;width:100%;padding:.65rem .85rem;font-family:inherit;font-size:.95rem}input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px #1e293b26}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{box-shadow:0 0 0 2px #f8fafc33}button{cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;border:none;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;display:inline-flex}button:active{transform:scale(.98)}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-primary{background-color:var(--accent-primary);color:var(--accent-primary-text);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background-color:var(--accent-primary-hover);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--bg-surface-subtle);color:var(--text-primary);border:1px solid var(--border-default)}.btn-secondary:hover:not(:disabled){background-color:var(--accent-secondary)}.btn-outline{color:var(--text-primary);border:1px solid var(--border-default);background-color:#0000}.btn-outline:hover:not(:disabled){background-color:var(--bg-surface-subtle);border-color:var(--border-focus)}.btn-danger{background-color:var(--status-danger-bg);color:var(--status-danger-text);border:1px solid var(--status-danger-border)}.btn-danger:hover:not(:disabled){filter:brightness(.95)}.btn-ghost{color:var(--text-secondary);background-color:#0000;padding:.5rem}.btn-ghost:hover:not(:disabled){background-color:var(--bg-surface-subtle);color:var(--text-primary)}.btn-sm{border-radius:var(--radius-sm);padding:.4rem .65rem;font-size:.8rem}.btn-lg{border-radius:var(--radius-lg);padding:.85rem 1.35rem;font-size:1.05rem}.badge{border-radius:var(--radius-full);align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.75rem;font-weight:600;line-height:1;display:inline-flex}.badge-neutral{background-color:var(--bg-surface-subtle);color:var(--text-secondary);border:1px solid var(--border-default)}.badge-success{background-color:var(--status-success-bg);color:var(--status-success-text);border:1px solid var(--status-success-border)}.badge-warning{background-color:var(--status-warning-bg);color:var(--status-warning-text);border:1px solid var(--status-warning-border)}.badge-danger{background-color:var(--status-danger-bg);color:var(--status-danger-text);border:1px solid var(--status-danger-border)}.badge-info{background-color:var(--status-info-bg);color:var(--status-info-text);border:1px solid var(--status-info-border)}.card{background-color:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:1.25rem}.card-interactive{cursor:pointer}.card-interactive:hover{background-color:var(--bg-card-hover);border-color:var(--border-focus);box-shadow:var(--shadow-sm)}.modal-backdrop{background-color:var(--bg-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;justify-content:center;align-items:center;padding:1rem;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:480px;max-height:90vh;animation:.18s ease-out scaleUp;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-body{padding:1.5rem}.modal-footer{border-top:1px solid var(--border-subtle);background-color:var(--bg-surface-subtle);border-bottom-left-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl);justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.app-container{flex-direction:column;height:100vh;display:flex;overflow:hidden}.app-header{background-color:var(--bg-surface);border-bottom:1px solid var(--border-default);z-index:50;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 1.25rem;display:flex}.app-body{flex:1;display:flex;position:relative;overflow:hidden}.pos-workspace{flex:1;display:flex;overflow:hidden}.pos-catalog-column{border-right:1px solid var(--border-default);background-color:var(--bg-app);flex-direction:column;flex:1;display:flex;overflow:hidden}.pos-cart-column{background-color:var(--bg-surface);flex-direction:column;flex-shrink:0;width:420px;display:flex;overflow:hidden}@media (width<=960px){.pos-workspace{flex-direction:column}.pos-cart-column{z-index:100;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);border-top:1px solid var(--border-default);width:100%;max-height:85vh;transition:transform var(--transition-normal);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -4px 20px #00000026}.pos-cart-column.cart-open{transform:translateY(0)}}.drawer-backdrop{background-color:var(--bg-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;animation:.2s ease-out fadeIn;position:fixed;inset:0}.drawer-content{background-color:var(--bg-surface);border-left:1px solid var(--border-default);width:320px;max-width:88vw;box-shadow:var(--shadow-xl);z-index:1000;flex-direction:column;animation:.22s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:1.25rem;display:flex}.drawer-body{flex-direction:column;flex:1;gap:.35rem;padding:1rem;display:flex;overflow-y:auto}.drawer-footer{border-top:1px solid var(--border-subtle);background-color:var(--bg-surface-subtle);flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.drawer-item{border-radius:var(--radius-md);color:var(--text-primary);width:100%;transition:all var(--transition-fast);background:0 0;justify-content:flex-start;align-items:center;gap:.85rem;padding:.75rem 1rem;font-size:.92rem;font-weight:600;display:flex}.drawer-item:hover{background-color:var(--bg-surface-subtle)}.drawer-item.active{background-color:var(--accent-primary);color:var(--accent-primary-text)}.mobile-show-only{display:none!important}@media (width<=960px){.app-header{height:56px;padding:0 .85rem}.header-store-name{white-space:nowrap;text-overflow:ellipsis;max-width:180px;overflow:hidden;font-size:.95rem!important}.header-subtitle,.mobile-hide{display:none!important}.mobile-show-only{display:inline-flex!important}.grid-responsive-2{grid-template-columns:1fr!important}.card{padding:1rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}
