@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary:#4f46e5;--primary-hover:#4338ca;--secondary:#10b981;--background:#f3f4f6;--surface:#fff;--surface-hover:#f9fafb;--text-main:#111827;--text-muted:#6b7280;--border:#e5e7eb;--danger:#ef4444;--warning:#f59e0b;--success:#10b981;--radius:12px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,sans-serif}body{background-color:var(--background);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{cursor:pointer;background:0 0;border:none;font-family:Inter,sans-serif}a{color:inherit;text-decoration:none}input,select,textarea{font-family:Inter,sans-serif}.app-container{height:100vh;display:flex;overflow:hidden}.sidebar{background-color:var(--surface);border-right:1px solid var(--border);flex-direction:column;width:260px;transition:transform .3s;display:flex}.sidebar-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:24px;display:flex}.sidebar-header h1{color:var(--primary);letter-spacing:-.025em;font-size:1.25rem;font-weight:700}.nav-links{flex-direction:column;flex:1;gap:8px;padding:24px 16px;display:flex;overflow-y:auto}.nav-item{color:var(--text-muted);border-radius:8px;align-items:center;gap:12px;padding:12px 16px;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background-color:var(--surface-hover);color:var(--primary)}.nav-item.active{background-color:var(--primary);color:#fff}.main-content{flex-direction:column;flex:1;display:flex;overflow-y:auto}.topbar{background-color:var(--surface);border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;height:70px;padding:0 24px;display:flex;position:sticky;top:0}.page-content{width:100%;max-width:1200px;margin:0 auto;padding:24px}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border);padding:24px;transition:box-shadow .2s}.card:hover{box-shadow:var(--shadow-md)}.text-h2{color:var(--text-main);margin-bottom:24px;font-size:1.5rem;font-weight:600}.text-muted{color:var(--text-muted);font-size:.875rem}.btn{border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.btn-outline{border:1px solid var(--border);color:var(--text-main);background-color:#fff}.btn-outline:hover{background-color:var(--surface-hover);border-color:#d1d5db}.input-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.input-label{color:var(--text-main);font-size:.875rem;font-weight:500}.input-field{border:1px solid var(--border);border-radius:8px;outline:none;padding:10px 12px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51a}.badge{border-radius:9999px;align-items:center;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-warning{color:#d97706;background-color:#fef3c7}.badge-danger{color:#dc2626;background-color:#fee2e2}.badge-success{color:#059669;background-color:#d1fae5}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:24px;display:grid}.table-container{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:16px}th{background-color:var(--surface-hover);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}td{font-size:.875rem}tr:last-child td{border-bottom:none}tr:hover td{background-color:#f9fafb}.mobile-nav{display:none}@media (width<=768px){.app-container{flex-direction:column}.sidebar{display:none}.mobile-nav{background:var(--surface);border-top:1px solid var(--border);z-index:50;padding:8px 16px;padding-bottom:env(safe-area-inset-bottom,16px);justify-content:space-between;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav-item{color:var(--text-muted);flex-direction:column;align-items:center;gap:4px;padding:8px;font-size:.75rem;font-weight:500;display:flex}.mobile-nav-item.active{color:var(--primary)}.main-content{flex:1;margin-bottom:60px}.topbar{padding:0 16px}.page-content{padding:16px}.grid-cards{grid-template-columns:1fr}}.scanner-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.scanner-box{border-radius:var(--radius);text-align:center;width:90%;max-width:400px;box-shadow:var(--shadow-lg);background:#fff;padding:24px}.scanner-frame{border:2px dashed var(--primary);border-radius:var(--radius);background-color:#f8fafc;justify-content:center;align-items:center;width:100%;height:250px;margin:16px 0;display:flex;position:relative;overflow:hidden}.scanner-line{background:var(--danger);height:2px;animation:2s linear infinite scan;position:absolute;top:0;left:0;right:0;box-shadow:0 0 10px #ef4444cc}@keyframes scan{0%{top:0}50%{top:100%}to{top:0}}.pos-layout{grid-template-columns:2fr 1fr;gap:24px;height:calc(100vh - 120px);display:grid}@media (width<=1024px){.pos-layout{grid-template-columns:1fr;height:auto}}.pos-products{flex-direction:column;gap:16px;display:flex;overflow-y:auto}.pos-cart{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.cart-header{border-bottom:1px solid var(--border);background:#f8fafc;padding:16px;font-weight:600}.cart-items{flex:1;padding:16px;overflow-y:auto}.cart-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;display:flex}.cart-footer{border-top:1px solid var(--border);background:#f8fafc;padding:20px}.cart-total{justify-content:space-between;margin-bottom:16px;font-size:1.25rem;font-weight:700;display:flex}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;padding:16px;transition:all .2s;display:flex}.product-card:hover{border-color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.product-icon{width:48px;height:48px;color:var(--primary);background:#eef2ff;border-radius:12px;justify-content:center;align-items:center;margin-right:16px;display:flex}.product-info{flex:1}.product-name{color:var(--text-main);font-weight:600}.product-stock{color:var(--text-muted);font-size:.75rem}.product-price{color:var(--primary);font-weight:700}.fade-in{animation:.3s ease-in-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.stat-card{align-items:center;padding:24px;display:flex}.stat-icon{border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-right:20px;display:flex}.stat-icon.primary{color:#4f46e5;background:#eef2ff}.stat-icon.success{color:#10b981;background:#d1fae5}.stat-icon.warning{color:#f59e0b;background:#fef3c7}.stat-icon.danger{color:#ef4444;background:#fee2e2}.stat-content h3{color:var(--text-muted);margin-bottom:4px;font-size:.875rem;font-weight:500}.stat-content p{color:var(--text-main);font-size:1.5rem;font-weight:700}.login-container{background:linear-gradient(135deg,#eef2ff 0%,#e0e7ff 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{box-shadow:var(--shadow-lg);background:#fff;border-radius:24px;width:100%;max-width:420px;padding:40px}.login-logo{justify-content:center;align-items:center;gap:12px;margin-bottom:32px;display:flex}.login-logo-icon{background:var(--primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.search-bar{align-items:center;display:flex;position:relative}.search-bar input{border:1px solid var(--border);background:#f9fafb;border-radius:24px;outline:none;width:100%;padding:12px 16px 12px 40px;transition:all .2s}.search-bar input:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px #4f46e51a}.search-bar svg{color:var(--text-muted);position:absolute;left:14px}
