:root,.light{--bg-dark: #f3f4f6;--bg-sidebar: #ffffff;--bg-panel: #ffffff;--bg-card: #ffffff;--bg-card-hover: #f9fafb;--bg-input: #ffffff;--border-color: rgba(0, 0, 0, .08);--border-hover: rgba(0, 0, 0, .15);--text-main: #1f2937;--text-muted: #6b7280;--text-light: #9ca3af;--accent: #8de02c;--accent-light: #a3e652;--accent-bg: rgba(141, 224, 44, .15);--accent-border: rgba(141, 224, 44, .35);--neon-cyan: #0ea5e9;--neon-purple: #8b5cf6;--neon-green: #8de02c;--neon-red: #ef4444;--neon-orange: #f97316;--neon-yellow: #eab308;--neon-pink: #ec4899;--neon-blue: #3b82f6;--gradient-primary: linear-gradient(135deg, #8de02c 0%, #76c023 100%);--sidebar-width: 270px;--topbar-height: 70px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 2px 8px rgba(0,0,0,.05);--shadow-md: 0 4px 20px rgba(0,0,0,.08);--shadow-lg: 0 8px 40px rgba(0,0,0,.12);--shadow-glow: 0 0 30px rgba(141, 224, 44, .2)}.dark{--bg-dark: #0a0e1a;--bg-sidebar: rgba(15, 23, 42, .95);--bg-panel: rgba(15, 23, 42, .85);--bg-card: rgba(30, 41, 59, .7);--bg-card-hover: rgba(51, 65, 85, .7);--bg-input: rgba(15, 23, 42, .8);--border-color: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .15);--text-main: #f8fafc;--text-muted: #94a3b8;--text-light: #64748b;--shadow-glow: 0 0 30px rgba(141, 224, 44, .15)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);font-family:var(--font-family);overflow:hidden;height:100vh;width:100vw}#root{height:100%;display:flex;flex-direction:column}.glass-panel{background:var(--bg-panel);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 30px #00000080}button{font-family:var(--font-family);cursor:pointer;border:none;outline:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,var(--neon-cyan),var(--neon-purple));color:#fff;font-weight:600;padding:12px 24px;border-radius:12px;box-shadow:0 0 15px #06b6d44d}.btn-primary:hover{box-shadow:0 0 25px #06b6d499;transform:translateY(-2px) scale(1.02)}.btn-outline{background:transparent;border:1px solid var(--neon-cyan);color:var(--neon-cyan);padding:10px 20px;border-radius:12px}.btn-outline:hover{background:#06b6d41a;box-shadow:0 0 15px #06b6d433}.btn-danger{background:#ef44441a;border:1px solid var(--neon-red);color:var(--neon-red);padding:10px 20px;border-radius:12px}.btn-danger:hover{background:#ef444433}.pos-layout{display:grid;grid-template-columns:1fr 350px;height:100vh;gap:20px;padding:20px}@media (max-width: 1024px){.pos-layout{grid-template-columns:1fr;grid-template-rows:1fr 400px}}.pos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.search-bar{background:var(--bg-panel);border:1px solid var(--border-color);color:var(--text-main);padding:12px 20px;border-radius:12px;width:300px;font-size:1rem}.search-bar:focus{border-color:var(--neon-cyan);box-shadow:0 0 10px #06b6d433}.category-list{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;margin-bottom:20px}.category-chip{padding:8px 16px;border-radius:20px;background:var(--bg-panel);border:1px solid var(--border-color);color:var(--text-muted);white-space:nowrap}.category-chip.active{background:#a855f726;border-color:var(--neon-purple);color:var(--neon-purple)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;overflow-y:auto;padding-bottom:20px;height:calc(100vh - 200px)}.product-grid::-webkit-scrollbar{display:none}.product-card{padding:16px;display:flex;flex-direction:column;justify-content:space-between;text-align:center;cursor:pointer;transition:all .3s ease;min-height:140px}.product-card:hover{border-color:var(--neon-cyan);background:#06b6d40d;transform:translateY(-4px)}.product-name{font-weight:600;font-size:1.1rem;margin-bottom:8px}.product-price{color:var(--neon-cyan);font-weight:800;font-size:1.2rem}.cart-sidebar{display:flex;flex-direction:column;padding:24px}.cart-header{font-size:1.5rem;font-weight:800;margin-bottom:20px;display:flex;justify-content:space-between}.cart-items{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.cart-items::-webkit-scrollbar{width:4px}.cart-items::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.cart-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#ffffff05;border-radius:8px}.cart-item-info{display:flex;flex-direction:column}.cart-item-title{font-weight:600}.cart-item-price{color:var(--neon-purple);font-size:.9rem}.qty-controls{display:flex;align-items:center;gap:12px}.qty-btn{background:var(--bg-panel);border:1px solid var(--border-color);color:#fff;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center}.qty-btn:hover{background:#ffffff1a}.cart-totals{border-top:1px solid var(--border-color);padding-top:20px;display:flex;flex-direction:column;gap:12px}.total-row{display:flex;justify-content:space-between;color:var(--text-muted)}.total-row.grand-total{color:#fff;font-size:1.5rem;font-weight:800;margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-color)}.checkout-btn{width:100%;margin-top:20px;font-size:1.2rem;padding:16px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-container{width:100%;max-width:440px;background:var(--bg-panel);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:24px;padding:48px 40px;box-shadow:0 8px 40px #00000080}.login-brand{text-align:center;margin-bottom:40px}.login-brand-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--neon-cyan),var(--neon-purple));border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:2rem;box-shadow:0 0 30px #06b6d44d}.login-brand h1{font-size:1.8rem;font-weight:800;margin-bottom:6px}.login-brand p{color:var(--text-muted)}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-muted);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.form-input{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text-main);padding:14px 18px;border-radius:12px;font-size:1rem;font-family:inherit;outline:none;transition:.3s}.form-input:focus{border-color:var(--neon-cyan);box-shadow:0 0 0 3px #06b6d426}.form-input::placeholder{color:#475569}.login-btn{background:linear-gradient(135deg,var(--neon-cyan),var(--neon-purple));color:#fff;font-weight:700;padding:16px;border:none;border-radius:12px;font-size:1.1rem;cursor:pointer;box-shadow:0 0 20px #06b6d44d;font-family:inherit;margin-top:8px;transition:.3s}.login-btn:hover{transform:translateY(-2px);box-shadow:0 0 35px #06b6d480}.login-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--neon-red);padding:12px 16px;border-radius:10px;font-size:.9rem;text-align:center;margin-bottom:10px}.receipt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:200}.receipt-card{background:#1a1a2e;border:1px solid var(--border-color);border-radius:16px;padding:32px;width:380px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0009}.search-bar{outline:none;font-family:inherit}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 10% 20%,rgba(141,224,44,.08) 0%,var(--bg-dark) 90%);position:relative;overflow:hidden;font-family:inherit}.login-page:before{content:"";position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(141,224,44,.15) 0%,transparent 70%);filter:blur(80px);z-index:0}.login-page:after{content:"";position:absolute;bottom:-200px;left:-100px;width:500px;height:500px;background:radial-gradient(circle,rgba(6,182,212,.1) 0%,transparent 70%);filter:blur(80px);z-index:0}.login-container{width:100%;max-width:440px;box-sizing:border-box;background:#fff9;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:48px;border-radius:24px;box-shadow:0 24px 60px #00000014,inset 0 1px #fff6;border:1px solid var(--border-color);position:relative;z-index:1;animation:floatIn .8s cubic-bezier(.16,1,.3,1)}.dark .login-container{background:#1e293b99;box-shadow:0 24px 60px #0006,inset 0 1px #ffffff0d}.login-brand-icon{width:72px;height:72px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-light) 100%);border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:32px;color:#000;margin:0 auto 24px;box-shadow:0 12px 24px var(--accent-bg)}.login-brand h1{font-size:28px;font-weight:800;text-align:center;margin-bottom:8px;color:var(--text-main)}.login-brand p{text-align:center;color:var(--text-muted);margin-bottom:32px;font-size:15px}.login-form{width:100%;display:block;box-sizing:border-box}.login-form .form-group,.login-form .fg{margin-bottom:20px;box-sizing:border-box}.login-form label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:var(--text-main)}.login-form input.form-input,.login-form input.fi{width:100%;padding:14px 16px;border-radius:12px;box-sizing:border-box;border:1px solid var(--border-color);background:var(--bg-input);color:var(--text-main);transition:all .3s ease}.login-form input.form-input:focus,.login-form input.fi:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-bg)}.login-btn{width:100%;padding:16px;border-radius:12px;box-sizing:border-box;background:var(--gradient-primary);color:#000;font-weight:700;font-size:16px;border:none;cursor:pointer;transition:all .3s ease;margin-top:12px;box-shadow:0 8px 16px var(--accent-bg)}.login-btn:hover{transform:translateY(-2px);box-shadow:0 12px 20px var(--accent-bg)}@keyframes floatIn{0%{opacity:0;transform:translateY(40px) scale(.96);filter:blur(10px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.login-footer{text-align:center;margin-top:32px;font-size:13px;color:var(--text-muted)}.login-footer a{color:var(--accent);font-weight:600;text-decoration:none}
