@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #2563eb;--primary-dark: #1d4ed8;--primary-light: #3b82f6;--secondary: #64748b;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--dark: #1e293b;--light: #f8fafc;--white: #ffffff;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius: 8px;--radius-lg: 12px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--gray-100);color:var(--gray-800);line-height:1.5;-webkit-font-smoothing:antialiased}#root{min-height:100vh}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 16px}.card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-secondary{background:var(--gray-200);color:var(--gray-700)}.btn-secondary:hover:not(:disabled){background:var(--gray-300)}.btn-success{background:var(--success);color:var(--white)}.btn-success:hover:not(:disabled){background:#16a34a}.btn-danger{background:var(--danger);color:var(--white)}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-sm{padding:6px 12px;font-size:12px}.btn-lg{padding:14px 28px;font-size:16px}.btn-block{width:100%}.form-group{margin-bottom:16px}.form-label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--gray-700)}.form-input{width:100%;padding:10px 14px;border:1px solid var(--gray-300);border-radius:var(--radius);font-size:14px;transition:border-color .2s,box-shadow .2s;background:var(--white)}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.form-input::placeholder{color:var(--gray-400)}.form-select{width:100%;padding:10px 14px;border:1px solid var(--gray-300);border-radius:var(--radius);font-size:14px;background:var(--white);cursor:pointer}.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--gray-200)}.table th{background:var(--gray-50);font-weight:600;color:var(--gray-600);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.table tbody tr:hover{background:var(--gray-50)}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.badge-primary{background:#2563eb1a;color:var(--primary)}.badge-success{background:#22c55e1a;color:var(--success)}.badge-warning{background:#f59e0b1a;color:var(--warning)}.badge-danger{background:#ef44441a;color:var(--danger)}.stat-card{background:var(--white);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow)}.stat-card-icon{width:48px;height:48px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;margin-bottom:12px}.stat-card-value{font-size:28px;font-weight:700;color:var(--gray-900);line-height:1}.stat-card-label{font-size:14px;color:var(--gray-500);margin-top:4px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000;animation:fadeIn .2s ease}.modal{background:var(--white);border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--gray-200)}.modal-title{font-size:18px;font-weight:600;color:var(--gray-900)}.modal-close{background:none;border:none;padding:4px;cursor:pointer;color:var(--gray-500);transition:color .2s}.modal-close:hover{color:var(--gray-700)}.modal-body{padding:20px}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 20px;border-top:1px solid var(--gray-200)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.alert{padding:12px 16px;border-radius:var(--radius);font-size:14px;display:flex;align-items:center;gap:10px}.alert-success{background:#22c55e1a;color:#166534;border:1px solid rgba(34,197,94,.2)}.alert-danger{background:#ef44441a;color:#991b1b;border:1px solid rgba(239,68,68,.2)}.alert-warning{background:#f59e0b1a;color:#92400e;border:1px solid rgba(245,158,11,.2)}.empty-state{text-align:center;padding:40px 20px}.empty-state-icon{width:64px;height:64px;margin:0 auto 16px;color:var(--gray-400)}.empty-state-title{font-size:18px;font-weight:600;color:var(--gray-700);margin-bottom:8px}.empty-state-text{font-size:14px;color:var(--gray-500)}@media(max-width:768px){.card{padding:16px;border-radius:var(--radius)}.table th,.table td{padding:10px 12px}.stat-card-value{font-size:24px}.modal{max-width:100%;margin:16px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.grid{display:grid;gap:16px}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.grid-cols-4,.grid-cols-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-3{gap:12px}.gap-4{gap:16px}.text-center{text-align:center}.text-sm{font-size:12px}.text-lg{font-size:18px}.text-xl{font-size:20px}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-gray-500{color:var(--gray-500)}.text-gray-600{color:var(--gray-600)}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.p-4{padding:16px}.p-6{padding:24px}@media print{body{background:#fff}.no-print{display:none!important}.bill-container{box-shadow:none!important;border:1px solid #000}}.layout{display:flex;min-height:100vh}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:60px;background:var(--white);border-bottom:1px solid var(--gray-200);padding:0 16px;align-items:center;gap:16px;z-index:100}.menu-toggle{background:none;border:none;padding:8px;cursor:pointer;color:var(--gray-700);display:flex;align-items:center;justify-content:center}.mobile-header-title h1{font-size:16px;font-weight:600;color:var(--gray-900)}.sidebar{width:280px;background:var(--gray-900);color:var(--white);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:200;transition:transform .3s ease}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:150}.sidebar-header{padding:20px;border-bottom:1px solid var(--gray-700);display:flex;align-items:center;justify-content:space-between}.sidebar-logo{display:flex;align-items:center;gap:12px}.sidebar-logo-img{width:38px;height:38px;border-radius:10px;object-fit:contain;background:#ffffff1a;padding:4px}.sidebar-logo svg{color:var(--primary-light)}.sidebar-logo h2{font-size:18px;font-weight:700;line-height:1.2}.sidebar-logo span{font-size:12px;color:var(--gray-400)}.sidebar-close{display:none;background:none;border:none;color:var(--gray-400);padding:4px;cursor:pointer}.sidebar-close:hover{color:var(--white)}.sidebar-user{padding:20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--gray-700)}.user-avatar{width:44px;height:44px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.user-info{display:flex;flex-direction:column}.user-name{font-size:14px;font-weight:600}.user-role{font-size:12px;color:var(--gray-400)}.user-branch{font-size:11px;color:var(--primary-light);margin-top:2px}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;color:var(--gray-300);text-decoration:none;border-radius:var(--radius);margin-bottom:4px;transition:all .2s ease}.nav-item:hover{background:var(--gray-800);color:var(--white)}.nav-item.active{background:var(--primary);color:var(--white)}.nav-item span{flex:1;font-size:14px;font-weight:500}.nav-arrow{opacity:0;transition:opacity .2s ease}.nav-item:hover .nav-arrow,.nav-item.active .nav-arrow{opacity:1}.sidebar-footer{padding:16px 12px;border-top:1px solid var(--gray-700)}.logout-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;color:var(--gray-300);cursor:pointer;border-radius:var(--radius);transition:all .2s ease}.logout-btn:hover{background:#ef44441a;color:var(--danger)}.logout-btn span{font-size:14px;font-weight:500}.main-content{flex:1;margin-left:280px;padding:24px;min-height:100vh;background:linear-gradient(135deg,#f0f4ff,#f8fafc,#f0fdf4,#f8fafc,#fef3f2);background-attachment:fixed;position:relative}.main-content:before{content:"";position:fixed;inset:0 0 0 280px;background:radial-gradient(ellipse at 10% 20%,rgba(59,130,246,.04) 0%,transparent 50%),radial-gradient(ellipse at 90% 80%,rgba(34,197,94,.04) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(99,102,241,.02) 0%,transparent 60%);pointer-events:none;z-index:0}.main-content>*{position:relative;z-index:1}@media(max-width:1024px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay,.sidebar-close{display:block}.mobile-header{display:flex}.main-content{margin-left:0;padding-top:76px}.main-content:before{left:0}}@media(max-width:640px){.main-content{padding:76px 16px 16px}.sidebar{width:100%}}.login-page{min-height:100vh;display:flex;background:#f8fafc}.login-brand{position:relative;flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f172a,#1e3a5f 40%,#2563eb);overflow:hidden;padding:60px}.login-brand-bg{position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(59,130,246,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(99,102,241,.2) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(37,99,235,.1) 0%,transparent 70%);pointer-events:none}.login-brand-bg:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:repeating-linear-gradient(45deg,transparent,transparent 35px,rgba(255,255,255,.01) 35px,rgba(255,255,255,.01) 70px);animation:patternMove 20s linear infinite}@keyframes patternMove{0%{transform:translate(0)}to{transform:translate(70px,70px)}}.login-brand-content{position:relative;z-index:1;max-width:400px}.login-brand-logo{width:80px;height:80px;border-radius:20px;object-fit:contain;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px;border:1px solid rgba(255,255,255,.15);margin-bottom:28px}.login-brand-title{font-size:36px;font-weight:800;color:#fff;letter-spacing:-.5px;margin:0 0 8px}.login-brand-subtitle{font-size:16px;color:#fff9;margin:0 0 48px;font-weight:400}.login-brand-features{display:flex;flex-direction:column;gap:18px}.login-feature{display:flex;align-items:center;gap:14px;color:#ffffffd9;font-size:15px;font-weight:400}.login-feature-dot{width:8px;height:8px;border-radius:50%;background:#3b82f6;flex-shrink:0;box-shadow:0 0 12px #3b82f699}.login-form-side{flex:1;display:flex;align-items:center;justify-content:center;padding:40px;background:#fff}.login-form-container{width:100%;max-width:400px}.login-form-header{margin-bottom:36px}.login-form-header h2{font-size:28px;font-weight:700;color:#0f172a;margin:0 0 8px}.login-form-header p{font-size:15px;color:#64748b;margin:0}.login-alert{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:13px;font-weight:500;margin-bottom:20px;animation:alertSlide .3s ease-out}@keyframes alertSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.login-form{display:flex;flex-direction:column;gap:20px}.login-field label{display:block;font-size:13px;font-weight:600;color:#334155;margin-bottom:8px}.login-input-wrapper{position:relative;display:flex;align-items:center}.login-input-icon{position:absolute;left:14px;color:#94a3b8;pointer-events:none;transition:color .2s}.login-input-wrapper input{width:100%;padding:13px 14px 13px 44px;font-size:15px;color:#0f172a;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;outline:none;transition:all .2s}.login-input-wrapper input::placeholder{color:#94a3b8}.login-input-wrapper input:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.login-input-wrapper input:focus~.login-input-icon,.login-input-wrapper:focus-within .login-input-icon{color:#2563eb}.login-password-toggle{position:absolute;right:12px;background:none;border:none;padding:6px;cursor:pointer;color:#94a3b8;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.login-password-toggle:hover{color:#475569;background:#f1f5f9}.login-submit{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:12px;cursor:pointer;transition:all .2s;margin-top:4px;box-shadow:0 4px 12px #2563eb4d}.login-submit:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 20px #2563eb66;transform:translateY(-1px)}.login-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #2563eb4d}.login-submit:disabled{opacity:.7;cursor:not-allowed}.login-spinner{width:22px;height:22px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.login-footer-text{text-align:center;font-size:13px;color:#94a3b8;margin-top:32px}@media(max-width:900px){.login-page{flex-direction:column}.login-brand{padding:40px 30px;min-height:auto}.login-brand-features{display:none}.login-brand-subtitle{margin-bottom:0}.login-brand-content{display:flex;flex-direction:column;align-items:center;text-align:center}.login-brand-logo{width:60px;height:60px;margin-bottom:16px}.login-brand-title{font-size:24px}.login-brand-subtitle{font-size:14px}.login-form-side{padding:30px 20px 40px}.login-form-header h2{font-size:22px}}@media(max-width:480px){.login-brand{padding:30px 20px}.login-brand-logo{width:50px;height:50px;padding:8px;border-radius:14px}.login-brand-title{font-size:20px}.login-form-side{padding:24px 16px 32px}.login-form-header{margin-bottom:24px}.login-form-header h2{font-size:20px}.login-input-wrapper input{padding:12px 12px 12px 40px;font-size:14px}.login-submit{padding:12px;font-size:15px}}.dashboard{max-width:1200px;margin:0 auto}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gray-100)}.card-header h3{font-size:16px;font-weight:600;color:var(--gray-800)}.card-header svg{color:var(--gray-400)}.sales-list{display:flex;flex-direction:column;gap:12px}.sale-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--gray-50);border-radius:var(--radius);transition:background .2s}.sale-item:hover{background:var(--gray-100)}.sale-info{display:flex;flex-direction:column;gap:2px}.sale-customer{font-size:14px;font-weight:500;color:var(--gray-800)}.sale-meta{font-size:12px;color:var(--gray-500)}.sale-details{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.sale-amount{font-size:14px;font-weight:600;color:var(--success)}.sale-date{font-size:12px;color:var(--gray-500)}.stock-list{display:flex;flex-direction:column;gap:12px}.stock-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--gray-50);border-radius:var(--radius)}.stock-info{display:flex;flex-direction:column;gap:2px}.stock-name{font-size:14px;font-weight:500;color:var(--gray-800)}.stock-location{font-size:12px;color:var(--gray-500)}.stock-qty{font-size:14px;font-weight:600;padding:4px 10px;border-radius:20px;background:#22c55e1a;color:var(--success)}.stock-qty.warning{background:#f59e0b1a;color:var(--warning)}.stock-qty.critical{background:#ef44441a;color:var(--danger)}.card .empty-state{padding:24px;text-align:center}.card .empty-state p{font-size:14px;color:var(--gray-500)}@media(max-width:640px){.page-header h1{font-size:24px}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.sale-item{flex-direction:column;align-items:flex-start;gap:8px}.sale-details{align-items:flex-start;flex-direction:row;gap:12px}}.stock-page{max-width:1200px;margin:0 auto}.search-bar .form-input:focus{box-shadow:none}.filter-bar .form-select{max-width:200px}.product-name{display:flex;align-items:center;gap:10px}.product-name svg{color:var(--primary)}.action-buttons{display:flex;gap:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}textarea.form-input{resize:vertical;min-height:80px}.stock-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:20px}.stock-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:16px;transition:transform .2s,box-shadow .2s}.stock-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stock-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.stock-card-title{font-size:14px;font-weight:600;color:var(--gray-900);line-height:1.3}.stock-card-sku{font-size:12px;color:var(--gray-500);margin-top:4px}.stock-card-category{font-size:11px;padding:4px 8px;background:var(--gray-100);color:var(--gray-600);border-radius:20px}.stock-card-body{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--gray-100)}.stock-card-qty{font-size:24px;font-weight:700;color:var(--gray-900)}.stock-card-qty.low{color:var(--danger)}.stock-card-qty.warning{color:var(--warning)}.stock-card-unit{font-size:12px;color:var(--gray-500);margin-left:4px;font-weight:400}.stock-card-price{font-size:14px;font-weight:600;color:var(--primary)}.stock-update-form{display:flex;gap:8px;align-items:center;margin-top:12px}.stock-update-form .form-input{width:80px;padding:8px 12px;font-size:14px}.entity-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px;display:flex;align-items:center;gap:16px}.entity-avatar{width:56px;height:56px;border-radius:50%;background:var(--primary);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600;flex-shrink:0}.entity-info{flex:1;min-width:0}.entity-name{font-size:16px;font-weight:600;color:var(--gray-900);margin-bottom:4px}.entity-detail{font-size:13px;color:var(--gray-500);margin-bottom:2px}.entity-badge{display:inline-flex;align-items:center;gap:4px;margin-top:8px}.entity-actions{display:flex;gap:8px}.transfer-form .branch-select-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px}.branch-select-item{padding:12px;border:2px solid var(--gray-200);border-radius:var(--radius);cursor:pointer;text-align:center;transition:all .2s}.branch-select-item:hover{border-color:var(--primary)}.branch-select-item.selected{border-color:var(--primary);background:#2563eb0d}.branch-select-item span{font-size:14px;font-weight:500;color:var(--gray-700)}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.page-header .btn{width:100%}.form-row{grid-template-columns:1fr}.entity-card{flex-direction:column;text-align:center}.entity-actions{margin-top:12px}.filter-bar{flex-direction:column}.filter-bar .form-select{max-width:100%}}@media(max-width:480px){.stock-cards-grid{grid-template-columns:1fr}.action-buttons{flex-wrap:wrap}}.sales-page{max-width:1200px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:16px}.search-bar{display:flex;align-items:center;gap:12px;background:var(--white);padding:12px 16px;border-radius:var(--radius-lg);box-shadow:var(--shadow);margin-bottom:20px}.search-bar svg{color:var(--gray-400);flex-shrink:0}.search-bar .form-input{border:none;padding:0;box-shadow:none}.my-stock-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.my-stock-item{background:var(--gray-50);border-radius:var(--radius);padding:12px;display:flex;justify-content:space-between;align-items:center}.my-stock-info{display:flex;flex-direction:column;gap:2px}.my-stock-name{font-size:14px;font-weight:500;color:var(--gray-800)}.my-stock-price{font-size:12px;color:var(--gray-500)}.my-stock-qty{font-size:24px;font-weight:700;color:var(--primary)}.product-list{display:flex;flex-direction:column;gap:12px}.product-list-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--gray-50);border-radius:var(--radius);flex-wrap:wrap}.product-list-info{display:flex;align-items:center;gap:12px;flex:1;min-width:200px}.product-list-icon{color:var(--primary);flex-shrink:0}.product-list-name{font-size:14px;font-weight:600;color:var(--gray-800)}.product-list-meta{font-size:12px;color:var(--gray-500);margin-top:2px}.product-list-stock{display:flex;gap:16px}.stock-info-box{display:flex;flex-direction:column;align-items:center;padding:8px 16px;background:var(--white);border-radius:var(--radius);min-width:70px}.stock-label{font-size:10px;color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px}.stock-value{font-size:18px;font-weight:700;color:var(--gray-800)}.stock-value.low{color:var(--danger)}.stock-value.mine{color:var(--primary)}.product-list-actions{display:flex;align-items:center;gap:8px}.quantity-input{display:flex;align-items:center;background:var(--white);border-radius:var(--radius);border:1px solid var(--gray-300);overflow:hidden}.quantity-input .qty-btn{background:none;border:none;padding:8px 12px;cursor:pointer;color:var(--gray-600);transition:all .2s}.quantity-input .qty-btn:hover{background:var(--gray-100);color:var(--primary)}.quantity-input input{width:50px;padding:8px;border:none;text-align:center;font-size:14px;font-weight:500}.quantity-input input:focus{outline:none}.bill-container{display:grid;grid-template-columns:1fr 400px;gap:24px}.bill-products{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px}.bill-summary{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px;position:sticky;top:24px;align-self:flex-start}.bill-summary h3{font-size:18px;font-weight:600;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gray-200)}.cart-items{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;max-height:300px;overflow-y:auto}.cart-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--gray-50);border-radius:var(--radius)}.cart-item-info{flex:1}.cart-item-name{font-size:14px;font-weight:500;color:var(--gray-800)}.cart-item-details{font-size:12px;color:var(--gray-500);margin-top:2px}.cart-item-total{font-size:14px;font-weight:600;color:var(--gray-900);margin-right:12px}.cart-item-remove{background:none;border:none;color:var(--danger);cursor:pointer;padding:4px}.bill-totals{border-top:1px solid var(--gray-200);padding-top:16px;margin-bottom:20px}.bill-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.bill-row.total{border-top:2px solid var(--gray-800);margin-top:8px;padding-top:12px;font-size:18px;font-weight:700}.bill-row label{color:var(--gray-600)}.bill-row span{color:var(--gray-900);font-weight:500}.bill-row.total span{color:var(--success)}.customer-form{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--gray-200)}.bill-preview{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:32px;max-width:600px;margin:0 auto}.bill-preview-header{text-align:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px dashed var(--gray-300)}.bill-preview-header h2{font-size:24px;font-weight:700;color:var(--gray-900);margin-bottom:4px}.bill-preview-header p{font-size:14px;color:var(--gray-500)}.bill-preview-info{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.bill-preview-info div{font-size:13px}.bill-preview-info label{color:var(--gray-500);display:block;margin-bottom:2px}.bill-preview-info span{font-weight:500;color:var(--gray-800)}.bill-preview-items{margin-bottom:24px}.bill-preview-items table{width:100%;border-collapse:collapse}.bill-preview-items th,.bill-preview-items td{padding:10px 8px;text-align:left;font-size:13px}.bill-preview-items th{background:var(--gray-100);font-weight:600;color:var(--gray-700)}.bill-preview-items td{border-bottom:1px solid var(--gray-100)}.bill-preview-items .text-right{text-align:right}.bill-preview-totals{margin-left:auto;width:250px}.bill-preview-totals .bill-row{font-size:14px}.bill-preview-footer{text-align:center;margin-top:32px;padding-top:16px;border-top:2px dashed var(--gray-300)}.bill-preview-footer p{font-size:14px;color:var(--gray-500)}.sales-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.sales-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px}.sales-stat{background:var(--gray-50);padding:16px;border-radius:var(--radius);text-align:center}.sales-stat-value{font-size:24px;font-weight:700;color:var(--gray-900)}.sales-stat-label{font-size:12px;color:var(--gray-500);margin-top:4px}@media(max-width:1024px){.bill-container{grid-template-columns:1fr}.bill-summary{position:static}}@media(max-width:768px){.product-list-item{flex-direction:column;align-items:stretch}.product-list-info,.product-list-stock{margin-bottom:12px}.product-list-actions{flex-wrap:wrap}.my-stock-grid,.bill-preview-info{grid-template-columns:1fr}}@media(max-width:480px){.quantity-input input{width:40px}.stock-info-box{min-width:60px;padding:6px 10px}}.tax-invoice{width:210mm;min-height:297mm;padding:5mm;margin:0 auto;background:#fff;font-family:Arial,sans-serif;font-size:10px;color:#000;box-sizing:border-box}.invoice-header-title{text-align:center;padding:5px 0;border-bottom:1px solid #000}.invoice-header-title h2{margin:0;font-size:14px;font-weight:700}.invoice-header-section{display:flex;border:1px solid #000;border-top:none}.header-left-column{flex:1;border-right:1px solid #000}.header-right-column{flex:1}.company-box{padding:5px 8px;border-bottom:1px solid #000}.company-box p{margin:1px 0;font-size:9px;line-height:1.3}.company-name-bold{font-weight:700;font-size:11px!important}.company-addr{white-space:pre-line}.address-row{display:flex;border-top:1px solid #000}.address-box-half{flex:1;padding:4px 6px;border-right:1px solid #000}.address-box-half:last-child{border-right:none}.address-box-half p{margin:1px 0;font-size:8px;line-height:1.2}.address-label{font-size:7px!important;color:#666}.customer-name-bold{font-weight:700;font-size:9px!important}.invoice-details-table{width:100%;border-collapse:collapse}.invoice-details-table td{padding:4px 6px;border:1px solid #000;font-size:9px;vertical-align:top}.invoice-details-table .detail-label{background:#f5f5f5;font-size:8px;color:#333;width:25%;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-details-table .detail-value{font-weight:700;width:25%}.invoice-items-section{margin-top:0}.invoice-items-table{width:100%;border-collapse:collapse;font-size:8px}.invoice-items-table th{background:#8bc34a;color:#fff;padding:4px 2px;text-align:center;font-weight:700;border:1px solid #8bc34a;font-size:7px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-items-table .col-sno{width:4%;text-align:center}.invoice-items-table .col-item{width:20%;text-align:left}.invoice-items-table .col-hsn{width:10%;text-align:center}.invoice-items-table .col-batch{width:12%;text-align:center}.invoice-items-table .col-exp,.invoice-items-table .col-mfg{width:10%;text-align:center}.invoice-items-table .col-qty{width:8%;text-align:center}.invoice-items-table .col-rate{width:10%;text-align:right}.invoice-items-table .col-amount{width:12%;text-align:right}.invoice-items-table td{padding:3px 2px;border:1px solid #ddd;vertical-align:top;font-size:8px}.invoice-items-table td.col-sno{text-align:center}.invoice-items-table td.col-item{text-align:left;padding-left:4px}.invoice-items-table td.col-hsn,.invoice-items-table td.col-batch,.invoice-items-table td.col-exp,.invoice-items-table td.col-mfg,.invoice-items-table td.col-qty{text-align:center}.invoice-items-table td.col-rate,.invoice-items-table td.col-amount{text-align:right;padding-right:4px}.invoice-items-table tbody tr:nth-child(2n){background:#f9f9f9}.invoice-items-table .empty-row td{height:16px}.invoice-gst-section{border:1px solid #ddd;border-top:none}.gst-rows{width:100%}.gst-row{display:flex;padding:4px 10px;border-bottom:1px solid #ddd;align-items:center;font-size:9px}.gst-row:last-child{border-bottom:none}.gst-label{flex:1;font-style:italic}.gst-dash{width:50px;text-align:center}.gst-value{width:90px;text-align:right}.total-row{background:#f5f5f5;font-weight:700;-webkit-print-color-adjust:exact;print-color-adjust:exact}.total-row .gst-label{font-style:normal}.total-qty{width:50px;text-align:center}.total-amount{font-size:11px;color:#2e7d32}.invoice-hsn-section{margin-top:8px}.hsn-table{width:100%;border-collapse:collapse;font-size:8px}.hsn-table th{background:#8bc34a;color:#fff;padding:4px 5px;text-align:center;border:1px solid #8bc34a;font-size:7px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.hsn-table .sub-header th{background:#a5d6a7;color:#000;font-weight:400;padding:2px 5px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.hsn-table td{padding:4px 5px;border:1px solid #ddd;text-align:center;font-size:8px}.hsn-total-row{background:#f5f5f5;-webkit-print-color-adjust:exact;print-color-adjust:exact}.hsn-total-row td:last-child{color:#2e7d32}.invoice-amount-words{border:1px solid #8bc34a;padding:6px 10px;margin-top:8px;background:#f9fbe7;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-amount-words h4{font-size:8px;margin:0 0 3px;color:#666;font-weight:400}.invoice-amount-words p{font-size:9px;margin:0;font-weight:700}.invoice-footer-section{display:flex;border:1px solid #8bc34a;margin-top:8px}.bank-details{flex:1;padding:6px 10px;border-right:1px solid #8bc34a}.bank-details h4{font-size:9px;margin:0 0 5px;color:#2e7d32;font-weight:700}.bank-table{font-size:8px}.bank-table td{padding:1px 3px 1px 0}.bank-table td:first-child{color:#666;width:65px}.payment-qr-box{flex:1.2;padding:6px}.payment-qr-content{display:flex;border:1.5px solid #000;border-radius:5px;height:100%;overflow:hidden}.payment-qr-info{flex:1;padding:6px 8px;display:flex;flex-direction:column;justify-content:center}.payment-title{font-size:11px;font-weight:700;color:#000;margin:0 0 4px}.upi-label{font-size:9px;color:#000;margin:0}.upi-value{font-size:10px;font-weight:600;color:#000;margin:0 0 6px}.payment-apps{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.payment-app-icon{width:14px;height:14px;vertical-align:middle}.gpay-icon{width:16px;height:16px}.paytm-icon,.upi-icon{width:32px;height:12px}.app-label{font-size:7px;font-weight:600;margin-right:3px}.app-label.phonepe{color:#5f259f}.app-label.gpay{color:#4285f4}.payment-qr-code{display:flex;align-items:center;justify-content:center;padding:4px;background:#fff;border-left:1px solid #eee}.payment-qr-code svg{display:block}.invoice-terms-section{display:flex;border:1px solid #8bc34a;border-top:none;margin-top:-1px}.terms{flex:1.5;padding:6px 10px;border-right:1px solid #8bc34a}.terms h4{font-size:9px;margin:0 0 4px;font-weight:700}.terms ol{margin:0;padding-left:12px;font-size:7px;line-height:1.4}.terms li{margin-bottom:2px}.signature{flex:1;padding:6px 10px;text-align:right;display:flex;flex-direction:column;justify-content:flex-end}.signature p{margin:0;font-size:8px}.signature p:last-child{margin-top:2px}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.no-print,.page-header,.sidebar,.topbar,nav,header,footer,.btn{display:none!important;visibility:hidden!important}html,body{margin:0!important;padding:0!important;background:#fff!important;height:auto!important;overflow:visible!important}#root,.app,.app-container,.main-content,.sales-page{display:block!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}.tax-invoice{display:block!important;visibility:visible!important;position:relative!important;width:200mm!important;min-height:auto!important;padding:4mm!important;margin:0!important;box-shadow:none!important;background:#fff!important;page-break-inside:avoid!important}.invoice-header-title{display:block!important;visibility:visible!important;border-bottom:1px solid #000!important}.invoice-header-section{display:flex!important;visibility:visible!important;border:1px solid #000!important;border-top:none!important}.header-left-column{display:block!important;visibility:visible!important;border-right:1px solid #000!important}.header-right-column{display:block!important;visibility:visible!important}.company-box,.address-box{display:block!important;visibility:visible!important;border-bottom:1px solid #000!important}.address-box:last-child{border-bottom:none!important}.invoice-details-table{display:table!important;visibility:visible!important}.invoice-details-table td{border:1px solid #000!important}.invoice-details-table .detail-label{background-color:#f5f5f5!important}.invoice-items-section{display:block!important;visibility:visible!important}.invoice-items-table{display:table!important;visibility:visible!important;width:100%!important}.invoice-items-table th{background-color:#8bc34a!important;color:#fff!important}.invoice-items-table td{border:1px solid #ddd!important}.invoice-items-table tbody tr:nth-child(2n){background-color:#f9f9f9!important}.invoice-gst-section{display:block!important;visibility:visible!important}.total-row{background-color:#f5f5f5!important}.invoice-hsn-section{display:block!important;visibility:visible!important}.hsn-table{display:table!important;visibility:visible!important;width:100%!important}.hsn-table th{background-color:#8bc34a!important;color:#fff!important}.hsn-table .sub-header th{background-color:#a5d6a7!important;color:#000!important}.hsn-total-row{background-color:#f5f5f5!important}.invoice-amount-words{display:block!important;visibility:visible!important;background-color:#f9fbe7!important;border:1px solid #8bc34a!important}.invoice-footer-section{display:flex!important;visibility:visible!important;border:1px solid #8bc34a!important}.bank-details{display:block!important;visibility:visible!important;border-right:1px solid #8bc34a!important}.bank-details h4{color:#2e7d32!important}.payment-qr-box{display:block!important;visibility:visible!important}.payment-qr-content{display:flex!important;visibility:visible!important;border:1.5px solid #000!important}.payment-qr-code svg{width:85px!important;height:85px!important}.invoice-terms-section{display:flex!important;visibility:visible!important;border:1px solid #8bc34a!important;border-top:none!important}.terms{display:block!important;visibility:visible!important;border-right:1px solid #8bc34a!important}.signature{display:flex!important;visibility:visible!important}@page{size:A4 portrait;margin:4mm}}@media screen{.tax-invoice{box-shadow:0 0 10px #0000001a;margin:20px auto}}.invoice-machine-note{margin-top:12px;padding:10px 16px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px dashed #0ea5e9;border-radius:6px;text-align:center}.invoice-machine-note p{margin:0;font-size:11px;font-style:italic;color:#0369a1;font-weight:500}@media print{.invoice-machine-note{background:#f8fafc!important;border:1px dashed #64748b!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-machine-note p{color:#334155!important}}.reports-page{max-width:1200px;margin:0 auto}.page-header{margin-bottom:24px}.page-header h1{font-size:28px;font-weight:700;color:var(--gray-900);margin-bottom:4px}.page-header p{font-size:14px;color:var(--gray-500)}.filter-bar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.reports-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--gray-800);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gray-100)}.card-title svg{color:var(--primary)}.category-bars{display:flex;flex-direction:column;gap:16px}.category-bar-item{display:flex;flex-direction:column;gap:6px}.category-bar-header{display:flex;justify-content:space-between;align-items:center}.category-name{font-size:14px;font-weight:500;color:var(--gray-700)}.category-amount{font-size:14px;font-weight:600;color:var(--gray-900)}.category-bar-track{height:8px;background:var(--gray-100);border-radius:4px;overflow:hidden}.category-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--primary-light) 100%);border-radius:4px;transition:width .3s ease}.category-bar-footer{font-size:12px;color:var(--gray-500)}.payment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.payment-card{background:var(--gray-50);border-radius:var(--radius);padding:16px;text-align:center}.payment-method{font-size:12px;font-weight:600;color:var(--gray-500);margin-bottom:8px}.payment-count{font-size:24px;font-weight:700;color:var(--gray-900)}.payment-amount{font-size:14px;color:var(--success);font-weight:500;margin-top:4px}@media(max-width:1024px){.reports-grid{grid-template-columns:1fr}}@media(max-width:640px){.payment-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column}.filter-bar .form-select{max-width:100%!important}}.accounts-page{padding:24px}.accounts-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.accounts-page .page-header h1{font-size:24px;font-weight:600;color:#1a1a2e;margin:0 0 4px}.accounts-page .page-header p{font-size:14px;color:#6b7280;margin:0}.pending-count{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff3cd;color:#856404;border-radius:8px;font-weight:500}.empty-state,.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{color:#d1d5db;margin-bottom:16px}.empty-state h3{font-size:18px;color:#374151;margin:0 0 8px}.empty-state p{color:#6b7280;margin:0}.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#4f46e5;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.pending-bills-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.pending-bill-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:box-shadow .2s}.pending-bill-card:hover{box-shadow:0 4px 12px #00000014}.bill-card-header{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#f8fafc;border-bottom:1px solid #e5e7eb}.bill-number{display:flex;align-items:center;gap:8px;font-weight:600;color:#1a1a2e}.bill-status{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.bill-status.pending{background:#fef3c7;color:#92400e}.bill-card-body{padding:16px}.bill-info-row{display:flex;justify-content:space-between;padding:6px 0;font-size:14px}.bill-info-row .label{color:#6b7280}.bill-info-row .value{color:#1f2937;font-weight:500}.bill-info-row.amount{margin-top:8px;padding-top:12px;border-top:1px dashed #e5e7eb}.bill-info-row.amount .value{font-size:18px;color:#059669;font-weight:600}.bill-card-actions{display:flex;gap:8px;padding:12px 16px;background:#f8fafc;border-top:1px solid #e5e7eb}.bill-card-actions .btn{flex:1}.edit-form-container{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.edit-section{padding:20px 24px;border-bottom:1px solid #e5e7eb}.edit-section:last-child{border-bottom:none}.edit-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-grid .full-width{grid-column:1 / -1}.items-table{width:100%;border-collapse:collapse;font-size:14px}.items-table th{text-align:left;padding:10px 12px;background:#f8fafc;font-weight:500;color:#6b7280;border-bottom:1px solid #e5e7eb}.items-table td{padding:10px 12px;border-bottom:1px solid #f3f4f6}.totals-summary{margin-top:20px;padding:16px;background:#f8fafc;border-radius:8px}.total-row{display:flex;justify-content:space-between;padding:6px 0;font-size:14px}.total-row.final{margin-top:8px;padding-top:12px;border-top:1px solid #e5e7eb;font-size:16px;font-weight:600;color:#059669}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;padding:24px;width:100%;max-width:450px;box-shadow:0 20px 25px -5px #0000001a}.modal h3{margin:0 0 8px;font-size:18px;color:#1a1a2e}.modal p{margin:0 0 16px;color:#6b7280;font-size:14px}.modal textarea{width:100%;margin-bottom:16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.flex{display:flex}.gap-2{gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-sm{padding:6px 10px;font-size:13px}.btn-primary{background:#4f46e5;color:#fff}.btn-primary:hover{background:#4338ca}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb}.btn-success{background:#059669;color:#fff}.btn-success:hover{background:#047857}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover{background:#b91c1c}.form-group{margin-bottom:0}.form-label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.form-input,.form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.form-input:focus,.form-select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}@media print{.no-print{display:none!important}}@media(max-width:768px){.accounts-page{padding:16px}.pending-bills-list,.form-grid{grid-template-columns:1fr}.accounts-page .page-header{flex-direction:column;gap:16px}.bill-card-actions{flex-wrap:wrap}.bill-card-actions .btn{flex:1 1 45%}}
