.billing-container{display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-8)}.billing-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4);background-color:var(--color-bg-surface);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-sm)}.billing-header-title{display:flex;align-items:center;gap:var(--space-3)}.billing-header-title h1{font-size:var(--text-2xl);font-weight:700;color:var(--color-navy-100);margin:0}.billing-header-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.pos-workspace-grid{display:grid;grid-template-columns:1fr 380px;gap:var(--space-5);align-items:start}@media(max-width:1080px){.pos-workspace-grid{grid-template-columns:1fr}}.pos-items-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden}.pos-search-bar{padding:var(--space-4);background-color:var(--color-bg-subtle);border-bottom:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--space-3)}.pos-input-row{display:flex;gap:var(--space-3)}.pos-barcode-input{position:relative;flex:1}.pos-barcode-input input{padding-left:2.5rem;background-color:var(--color-bg-canvas);border:2px solid var(--color-border-subtle);font-family:var(--font-mono);font-size:var(--text-sm)}.pos-barcode-input input:focus{border-color:var(--color-amber-500);box-shadow:0 0 0 3px #f59e0b33}.pos-barcode-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-amber-500)}.pos-dropdown-results{position:absolute;top:100%;left:0;right:0;max-height:320px;overflow-y:auto;background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);z-index:50;margin-top:4px}.pos-search-item{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color var(--transition-fast)}.pos-search-item:hover{background-color:var(--color-bg-subtle)}.pos-search-item-info{display:flex;flex-direction:column;gap:2px}.pos-search-item-title{font-weight:600;color:var(--color-navy-100);font-size:var(--text-sm)}.pos-search-item-meta{font-size:var(--text-xs);color:var(--color-navy-400);display:flex;gap:var(--space-2)}.pos-search-item-price{font-weight:700;color:var(--color-amber-400);font-family:var(--font-mono);text-align:right}.pos-table-wrapper{overflow-x:auto;min-height:280px}.pos-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.pos-table th{background-color:var(--color-bg-subtle);color:var(--color-navy-300);font-weight:600;text-align:left;padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.pos-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.pos-qty-input{width:70px;text-align:center;font-family:var(--font-mono)}.pos-price-input{width:90px;text-align:right;font-family:var(--font-mono)}.pos-disc-input{width:70px;text-align:right;font-family:var(--font-mono)}.pos-summary-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:1rem}.pos-customer-section{display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.pos-customer-header{display:flex;justify-content:space-between;align-items:center}.pos-customer-badge{font-size:var(--text-xs);padding:2px 8px;border-radius:var(--radius-full)}.pos-customer-details{background-color:var(--color-bg-subtle);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--text-xs);color:var(--color-navy-300);display:flex;flex-direction:column;gap:3px}.pos-totals-section{display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.pos-total-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm);color:var(--color-navy-300)}.pos-grand-total{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-3) 0;border-top:2px dashed var(--color-border-subtle);border-bottom:2px dashed var(--color-border-subtle);margin-top:var(--space-2)}.pos-grand-total-label{font-size:var(--text-base);font-weight:700;color:var(--color-navy-100)}.pos-grand-total-value{font-size:var(--text-2xl);font-weight:800;color:var(--color-amber-400);font-family:var(--font-mono)}.payment-modes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.payment-mode-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2) var(--space-1);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background-color:var(--color-bg-subtle);color:var(--color-navy-300);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:all var(--transition-fast);gap:4px}.payment-mode-btn:hover{border-color:var(--color-amber-500);color:var(--color-navy-100)}.payment-mode-btn.active{background-color:#f59e0b26;border-color:var(--color-amber-500);color:var(--color-amber-400)}.tax-breakdown-card{background-color:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--text-xs)}.tax-breakdown-title{font-weight:600;color:var(--color-navy-200);margin-bottom:var(--space-2);display:flex;justify-content:space-between}.tax-breakdown-table{width:100%;border-collapse:collapse}.tax-breakdown-table th,.tax-breakdown-table td{padding:4px 6px;text-align:right;border-bottom:1px solid rgba(255,255,255,.05)}.tax-breakdown-table th:first-child,.tax-breakdown-table td:first-child{text-align:left}.invoice-page-container{width:min(100%,900px);min-width:0;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5)}.invoice-actions-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3);background-color:var(--color-bg-surface);padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-sm)}.invoice-actions-left{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);min-width:0}.invoice-actions-right{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-3);min-width:0}.a4-invoice-sheet{box-sizing:border-box;width:100%;min-width:0;background-color:#fff;color:#1e293b;padding:clamp(20px,4vw,40px);border-radius:var(--radius-lg);border:1px solid #e2e8f0;box-shadow:0 4px 20px #00000040;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.4;font-size:13px;overflow:hidden}.a4-invoice-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-bottom:2px solid #0f172a;padding-bottom:16px;margin-bottom:20px}.a4-invoice-header>:first-child{flex:1 1 360px;min-width:0}.a4-invoice-header>:last-child{flex:0 1 260px;min-width:0}.a4-company-name{font-size:22px;font-weight:800;color:#0f172a;letter-spacing:-.5px;overflow-wrap:anywhere}.a4-company-sub{font-size:12px;color:#475569;margin-top:2px;overflow-wrap:anywhere}.a4-invoice-badge{text-align:right;overflow-wrap:anywhere}.a4-invoice-type{font-size:18px;font-weight:800;color:#b45309;text-transform:uppercase}.a4-invoice-number{font-size:15px;font-weight:700;color:#0f172a;margin-top:4px;font-family:var(--font-mono)}.a4-grid-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.a4-box{min-width:0;border:1px solid #cbd5e1;border-radius:6px;padding:12px 16px;background-color:#f8fafc;overflow-wrap:anywhere}.a4-box-title{font-size:11px;font-weight:700;text-transform:uppercase;color:#64748b;margin-bottom:6px;letter-spacing:.5px}.a4-box-name{font-size:14px;font-weight:700;color:#0f172a;margin-bottom:4px}.a4-box-line{font-size:12px;color:#334155;margin-bottom:2px}.a4-table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:12px}.a4-table-wrap{width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}.a4-table-wrap .a4-table{min-width:740px}.a4-table th{background-color:#0f172a;color:#fff;padding:8px 10px;text-align:left;font-weight:600;border:1px solid #0f172a}.a4-table th.right,.a4-table td.right{text-align:right}.a4-table th.center,.a4-table td.center{text-align:center}.a4-table td{padding:8px 10px;border:1px solid #cbd5e1;color:#1e293b;vertical-align:middle}.a4-table tr:nth-child(2n) td{background-color:#f8fafc}.a4-totals-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:start;gap:20px;margin-bottom:20px}.a4-totals-grid>*{min-width:0}.a4-hsn-table{min-width:0}.a4-amount-words{background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:12px 14px;font-size:12px;font-weight:600;color:#0f172a}.a4-totals-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.a4-totals-table td{padding:5px 8px}.a4-totals-table td.label{color:#475569;text-align:left}.a4-totals-table td.value{text-align:right;font-weight:600;font-family:var(--font-mono);color:#0f172a}.a4-totals-table tr.grand td{font-size:15px;font-weight:800;color:#0f172a;border-top:2px solid #0f172a;border-bottom:2px solid #0f172a;padding:8px}.a4-footer{border-top:1px solid #cbd5e1;padding-top:16px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(200px,1fr);align-items:start;gap:24px;margin-top:16px}.a4-terms{min-width:0;font-size:10.5px;color:#64748b;line-height:1.5;overflow-wrap:anywhere}.a4-signature-box{min-width:0;text-align:right;display:flex;flex-direction:column;justify-content:space-between;height:90px}.a4-sign-company{font-weight:700;font-size:11px;color:#0f172a}.a4-sign-label{font-size:11px;color:#64748b;border-top:1px dashed #94a3b8;padding-top:4px;width:180px;align-self:flex-end}@media(max-width:760px){.invoice-actions-bar{align-items:flex-start;flex-direction:column}.invoice-actions-right{width:100%;justify-content:flex-start}.a4-invoice-sheet{padding:24px}.a4-grid-details,.a4-totals-grid,.a4-footer{grid-template-columns:minmax(0,1fr)}.a4-totals-grid{gap:16px}.a4-signature-box{width:100%}}@media(max-width:520px){.invoice-actions-left,.invoice-actions-right{width:100%}.invoice-actions-right{align-items:stretch;flex-direction:column}.invoice-actions-right>button{justify-content:center}.a4-invoice-sheet{padding:16px;border-radius:var(--radius-md)}.a4-invoice-header{flex-direction:column;gap:12px}.a4-invoice-header>:first-child,.a4-invoice-header>:last-child{flex-basis:auto;width:100%}.a4-invoice-badge{text-align:left}.a4-box{padding:10px 12px}.a4-totals-table td{padding:5px 4px}}@media print{body{background-color:#fff!important;color:#000!important;margin:0!important;padding:0!important}.erp-sidebar,.erp-header,.invoice-actions-bar,.no-print{display:none!important}.erp-main,.erp-content,.invoice-page-container{max-width:100%!important;padding:0!important;margin:0!important}.a4-invoice-sheet{box-shadow:none!important;border:none!important;padding:0!important;width:100%!important;max-width:100%!important;border-radius:0!important;overflow:visible!important;font-size:10px}.a4-invoice-header{gap:12px;flex-direction:row;margin-bottom:12px;padding-bottom:10px}.a4-invoice-header>:first-child{flex-basis:60%}.a4-invoice-header>:last-child{flex-basis:36%}.a4-invoice-badge{text-align:right}.a4-company-name{font-size:18px}.a4-company-sub{font-size:9px}.a4-invoice-type{font-size:14px}.a4-grid-details,.a4-totals-grid,.a4-footer{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-bottom:12px}.a4-box{padding:8px 10px}.a4-table-wrap{overflow:visible}.a4-table-wrap .a4-table{width:100%;min-width:0;table-layout:fixed;font-size:8px;margin-bottom:12px}.a4-table th,.a4-table td{padding:4px 3px;overflow-wrap:anywhere}.a4-table:not(.a4-hsn-table) th:nth-child(1),.a4-table:not(.a4-hsn-table) td:nth-child(1){width:3%}.a4-table:not(.a4-hsn-table) th:nth-child(2),.a4-table:not(.a4-hsn-table) td:nth-child(2){width:20%}.a4-table:not(.a4-hsn-table) th:nth-child(3),.a4-table:not(.a4-hsn-table) td:nth-child(3){width:8%}.a4-table:not(.a4-hsn-table) th:nth-child(4),.a4-table:not(.a4-hsn-table) td:nth-child(4),.a4-table:not(.a4-hsn-table) th:nth-child(5),.a4-table:not(.a4-hsn-table) td:nth-child(5){width:5%}.a4-table:not(.a4-hsn-table) th:nth-child(n+6),.a4-table:not(.a4-hsn-table) td:nth-child(n+6){width:8%}.a4-table thead{display:table-header-group}.a4-table tr{break-inside:avoid;page-break-inside:avoid}.a4-amount-words{padding:8px 10px;font-size:9px}.a4-footer{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);margin-top:10px}.a4-signature-box{height:75px}.a4-totals-table td{padding:3px 5px}.a4-totals-table tr.grand td{font-size:12px;padding:5px}.a4-totals-table,.a4-box,.a4-footer{break-inside:avoid;page-break-inside:avoid}@page{size:A4;margin:12mm 15mm}}.billing-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.billing-modal{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);width:100%;max-width:960px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.billing-modal-header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;align-items:center}.billing-modal-body{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.billing-modal-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border-subtle);display:flex;justify-content:flex-end;gap:var(--space-3);background-color:var(--color-bg-subtle)}.purchase-history-modal{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);width:90%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.inventory-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.inventory-header-actions{gap:var(--space-3)}.inventory-toolbar{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap}.inventory-search-box{flex:1;min-width:260px;position:relative}.inventory-filter-select{min-width:160px}.inventory-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:var(--space-4);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-amber{background-color:#f59e0b26;color:var(--color-amber-500)}.stat-icon-blue{background-color:#3b82f626;color:#3b82f6}.stat-icon-green{background-color:#10b98126;color:#10b981}.stat-icon-red{background-color:#ef444426;color:#ef4444}.stat-info{display:flex;flex-direction:column}.stat-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-top:var(--space-1)}.product-thumbnail{width:44px;height:44px;border-radius:var(--radius-md);object-fit:cover;background-color:var(--color-bg-subtle);border:1px solid var(--color-border-subtle)}.product-thumbnail-placeholder{width:44px;height:44px;border-radius:var(--radius-md);background-color:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary)}.form-section{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.form-section-title{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-subtle);display:flex;align-items:center;gap:var(--space-2)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.form-row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin-bottom:var(--space-4)}@media(max-width:900px){.form-row-3{grid-template-columns:1fr}}.image-upload-container{display:flex;align-items:center;gap:var(--space-5)}.image-preview-box{width:100px;height:100px;border-radius:var(--radius-lg);border:2px dashed var(--color-border-subtle);display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--color-bg-subtle)}.image-preview-img{width:100%;height:100%;object-fit:cover}.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-6);margin-bottom:var(--space-6)}@media(max-width:1024px){.detail-grid{grid-template-columns:1fr}}.specs-table{width:100%;border-collapse:collapse}.specs-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);font-size:var(--text-sm)}.specs-table td:first-child{color:var(--color-text-secondary);width:40%;font-weight:var(--weight-medium)}.specs-table td:last-child{color:var(--color-text-primary);font-weight:var(--weight-semibold)}.direction-badge{display:inline-flex;align-items:center;gap:4px;font-weight:var(--weight-bold);font-size:var(--text-xs);padding:2px 8px;border-radius:var(--radius-sm)}.direction-in{background-color:#10b98126;color:#10b981}.direction-out{background-color:#ef444426;color:#ef4444}.model-pill{display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-bg-subtle);color:var(--color-text-primary);border:1px solid var(--color-border-subtle);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium);margin:2px}.price-calculation-preview{background-color:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.5}.reconciled-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.reconciled-success{background-color:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.reconciled-error{background-color:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}body{font-family:var(--font-sans);font-size:var(--text-sm);line-height:1.5;color:var(--color-text-primary);background-color:var(--color-bg-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-primary);line-height:1.25;letter-spacing:-.01em}a{color:var(--color-amber-600);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-amber-700);text-decoration:underline}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-navy-500)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:var(--weight-medium);font-size:var(--text-sm);line-height:1.25;padding:.5rem 1rem;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;text-decoration:none!important;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:focus-visible{outline:2px solid var(--color-amber-500);outline-offset:2px}.btn:disabled,.btn[aria-disabled=true]{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{margin-right:.15rem;background-color:var(--color-amber-500);color:var(--color-navy-950);border-color:var(--color-amber-600);font-weight:var(--weight-semibold)}.btn-primary:hover:not(:disabled){background-color:var(--color-amber-600);color:#fff;border-color:var(--color-amber-700)}.btn-secondary{margin-right:.15rem;background-color:var(--color-navy-800);color:var(--color-text-inverse);border-color:var(--color-navy-700)}.btn-secondary:hover:not(:disabled){background-color:var(--color-navy-900);color:var(--color-text-inverse);border-color:var(--color-navy-800)}.btn-outline{margin-right:.15rem;background-color:var(--color-bg-surface);color:var(--color-text-primary);border-color:var(--color-border-strong)}.btn-outline:hover:not(:disabled){background-color:var(--color-bg-subtle);border-color:var(--color-navy-600)}.btn-danger{background-color:var(--color-danger-accent);color:#fff;border-color:var(--color-danger-accent)}.btn-danger:hover:not(:disabled){background-color:#dc2626;border-color:#b91c1c}.btn-text{text-decoration:none!important;color:var(--color-text-secondary);border-color:transparent;padding:.375rem .625rem}.btn-text:hover:not(:disabled){background-color:var(--color-bg-subtle);color:var(--color-text-primary)}.btn-sm{padding:.25rem .625rem;font-size:var(--text-xs);gap:var(--space-1)}.btn-lg{padding:.75rem 1.25rem;font-size:var(--text-base)}.btn-icon{padding:.5rem;border-radius:var(--radius-md);aspect-ratio:1}.card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);display:flex;flex-direction:column;overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.card:hover{border-color:var(--color-border-strong)}.card-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background-color:var(--color-bg-surface)}.card-title{font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--color-navy-900);letter-spacing:-.01em;margin:0}.card-subtitle{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-0-5)}.card-content{padding:var(--space-5);flex:1}.card-footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background-color:var(--color-bg-subtle);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.form-group{display:flex;flex-direction:column;gap:var(--space-1-5);margin-bottom:var(--space-4);width:100%}.form-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:var(--space-1)}.form-label .required-star{color:var(--color-danger-accent)}.form-input,.form-select,.form-textarea{width:100%;padding:.5625rem .75rem;font-size:var(--text-sm);color:var(--color-text-primary);background-color:var(--color-bg-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-amber-500);box-shadow:0 0 0 3px #f59e0b26}.form-input.has-error,.form-select.has-error,.form-textarea.has-error{border-color:var(--color-danger-accent)}.form-input.has-error:focus{box-shadow:0 0 0 3px #ef444426}.form-error{font-size:var(--text-xs);color:var(--color-danger-text);display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-0-5)}.form-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon-left{position:absolute;left:.75rem;color:var(--color-text-muted);pointer-events:none;display:flex;align-items:center}.input-with-icon .form-input{padding-left:2.25rem}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.2rem .5rem;font-size:var(--text-2xs);font-weight:var(--weight-semibold);line-height:1;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);border:1px solid transparent}.badge-success{background-color:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.badge-warning{background-color:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.badge-danger{background-color:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.badge-info{background-color:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.badge-neutral{background-color:var(--color-bg-subtle);color:var(--color-text-secondary);border-color:var(--color-border)}.badge-brand{background-color:var(--color-navy-800);color:var(--color-amber-400);border-color:var(--color-amber-600)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);margin-bottom:var(--space-4)}.alert-icon{flex-shrink:0;margin-top:1px}.alert-content{flex:1}.alert-title{font-weight:var(--weight-semibold);margin-bottom:var(--space-0-5)}.alert-danger{background-color:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.alert-warning{background-color:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-text)}.alert-success{background-color:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.alert-info{background-color:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info-text)}.table-container{width:100%;overflow-x:auto;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.table{width:100%;border-collapse:collapse;text-align:left;font-size:var(--text-sm)}.table th{background-color:var(--color-bg-subtle);color:var(--color-text-secondary);font-weight:var(--weight-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);white-space:nowrap}.table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-primary);vertical-align:middle}.table tbody tr:hover{background-color:#f8fafc}.table tbody tr:last-child td{border-bottom:none}.table-pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background-color:var(--color-bg-surface);font-size:var(--text-xs);color:var(--color-text-muted)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:modalFadeIn var(--transition-fast) ease-out}.modal-container{background-color:var(--color-bg-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);width:100%;max-width:540px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideUp var(--transition-fast) ease-out}.modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;background-color:var(--color-bg-surface)}.modal-title{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-navy-950)}.modal-body{padding:var(--space-5);overflow-y:auto;flex:1}.modal-footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background-color:var(--color-bg-subtle);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.date-range-control{display:inline-flex;align-items:center;background-color:var(--color-bg-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);gap:var(--space-2);font-size:var(--text-xs)}.date-range-control input[type=date]{border:none;background:transparent;font-size:inherit;color:var(--color-text-primary);font-family:var(--font-sans);outline:none;cursor:pointer}.date-range-separator{color:var(--color-text-muted)}.spinner{display:inline-block;width:1.25rem;height:1.25rem;border:2px solid rgba(245,158,11,.25);border-radius:50%;border-top-color:var(--color-amber-500);animation:spin .8s linear infinite}.spinner-sm{width:.875rem;height:.875rem;border-width:1.5px}.spinner-lg{width:2.25rem;height:2.25rem;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{padding:var(--space-10) var(--space-4);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-state-icon{color:var(--color-text-subtle);margin-bottom:var(--space-3);display:flex;align-items:center;justify-content:center}.empty-state-title{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.empty-state-description{font-size:var(--text-sm);color:var(--color-text-muted);max-width:380px;margin-bottom:var(--space-4)}.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.toast{pointer-events:auto;min-width:300px;max-width:420px;padding:var(--space-3) var(--space-4);background-color:var(--color-navy-950);color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);border-left:4px solid var(--color-amber-500);animation:toastIn var(--transition-fast) ease-out}.toast-success{border-left-color:var(--color-success-accent)}.toast-error{border-left-color:var(--color-danger-accent)}.toast-info{border-left-color:var(--color-info-accent)}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}:root{--color-navy-950: #0a0f1d;--color-navy-900: #0f172a;--color-navy-850: #172033;--color-navy-800: #1e293b;--color-navy-700: #334155;--color-navy-600: #475569;--color-navy-500: #64748b;--color-amber-50: #fffbeb;--color-amber-100: #fef3c7;--color-amber-200: #fde68a;--color-amber-300: #fcd34d;--color-amber-400: #fbbf24;--color-amber-500: #f59e0b;--color-amber-600: #d97706;--color-amber-700: #b45309;--color-amber-800: #92400e;--color-amber-900: #78350f;--color-bg-canvas: #f8fafc;--color-bg-subtle: #f1f5f9;--color-bg-surface: #ffffff;--color-bg-surface-elevated: #ffffff;--color-border: #e2e8f0;--color-border-subtle: #edf2f7;--color-border-strong: #cbd5e1;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #64748b;--color-text-subtle: #94a3b8;--color-text-inverse: #ffffff;--color-text-inverse-muted: #cbd5e1;--color-success-bg: #ecfdf5;--color-success-border: #a7f3d0;--color-success-text: #065f46;--color-success-accent: #10b981;--color-danger-bg: #fef2f2;--color-danger-border: #fecaca;--color-danger-text: #991b1b;--color-danger-accent: #ef4444;--color-warning-bg: #fffbeb;--color-warning-border: #fde68a;--color-warning-text: #92400e;--color-warning-accent: #f59e0b;--color-info-bg: #f0f9ff;--color-info-border: #bae6fd;--color-info-text: #075985;--color-info-accent: #0284c7;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading: "Chakra Petch", "Inter", sans-serif;--font-mono: "JetBrains Mono", Consolas, "Courier New", monospace;--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-sm: 0 1px 3px 0 rgba(15, 23, 42, .08), 0 1px 2px -1px rgba(15, 23, 42, .08);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -2px rgba(15, 23, 42, .08);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .08);--shadow-card: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-modal: 0 20px 25px -5px rgba(15, 23, 42, .2), 0 8px 10px -6px rgba(15, 23, 42, .1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--sidebar-width: 270px;--sidebar-collapsed-width: 85px;--header-height: 64px;--z-header: 40;--z-sidebar: 50;--z-modal: 100;--z-toast: 110}.erp-shell{display:flex;min-height:100vh;background-color:var(--color-bg-canvas);position:relative}.erp-sidebar{width:var(--sidebar-width);background-color:var(--color-navy-950);color:var(--color-text-inverse);display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;z-index:var(--z-sidebar);transition:width var(--transition-normal),transform var(--transition-normal);border-right:1px solid var(--color-navy-800)}.erp-sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-header{height:var(--header-height);padding:0 var(--space-4);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-navy-800);background-color:var(--color-navy-900)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none!important;color:#fff;overflow:hidden;white-space:nowrap}.sidebar-brand-logo{width:32px;height:32px;flex-shrink:0}.sidebar-brand-text{display:flex;flex-direction:column}.sidebar-brand-title{font-family:var(--font-heading);font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:.05em;color:#fff}.sidebar-brand-tagline{font-size:var(--text-2xs);color:var(--color-amber-400);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--weight-medium)}.sidebar-collapse-toggle{background:transparent;border:none;color:var(--color-navy-500);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast),background-color var(--transition-fast)}.sidebar-collapse-toggle:hover{color:#fff;background-color:var(--color-navy-800)}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--space-4) 0;display:flex;flex-direction:column;gap:var(--space-4)}.nav-group{display:flex;flex-direction:column;gap:var(--space-0-5);padding:0 var(--space-3)}.nav-group-title{font-size:var(--text-2xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-navy-500);padding:var(--space-2) var(--space-3) var(--space-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erp-sidebar.collapsed .nav-group-title{text-align:center;padding:var(--space-2) 0;opacity:.5}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:.5rem .75rem;color:var(--color-text-inverse-muted);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);text-decoration:none!important;transition:all var(--transition-fast);white-space:nowrap;position:relative}.nav-item:hover{background-color:var(--color-navy-850);color:#fff}.nav-item.active{background-color:var(--color-navy-800);color:var(--color-amber-400);font-weight:var(--weight-semibold);box-shadow:inset 3px 0 0 var(--color-amber-500)}.nav-item-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:inherit}.nav-item-label{flex:1;overflow:hidden;text-overflow:ellipsis}.erp-sidebar.collapsed .nav-item-label,.erp-sidebar.collapsed .nav-item-badge{display:none}.erp-sidebar.collapsed .nav-item{justify-content:center;padding:.625rem}.sidebar-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-navy-850);background-color:var(--color-navy-900);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.sidebar-hub-badge{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-amber-400);background-color:#f59e0b1a;padding:.2rem .4rem;border-radius:var(--radius-sm);border:1px solid rgba(245,158,11,.2)}.erp-content-wrapper{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;min-height:100vh;transition:margin-left var(--transition-normal)}.erp-shell.sidebar-collapsed .erp-content-wrapper{margin-left:var(--sidebar-collapsed-width)}.erp-header{height:var(--header-height);background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);position:sticky;top:0;z-index:var(--z-header);box-shadow:var(--shadow-xs)}.header-left{display:flex;align-items:center;gap:var(--space-4)}.mobile-menu-btn{display:none;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-1-5);cursor:pointer;color:var(--color-navy-700)}.header-breadcrumbs{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.header-breadcrumbs a{color:var(--color-text-secondary);text-decoration:none}.header-breadcrumbs a:hover{color:var(--color-amber-600)}.header-breadcrumbs .separator{color:var(--color-border-strong)}.header-breadcrumbs .current{font-weight:var(--weight-semibold);color:var(--color-text-primary)}.header-right{display:flex;align-items:center;gap:var(--space-4)}.header-status-pill{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:.25rem .625rem;background-color:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.status-dot-pulse{width:6px;height:6px;background-color:var(--color-success-accent);border-radius:50%;box-shadow:0 0 0 2px #10b98133}.user-menu-trigger{display:flex;align-items:center;gap:var(--space-2-5);background:transparent;border:1px solid var(--color-border);padding:.25rem .5rem .25rem .25rem;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast)}.user-menu-trigger:hover{background-color:var(--color-bg-subtle);border-color:var(--color-border-strong)}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-navy-900),var(--color-amber-600));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:var(--weight-bold);font-size:var(--text-xs)}.user-meta{display:flex;flex-direction:column;text-align:left}.user-name{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-primary);line-height:1.2}.user-role-label{font-size:var(--text-2xs);color:var(--color-amber-600);font-weight:var(--weight-medium)}.dropdown-menu{position:absolute;top:calc(100% + var(--space-2));right:var(--space-6);width:220px;background-color:var(--color-bg-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-modal);padding:var(--space-1) 0;display:flex;flex-direction:column}.dropdown-item{display:flex;align-items:center;gap:var(--space-2-5);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-text-primary);text-decoration:none!important;background:transparent;border:none;cursor:pointer;text-align:left;width:100%;transition:background-color var(--transition-fast)}.dropdown-item:hover{background-color:var(--color-bg-subtle)}.dropdown-divider{height:1px;background-color:var(--color-border);margin:var(--space-1) 0}.erp-main{flex:1;padding:var(--space-6);max-width:1600px;width:100%;margin:0 auto}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.page-header-left{display:flex;flex-direction:column;gap:var(--space-1)}.page-title{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-navy-950)}.page-description{font-size:var(--text-sm);color:var(--color-text-secondary)}.page-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.sidebar-backdrop{display:none}@media(max-width:1024px){.erp-sidebar{transform:translate(-100%);width:var(--sidebar-width)!important}.erp-sidebar.mobile-open{transform:translate(0);box-shadow:var(--shadow-modal)}.erp-content-wrapper{margin-left:0!important}.mobile-menu-btn{display:flex}.sidebar-backdrop.mobile-open{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:calc(var(--z-sidebar) - 1)}}@media(max-width:640px){.erp-header{padding:0 var(--space-3)}.erp-main{padding:var(--space-4) var(--space-3)}.user-meta,.header-status-pill{display:none}.page-header{flex-direction:column;align-items:stretch}.page-actions{justify-content:flex-start}}
