*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,sans-serif;background:#f4f5f7;color:#1a1a1a}.erp-shell{display:flex;min-height:100vh}.erp-sidebar{width:230px;flex-shrink:0;background:#0f172a;color:#cbd5e1;display:flex;flex-direction:column;padding:20px 0;transition:width .15s ease;position:relative}.erp-sidebar.collapsed{width:64px}.erp-sidebar-brand{padding:0 20px 20px;border-bottom:1px solid #1e293b;margin-bottom:16px;min-height:20px}.erp-sidebar.collapsed .erp-sidebar-brand{padding:0 0 20px}.erp-brand-mark{font-size:18px;font-weight:800;color:#fff}.erp-brand-mark span{color:#34d399}.erp-brand-sub{font-size:11px;color:#64748b;margin-top:4px}.erp-nav-group{padding:0 12px;margin-bottom:18px}.erp-nav-label{font-size:11px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.06em;padding:0 8px 6px}.erp-nav-link{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:6px;color:#cbd5e1;text-decoration:none;font-size:14px;margin-bottom:2px}.erp-nav-link svg{flex-shrink:0}.erp-nav-link:hover{background:#1e293b;color:#fff}.erp-nav-link.active{background:#2563eb;color:#fff;font-weight:600}.erp-collapse-btn{position:absolute;top:16px;right:-12px;width:24px;height:24px;border-radius:50%;background:#1e293b;border:1px solid #334155;color:#cbd5e1;display:flex;align-items:center;justify-content:center;padding:0}.erp-collapse-btn svg{width:14px;height:14px}.erp-sidebar-footer{margin-top:auto;padding:16px 20px 0;border-top:1px solid #1e293b;display:flex;flex-direction:column;gap:8px}.erp-sidebar.collapsed .erp-sidebar-footer{padding:16px 10px 0;align-items:center}.erp-user-name{font-size:13px;color:#94a3b8}.erp-sidebar-footer button{background:#1e293b;color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:8px;width:100%}.erp-sidebar.collapsed .erp-sidebar-footer button{width:auto;padding:8px}.erp-content{flex:1;overflow:auto;padding:28px}.dashboard-subtitle{color:#6b7280;margin-top:-12px}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(160deg,#eef1fb,#e4ecf7 45%,#dde8f5);padding:24px}.login-card{background:#fff;padding:36px 40px;border-radius:14px;width:360px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 45px #1e293b1f}.login-brand{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:6px}.login-brand-mark{font-size:22px;font-weight:800;letter-spacing:-.02em;color:#16324a}.login-brand-mark span{color:#1f9d55}.login-brand-app{font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.08em}label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}input,select,textarea{padding:8px;border:1px solid #d1d5db;border-radius:4px;font-size:14px}button{cursor:pointer;border-radius:4px;border:1px solid #d1d5db;background:#fff;padding:8px 14px}button.primary{background:#2563eb;color:#fff;border-color:#2563eb}.error{color:#dc2626;font-size:13px}.login-card input{background:#eef2fb;border:1px solid #e2e8f5;border-radius:8px;padding:12px 14px;font-size:15px;color:#1e293b}.login-card input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f626}.login-card button[type=submit]{margin-top:6px;background:#2563eb;color:#fff;border:none;border-radius:8px;padding:13px;font-size:15px;font-weight:600}.login-card button[type=submit]:hover{background:#1d4ed8}.login-card button[type=submit]:disabled{background:#93b4ec;cursor:not-allowed}.shift-gate{display:flex;align-items:center;justify-content:center;height:100%}.shift-card{background:#fff;padding:32px;border-radius:8px;width:360px;display:flex;flex-direction:column;gap:14px;box-shadow:0 4px 16px #0000001a}.summary-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.variance-warn{color:#b45309;font-weight:600}.shift-banner{background:#fef3c7;color:#92400e;padding:8px 16px;display:flex;gap:16px;align-items:center;border-radius:4px;margin-bottom:12px}.pos-page{display:flex;gap:16px;height:calc(100vh - 110px)}.product-panel{flex:2;display:flex;flex-direction:column;gap:12px;overflow:hidden}.search-box{width:100%;padding:12px;font-size:16px}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;overflow-y:auto}.product-tile{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:12px;text-align:left;display:flex;flex-direction:column;gap:6px}.product-tile:hover{border-color:#2563eb}.product-name{font-weight:600;font-size:14px}.product-price{color:#2563eb;font-weight:700}.product-stock{font-size:11px;color:#6b7280}.cart-panel{flex:1;background:#fff;border-radius:6px;padding:16px;display:flex;flex-direction:column;min-width:320px}.cart-items{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.cart-item{border-bottom:1px solid #f0f0f0;padding-bottom:8px}.cart-item-name{font-weight:600;font-size:14px}.cart-item-row{display:flex;align-items:center;gap:8px;margin-top:4px}.cart-item-row input[type=number]{width:60px}.discount-row select{flex:1}.link-btn{background:none;border:none;color:#2563eb;text-decoration:underline;padding:0}.sale-discount{display:flex;align-items:center;gap:8px;margin-top:12px}.sale-discount select{flex:1}.totals{margin-top:12px;display:flex;flex-direction:column;gap:4px;font-size:14px}.grand-total{font-size:20px;font-weight:700;border-top:1px solid #e5e7eb;padding-top:6px;margin-top:6px}.checkout-btn{margin-top:14px;background:#16a34a;color:#fff;border-color:#16a34a;padding:14px;font-size:16px;font-weight:600}.checkout-btn:disabled{opacity:.5}.empty{color:#9ca3af;text-align:center;padding:20px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:#fff;padding:24px;border-radius:8px;width:340px;display:flex;flex-direction:column;gap:12px}.modal.wide{width:600px}.checkout-total{font-size:18px;font-weight:700}.change-due{font-size:16px;font-weight:600;color:#16a34a}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.admin-page{display:flex;flex-direction:column;gap:20px}.admin-form{background:#fff;padding:16px;border-radius:6px;display:flex;flex-direction:column;gap:12px}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.form-actions{display:flex;gap:8px}.data-table{width:100%;border-collapse:collapse;background:#fff}.data-table th,.data-table td{text-align:left;padding:8px 10px;border-bottom:1px solid #f0f0f0;font-size:14px}.filters{display:flex;gap:12px;align-items:flex-end}.summary-cards{display:flex;gap:12px;flex-wrap:wrap}.card{background:#fff;padding:16px;border-radius:6px;min-width:140px}.card-label{font-size:12px;color:#6b7280}.card-value{font-size:22px;font-weight:700}.section h3{margin-bottom:8px}.settings-list{display:flex;flex-direction:column;gap:12px;max-width:640px}.settings-row{background:#fff;border-radius:8px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.settings-row strong{display:block;margin-bottom:4px}.settings-row p{margin:0;font-size:13px;color:#6b7280}.toggle-switch{width:44px;height:24px;border-radius:999px;border:none;background:#d1d5db;position:relative;padding:0;flex-shrink:0}.toggle-switch.on{background:#16a34a}.toggle-knob{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .15s ease}.toggle-switch.on .toggle-knob{left:23px}.prefix-input-group{display:flex;gap:8px;flex-shrink:0}.prefix-input-group input{width:110px;text-transform:uppercase}.items-page{display:flex;flex-direction:column;height:calc(100vh - 56px);gap:12px}.items-header h1{margin:0 0 6px}.items-body{flex:1;display:flex;gap:12px;overflow:hidden}.category-tree{width:260px;flex-shrink:0;background:#fff;border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.tree-title{padding:12px 14px;font-weight:700;font-size:13px;border-bottom:1px solid #f0f0f0;background:#f8fafc}.tree-scroll{flex:1;overflow-y:auto;padding:6px}.tree-node{display:flex;align-items:center;gap:4px;padding:7px 10px;border-radius:6px;font-size:13px;cursor:pointer;color:#334155}.tree-node:hover{background:#f1f5f9}.tree-node.selected{background:#dbeafe;color:#1d4ed8;font-weight:600}.tree-node.sub{margin-left:22px;color:#475569}.tree-toggle{width:14px;display:inline-block;text-align:center;color:#94a3b8;font-size:11px}.item-table-wrap{flex:1;background:#fff;border-radius:8px;overflow:auto}.items-table{width:100%;border-collapse:collapse}.items-table thead{background:#dbeafe;position:sticky;top:0}.items-table th,.items-table td{text-align:left;padding:8px 12px;font-size:13px;border-bottom:1px solid #f1f5f9;white-space:nowrap}.items-table tbody tr{cursor:pointer}.items-table tbody tr:hover{background:#f8fafc}.items-table tbody tr.selected{background:#dbeafe}.empty-row{text-align:center;color:#94a3b8;padding:24px!important}.items-toolbar{background:#fff;border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.items-toolbar button{font-size:13px}.items-toolbar .danger-text{color:#dc2626;border-color:#fecaca}.active-items-toggle{display:flex;align-items:center;gap:6px;margin-left:auto;text-transform:none;font-weight:500;font-size:13px;color:#374151}.active-items-toggle input{width:auto}.item-form .form-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.company-details-card{background:#fff;border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:14px;max-width:640px}.company-details-card h3{margin:0}.section-hint{margin:-8px 0 0;font-size:13px;color:#6b7280}.logo-preview{display:flex;align-items:center;gap:12px}.logo-preview img{max-height:60px;max-width:160px;border:1px solid #e5e7eb;border-radius:4px;padding:4px}.printbridge-card{background:#fff;border-radius:8px;padding:20px;max-width:720px}.printbridge-card-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.printbridge-card-header p{margin:4px 0 0;font-size:13px;color:#6b7280}.printbridge-card-header button{flex-shrink:0}.printbridge-steps{background:#fff;border-radius:8px;padding:20px;max-width:720px}.printbridge-steps h3{margin-top:0}.printbridge-steps ol{padding-left:20px;display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.5}.printbridge-steps code{background:#f1f5f9;padding:1px 6px;border-radius:4px;font-size:13px}.type-cell{font-size:12px;color:#6b7280;white-space:nowrap}.variant-section{border-top:1px solid #e5e7eb;padding-top:14px;margin-top:4px}.variant-section h3{margin:0 0 6px;font-size:15px}.field-hint{font-size:11px;font-weight:400;text-transform:none;color:#9ca3af;letter-spacing:normal}.grn-line-form{display:flex;gap:8px;align-items:center;margin:10px 0}.grn-line-form select{flex:2}.grn-line-form input{flex:1}.grn-total{text-align:right;font-size:18px;font-weight:700;margin:10px 0}.coa-type-section{margin-bottom:10px}.coa-type-section h3{margin-bottom:6px;font-size:14px;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.coa-child-code,.coa-child-name{padding-left:28px!important;color:#4b5563}.positive{color:#16a34a;font-weight:600}.negative{color:#dc2626;font-weight:600}
