:root{--primary-h:220;--primary-s:76%;--primary-l:52%;--primary:hsl(var(--primary-h), var(--primary-s), var(--primary-l));--primary-hover:hsl(var(--primary-h), var(--primary-s), calc(var(--primary-l) - 8%));--primary-light:hsl(var(--primary-h), var(--primary-s), 95%);--primary-glow:hsla(var(--primary-h), var(--primary-s), var(--primary-l), .15);--secondary:#4f46e5;--success:#10b981;--success-light:#ecfdf5;--warning:#f59e0b;--warning-light:#fffbeb;--danger:#ef4444;--danger-light:#fef2f2;--bg-primary:#f8fafc;--bg-secondary:#fff;--border-color:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border-radius-sm:8px;--border-radius-md:14px;--border-radius-lg:24px;--shadow-sm:0 1px 3px #0000000d, 0 1px 2px #00000005;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000f, 0 4px 6px -2px #00000008;--shadow-premium:0 20px 25px -5px #00000014, 0 10px 10px -5px #0000000a;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-heading:"Outfit", sans-serif}[data-theme=dark]{--bg-primary:#0b0f19;--bg-secondary:#131a26;--border-color:#1e293b;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--primary-light:hsl(var(--primary-h), var(--primary-s), 15%);--success-light:#064e3b;--warning-light:#78350f;--danger-light:#7f1d1d;--shadow-sm:0 1px 3px #0003;--shadow-md:0 4px 6px -1px #00000040;--shadow-lg:0 10px 15px -3px #0000004d;--shadow-premium:0 20px 25px -5px #0006}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);margin:0;padding:0}#root{min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-primary);margin:0;font-weight:600}a{color:var(--primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--primary-hover)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-15px)}to{opacity:1;transform:translate(0)}}@keyframes pulseGlow{0%{box-shadow:0 0 0 0 var(--primary-glow)}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}.animate-fade{animation:fadeIn var(--transition-normal) forwards}.animate-slide{animation:slideIn var(--transition-normal) forwards}.animate-pulse{animation:2s infinite pulseGlow}.app-container{width:100%;min-height:100vh;display:flex}.main-content{background-color:var(--bg-primary);min-height:100vh;transition:background-color var(--transition-normal);flex-direction:column;flex:1;display:flex;overflow-x:hidden}.page-container{animation:fadeIn var(--transition-normal) forwards;flex:1;padding:30px}.sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);width:260px;height:100vh;transition:all var(--transition-normal);z-index:10;flex-direction:column;display:flex;position:sticky;top:0}.logoContainer{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:24px;display:flex}.logoText{font-family:var(--font-heading);color:var(--text-primary);font-size:20px;font-weight:700}.logoIcon{color:var(--primary);background-color:var(--primary-light);border-radius:8px;justify-content:center;align-items:center;padding:6px;display:flex}.nav{flex-direction:column;flex:1;gap:6px;padding:20px 12px;display:flex;overflow-y:auto}.navLink{border-radius:var(--border-radius-sm);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.navLink:hover{background-color:var(--bg-primary);color:var(--text-primary);transform:translate(4px)}.activeNavLink{background-color:var(--primary-light);color:var(--primary);font-weight:600}.activeNavLink:hover{background-color:var(--primary-light);color:var(--primary)}.footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.logoutBtn{color:var(--danger);cursor:pointer;border-radius:var(--border-radius-sm);transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:14px;font-weight:500;display:flex}.logoutBtn:hover{background-color:var(--danger-light)}.header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:9;height:70px;transition:background-color var(--transition-normal);justify-content:space-between;align-items:center;padding:0 30px;display:flex;position:sticky;top:0}.leftSection{align-items:center;gap:20px;display:flex}.businessSelector{position:relative}.businessBtn{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);font-family:var(--font-heading);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:8px;padding:8px 16px;font-size:15px;font-weight:600;display:flex}.businessBtn:hover{border-color:var(--primary)}.businessDropdown{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-lg);z-index:100;min-width:200px;animation:fadeIn var(--transition-fast) forwards;flex-direction:column;padding:6px 0;display:flex;position:absolute;top:calc(100% + 6px);left:0}.businessOption{color:var(--text-secondary);text-align:left;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:10px 16px;font-size:14px}.businessOption:hover{background-color:var(--bg-primary);color:var(--primary)}.activeBusinessOption{color:var(--primary);background-color:var(--primary-light);font-weight:600}.fySelector{background-color:var(--primary-light);color:var(--primary);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:700;display:flex}.fySelector:hover{background-color:var(--primary);color:var(--bg-secondary)}.rightSection{align-items:center;gap:20px;display:flex}.themeToggle{color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.themeToggle:hover{background-color:var(--bg-primary);color:var(--text-primary)}.userProfile{align-items:center;gap:10px;display:flex}.userAvatar{background-color:var(--primary-light);width:36px;height:36px;color:var(--primary);font-weight:700;font-family:var(--font-heading);border-radius:50%;justify-content:center;align-items:center;display:flex}.userInfo{flex-direction:column;display:flex}.userName{color:var(--text-primary);font-size:14px;font-weight:600}.userRole{color:var(--text-muted);text-transform:capitalize;font-size:11px}.loginWrapper{background:radial-gradient(circle at top left, var(--primary-light), var(--bg-primary) 70%);width:100vw;min-height:100vh;transition:background var(--transition-normal);justify-content:center;align-items:center;display:flex}.loginCard{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-premium);width:440px;max-width:90%;animation:fadeIn var(--transition-normal) forwards;flex-direction:column;align-items:stretch;padding:40px;display:flex}.loginHeader{text-align:center;margin-bottom:30px}.loginLogo{color:var(--primary);background-color:var(--primary-light);border-radius:16px;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 16px;display:flex}.loginTitle{font-family:var(--font-heading);margin-bottom:8px;font-size:24px;font-weight:700}.loginSubtitle{color:var(--text-secondary);font-size:14px}.tabs{background-color:var(--bg-primary);border-radius:var(--border-radius-sm);border:1px solid var(--border-color);margin-bottom:24px;padding:4px;display:flex}.tabBtn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;flex:1;padding:8px 12px;font-size:14px;font-weight:600}.activeTabBtn{background-color:var(--bg-secondary);color:var(--primary);box-shadow:var(--shadow-sm)}.formGroup{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.label{color:var(--text-secondary);font-size:13px;font-weight:600}.input{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:12px 16px;font-size:15px}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.submitBtn{background-color:var(--primary);color:#fff;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;margin-top:10px;padding:14px;font-size:15px;font-weight:600;display:flex}.submitBtn:hover{background-color:var(--primary-hover)}.submitBtn:disabled{opacity:.7;cursor:not-allowed}.errorMsg{background-color:var(--danger-light);color:var(--danger);border-radius:var(--border-radius-sm);border:1px solid #ef444426;margin-bottom:20px;padding:12px;font-size:13px;font-weight:500}.infoMsg{background-color:var(--success-light);color:var(--success);border-radius:var(--border-radius-sm);margin-bottom:20px;padding:12px;font-size:13px;font-weight:500}.dashboard{flex-direction:column;gap:30px;display:flex}.statsGrid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.statsCard{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);border-left:5px solid var(--primary);transition:all var(--transition-fast);flex-direction:column;gap:12px;padding:24px;display:flex}.statsCard:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.statsLabel{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.statsValue{font-family:var(--font-heading);color:var(--text-primary);font-size:28px;font-weight:700}.alertCard{background-color:var(--danger-light);border-radius:var(--border-radius-md);color:var(--danger);transition:opacity var(--transition-fast);cursor:pointer;border:1px solid #ef444426;align-items:center;gap:16px;padding:16px 24px;display:flex}.alertCard:hover{opacity:.9}.alertIcon{background-color:#ffe4e6;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.alertText{flex:1;font-size:14px;font-weight:500}.alertTitle{margin-bottom:2px;font-weight:700}.section{flex-direction:column;gap:16px;display:flex}.sectionHeader{justify-content:space-between;align-items:center;display:flex}.sectionTitle{font-family:var(--font-heading);font-size:20px;font-weight:700}.viewAllLink{color:var(--primary);font-size:14px;font-weight:600}.recentTableWrapper{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.table{border-collapse:collapse;text-align:left;width:100%}.th{background-color:var(--bg-primary);color:var(--text-secondary);border-bottom:1px solid var(--border-color);padding:16px 24px;font-size:13px;font-weight:600}.td{color:var(--text-primary);border-bottom:1px solid var(--border-color);padding:18px 24px;font-size:14px}.tr:last-child .td{border-bottom:none}.tr:hover{background-color:var(--bg-primary)}.badge{text-transform:uppercase;border-radius:20px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.badgePaid{background-color:var(--success-light);color:var(--success)}.badgeUnpaid{background-color:var(--warning-light);color:var(--warning)}.badgeCancel{background-color:var(--danger-light);color:var(--danger)}.placeholder{text-align:center;color:var(--text-secondary);padding:40px;font-size:14px}.billingPage{flex-direction:column;gap:24px;display:flex}.card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:24px}.invoiceHeaderGrid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;display:grid}.itemsSection{margin-top:10px}.itemsTable{border-collapse:collapse;width:100%;margin-bottom:20px}.itemTh{text-align:left;background-color:var(--bg-primary);color:var(--text-secondary);border-bottom:1px solid var(--border-color);padding:12px 16px;font-size:13px;font-weight:600}.itemTd{border-bottom:1px solid var(--border-color);padding:12px 16px}.itemInput{border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background-color:var(--bg-secondary);width:100%;color:var(--text-primary);outline:none;padding:8px 12px}.itemInput:focus{border-color:var(--primary)}.removeBtn{color:var(--danger);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;display:flex}.removeBtn:hover{background-color:var(--danger-light)}.addBtn{background-color:var(--bg-primary);border:1px dashed var(--border-color);color:var(--primary);border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:600;display:flex}.addBtn:hover{border-color:var(--primary);background-color:var(--primary-light)}.summarySection{grid-template-columns:1fr 340px;align-items:start;gap:40px;margin-top:20px;display:grid}.summaryCard{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);flex-direction:column;gap:12px;padding:20px;display:flex}.summaryRow{color:var(--text-secondary);justify-content:space-between;font-size:14px;display:flex}.summaryTotalRow{color:var(--text-primary);border-top:1px solid var(--border-color);justify-content:space-between;margin-top:8px;padding-top:12px;font-size:18px;font-weight:700;display:flex}.actionRow{justify-content:flex-end;gap:16px;margin-top:20px;display:flex}.partiesPage{gap:24px;height:calc(100vh - 130px);display:flex}.leftPanel{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);width:320px;box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.rightPanel{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);flex-direction:column;flex:1;display:flex;overflow:hidden}.searchBar{border-bottom:1px solid var(--border-color);background-color:var(--bg-primary);padding:16px}.searchinput{border-radius:var(--border-radius-sm);border:1px solid var(--border-color);background-color:var(--bg-secondary);width:100%;color:var(--text-primary);outline:none;padding:10px 14px;font-size:14px}.searchinput:focus{border-color:var(--primary)}.partyList{flex-direction:column;flex:1;display:flex;overflow-y:auto}.partyItem{border-bottom:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;gap:4px;padding:16px;display:flex}.partyItem:hover{background-color:var(--bg-primary)}.activePartyItem{background-color:var(--primary-light);border-left:4px solid var(--primary)}.partyItemHeader{justify-content:space-between;align-items:center;display:flex}.partyItemName{color:var(--text-primary);font-size:14px;font-weight:600}.partyItemBalance{font-size:13px;font-weight:700}.partyItemSub{color:var(--text-secondary);font-size:12px}.panelHeader{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;padding:24px;display:flex}.panelContent{flex:1;padding:24px;overflow-y:auto}.modalOverlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;width:100vw;height:100vh;animation:fadeIn var(--transition-fast) forwards;background-color:#0006;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.modal{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-premium);flex-direction:column;gap:20px;width:460px;max-width:90%;padding:30px;display:flex}.modalHeader{justify-content:space-between;align-items:center;display:flex}.modalTitle{font-family:var(--font-heading);font-size:20px;font-weight:700}.modalCloseBtn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none}.modalActions{justify-content:flex-end;gap:12px;margin-top:10px;display:flex}.productsPage{flex-direction:column;gap:24px;display:flex}.searchHeaderRow{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.productTableWrapper{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.stockAlert{color:var(--danger);align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.stockNormal{color:var(--success);font-size:13px;font-weight:600}.editActionBtn{color:var(--primary);cursor:pointer;border-radius:var(--border-radius-sm);transition:background-color var(--transition-fast);background:0 0;border:none;padding:6px 12px;font-size:13px;font-weight:600}.editActionBtn:hover{background-color:var(--primary-light)}
