*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-color:#2563eb;--secondary-color:#1e40af;--accent-color:#f59e0b;--text-color:#1f2937;--light-text:#6b7280;--background:#fff;--light-background:#f9fafb;--border-color:#e5e7eb;--shadow:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a}.container{margin:0 auto;max-width:1200px;padding:0 1rem}.btn{border:none;border-radius:.5rem;cursor:pointer;display:inline-block;font-weight:600;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.btn-primary{background-color:#2563eb;background-color:var(--primary-color)}.btn-primary:hover{background-color:#1e40af;background-color:var(--secondary-color);transform:translateY(-2px)}.btn-secondary{background-color:initial;border:2px solid #2563eb;border:2px solid var(--primary-color);color:#2563eb;color:var(--primary-color)}.btn-secondary:hover{background-color:#2563eb;background-color:var(--primary-color);color:#fff}.text-center{text-align:center}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;padding-top:80px}@media (max-width:768px){.main-content{padding-top:70px}}.sidebar{background:linear-gradient(180deg,#030,#050);box-shadow:2px 0 10px #0000001a;color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:250px;z-index:1000}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:24px 20px}.sidebar-header h2{color:#fff;font-size:20px;font-weight:700;margin:0 0 4px}.sidebar-subtitle{color:#ffffffb3;font-size:12px;margin:0}.sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 0}.sidebar-item{align-items:center;border-left:3px solid #0000;color:#fffc;display:flex;padding:12px 20px;text-decoration:none;transition:all .3s}.sidebar-item:hover{background-color:#ffffff1a;color:#fff}.sidebar-item.active{background-color:#ffffff26;border-left-color:#c93;color:#fff}.sidebar-icon{font-size:20px;margin-right:12px;text-align:center;width:24px}.sidebar-label{font-size:14px;font-weight:500}.sidebar-footer{border-top:1px solid #ffffff1a;padding:20px}.user-info{gap:12px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:#c93;border-radius:50%;color:#fff;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.user-details{flex:1 1;min-width:0}.user-name{color:#fff;font-size:14px;font-weight:600;margin:0 0 4px}.user-name,.user-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{color:#ffffffb3;font-size:12px;margin:0}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform .3s}.sidebar.open{transform:translateX(0)}}.admin-header{background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;height:70px;padding:0 24px}.admin-header,.header-content{align-items:center;display:flex}.header-content{justify-content:space-between;width:100%}.header-left{flex:1 1}.page-title{color:#030;font-size:24px;font-weight:600;margin:0}.header-right{align-items:center;display:flex;gap:20px}.company-selector-wrapper{position:relative}.company-selector{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;padding:8px 16px}.company-selector-dropdown{align-items:center;cursor:pointer;display:flex;gap:8px;min-width:160px}.company-selector-dropdown:hover{background:#eee}.company-selector-arrow{color:#666;font-size:10px}.company-dropdown-menu{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:280px;min-width:220px;overflow-y:auto;position:absolute;top:100%;z-index:100}.company-dropdown-item{border-bottom:1px solid #f0f0f0;color:#333;cursor:pointer;font-size:14px;padding:10px 16px}.company-dropdown-item:last-child{border-bottom:none}.company-dropdown-item:hover{background:#f5f5f5}.company-dropdown-item.active{background:#e8f5e9;font-weight:500}.company-nit{color:#666;font-size:12px}.company-name{color:#333;font-size:14px;font-weight:500}.user-menu{position:relative}.user-menu-trigger{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:8px 12px;transition:background-color .2s}.user-menu-trigger:hover{background-color:#f5f5f5}.user-avatar-small{align-items:center;background:linear-gradient(135deg,#030,#c93);border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:32px;justify-content:center;width:32px}.user-name-header{color:#333;font-size:14px;font-weight:500}.user-menu-dropdown{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:none;margin-top:0;min-width:180px;overflow:visible;position:absolute;right:0;top:100%}.user-menu-dropdown:before{bottom:100%;content:"";height:8px;left:0;position:absolute;right:0}.user-menu:hover .user-menu-dropdown{display:block}.user-menu-item{align-items:center;color:#333;cursor:pointer;display:flex;font-size:14px;gap:12px;padding:12px 16px;transition:background-color .2s}.user-menu-item:hover{background-color:#f5f5f5}.user-menu-item span:first-child{font-size:16px}@media (max-width:768px){.page-title{font-size:18px}.company-selector,.user-name-header{display:none}}.admin-layout{background-color:#f5f5f5;display:flex;min-height:100vh}.admin-main{display:flex;flex:1 1;flex-direction:column;margin-left:250px;transition:margin-left .3s}.admin-content{flex:1 1;overflow-y:auto;padding:24px}.admin-loading,.admin-no-company{align-items:center;display:flex;justify-content:center;min-height:200px;padding:24px;text-align:center}.admin-no-company p{color:#666;font-size:16px;max-width:400px}@media (max-width:768px){.admin-main{margin-left:0}}.login-container{align-items:center;background:linear-gradient(135deg,#efede4,#030);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:30px;text-align:center}.login-header h1{color:#030;font-size:28px;font-weight:700;margin-bottom:8px}.login-header p{color:#666;font-size:14px}.login-form{display:flex;flex-direction:column;gap:20px}.form-group input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:12px;transition:border-color .3s}.form-group input:focus{border-color:#030;outline:none}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#fee;border-radius:6px;color:#c33;font-size:14px;padding:12px;text-align:center}.login-button{background:linear-gradient(135deg,#030,#c93);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:14px;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){box-shadow:0 4px 12px #0033004d;transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.6}.dashboard{padding:0}.dashboard-header{margin-bottom:32px}.dashboard-header h2{color:#030;font-size:28px;font-weight:700;margin:0 0 8px}.dashboard-header p{color:#666;font-size:16px;margin:0}.dashboard-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.dashboard-card{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:16px;padding:24px;transition:transform .2s,box-shadow .2s}.dashboard-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-4px)}.dashboard-card-link{color:inherit;text-decoration:none}.dashboard-error,.dashboard-loading{color:#666;padding:24px;text-align:center}.dashboard-error{color:#c62828}.card-icon{font-size:40px;line-height:1}.card-content{flex:1 1}.card-content h3{color:#666;font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.card-value{color:#030;font-size:28px;font-weight:700;margin:0 0 4px}.card-detail{font-size:12px;line-height:1.35;margin-top:4px}.card-change{color:#666;font-size:12px;margin:0}.dashboard-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.dashboard-section h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.steps-list{display:flex;flex-direction:column;gap:16px}.step-item{align-items:flex-start;background:#f9f9f9;border-left:4px solid #c93;border-radius:8px;display:flex;gap:16px;padding:16px}.step-number{align-items:center;background:linear-gradient(135deg,#030,#c93);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.step-content h4{color:#030;font-size:16px;font-weight:600;margin:0 0 4px}.step-content p{color:#666;font-size:14px;margin:0}@media (max-width:768px){.dashboard-grid{grid-template-columns:1fr}}.companies-page{padding:0}.companies-page .page-header{margin-bottom:24px}.companies-page .page-header h2{color:#030;font-size:24px;font-weight:700;margin:0 0 4px}.companies-page .page-subtitle{color:#666;font-size:14px;margin:0}.companies-page .filters-section{margin-bottom:24px}.companies-page .search-input{border:1px solid #ddd;border-radius:8px;font-size:14px;min-width:280px;padding:12px 16px}.companies-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.companies-table{border-collapse:collapse;width:100%}.companies-table td,.companies-table th{border-bottom:1px solid #eee;padding:12px 16px;text-align:left}.companies-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.companies-table .empty-state{color:#666;padding:48px 16px;text-align:center}.source-badge,.status-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px}.source-javiland{background:#e3f2fd;color:#1976d2}.source-strutech{background:#f3e5f5;color:#7b1fa2}.source-manual{background:#f5f5f5;color:#616161}.btn-link{font-weight:600;text-decoration:none}.btn-link:hover{text-decoration:underline}.companies-error,.companies-loading{color:#666;padding:24px;text-align:center}.chart-of-accounts{padding:0}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-header h2{color:#030;font-size:28px;font-weight:700;margin:0}.btn-primary{background:linear-gradient(135deg,#030,#c93);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:transform .2s}.btn-primary:hover:not(:disabled){transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.account-form-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.account-form-card h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#333;font-size:14px;font-weight:500}.form-group input,.form-group select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px}.form-group input:focus,.form-group select:focus{border-color:#030;outline:none}.form-actions{margin-top:20px}.accounts-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:2fr 1fr}.accounts-tree{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.accounts-tree h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.account-tree{list-style:none;margin:0;padding:0}.account-item{margin-bottom:4px}.account-row{grid-gap:16px;align-items:center;background:#f9f9f9;border-radius:6px;cursor:pointer;display:grid;gap:16px;grid-template-columns:100px 1fr 120px 100px;padding:12px;transition:background-color .2s}.account-row:hover{background:#f0f0f0}.account-code{color:#030;font-family:monospace;font-weight:600}.account-name{color:#333}.account-nature,.account-type{color:#666;font-size:12px}.account-nature{text-transform:capitalize}.account-tree.level-1>.account-item>.account-row{background:#e8f5e9;font-weight:600}.account-tree.level-2>.account-item>.account-row{background:#f1f8e9}.account-details{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;height:-webkit-fit-content;height:fit-content;padding:24px;position:-webkit-sticky;position:sticky;top:24px}.account-details h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.detail-item span{color:#333;font-size:14px}.empty-state p{margin:8px 0}@media (max-width:1024px){.accounts-container{grid-template-columns:1fr}.account-details{position:static}}.accounting-entries{padding:0}.entry-form-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.entry-form-card h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.lines-section{margin:24px 0}.lines-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.lines-header h4{color:#333;font-size:16px;font-weight:600;margin:0}.btn-secondary{background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#333;transition:background-color .2s}.btn-secondary:hover{background:#e0e0e0}.lines-table{border-collapse:collapse;margin-bottom:16px;width:100%}.lines-table td,.lines-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.lines-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.lines-table input,.lines-table select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px;width:100%}.lines-table input:focus,.lines-table select:focus{border-color:#030;outline:none}.totals-row{background:#f9f9f9;font-weight:600}.balance-ok{color:#4caf50;font-weight:600}.balance-error{color:#f44336;font-weight:600}.btn-danger{background:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:18px;line-height:1;padding:6px 12px}.btn-danger:hover{background:#d32f2f}.entries-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.entries-list h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.entries-table{border-collapse:collapse;width:100%}.entries-table td,.entries-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.entries-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.status-borrador{background:#fff3cd;color:#856404}.status-aprobado{background:#d4edda;color:#155724}.status-anulado{background:#f8d7da;color:#721c24}.btn-link{background:none;border:none;color:#030;cursor:pointer;font-size:14px;margin-right:12px;text-decoration:underline}.btn-link:hover{color:#c93}.btn-link:disabled{cursor:not-allowed;opacity:.5}.empty-state{padding:40px}@media (max-width:768px){.lines-table{font-size:12px}.lines-table td,.lines-table th{padding:8px}}.third-parties{padding:0}.filters-section{display:flex;gap:16px;margin-bottom:24px}.search-input{flex:1 1}.filter-select,.search-input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:12px}.filter-select{min-width:200px}.form-card{margin-bottom:24px}.form-card,.third-parties-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.third-parties-list h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.third-parties-table{border-collapse:collapse;width:100%}.third-parties-table td,.third-parties-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.third-parties-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.type-cliente{background:#e3f2fd;color:#1976d2}.type-proveedor{background:#f3e5f5;color:#7b1fa2}.type-empleado{background:#e8f5e9;color:#388e3c}.type-otro{background:#fff3e0;color:#f57c00}.nit-valid{color:#4caf50;font-size:12px;font-weight:600}.nit-invalid{color:#f44336;font-size:12px}.nit-valid-badge{background:#4caf50;border-radius:4px;color:#fff;font-size:10px;font-weight:600;margin-left:8px;padding:2px 8px}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;padding:24px;width:90%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h3{color:#030;font-size:20px;font-weight:600;margin:0}.modal-header button{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;width:32px}.modal-header button:hover{color:#333}.modal-body{display:flex;flex-direction:column;gap:16px}.detail-item{border-bottom:1px solid #eee;padding:12px 0}.detail-item:last-child{border-bottom:none}.detail-item strong{color:#666;display:block;font-size:12px;margin-bottom:4px;text-transform:uppercase}.detail-item span:not(.nit-valid-badge){color:#333;font-size:14px}.invoices{padding:0}.invoices-error-state{max-width:640px;padding:24px}.invoices-error-text{color:#8b0000;font-weight:600;margin:12px 0}.invoices-error-meta{color:#666;font-size:14px}.invoices-error-hint{color:#444;font-size:14px;line-height:1.5;margin-top:16px}.invoice-form-card{margin-bottom:24px}.invoice-form-card,.invoices-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.invoices-list h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.invoices-table{border-collapse:collapse;width:100%}.invoices-table td,.invoices-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.invoices-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.type-badge{font-size:12px;text-transform:capitalize}.type-venta{background:#e3f2fd;color:#1976d2}.type-compra{background:#f3e5f5;color:#7b1fa2}.invoice-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.invoice-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;max-height:90vh;max-width:720px;overflow:auto;width:100%}.invoice-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.invoice-modal-header h3{color:#030;font-size:1.1rem;margin:0}.invoice-modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;line-height:1;padding:4px 8px}.invoice-modal-close:hover{color:#000}.invoice-modal-body{padding:20px}.invoice-modal-loading{color:#666}.invoice-detail-grid p{font-size:14px;margin:6px 0}.invoice-gateway-section{background:#f8faf8;border:1px solid #e5eee5;border-radius:8px;margin-top:16px;padding:12px 14px}.invoice-gateway-section h4{color:#030;font-size:.95rem;margin:0 0 10px}.invoice-gateway-lines{font-size:14px;list-style:none;margin:0;padding:0}.invoice-gateway-lines li{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin:6px 0}.invoice-gateway-net{border-top:1px solid #ddd;margin-top:8px;padding-top:8px}.invoice-lines-wrap{margin-top:20px}.invoice-lines-wrap h4{color:#030;margin:0 0 10px}.invoice-detail-lines{font-size:14px}.status-enviada{background:#d1ecf1;color:#0c5460}.status-aceptada{background:#d4edda;color:#155724}.status-rechazada{background:#f8d7da;color:#721c24}.status-voided{background:#f8d7da;color:#7f1d1d;font-weight:700;margin-right:6px}.invoice-status-badges{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.btn-void{color:#b91c1c!important;font-weight:600}.btn-void:hover{text-decoration:underline}.invoice-void-banner{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:12px 14px}.invoice-void-reason{color:#450a0a;font-size:14px;margin:8px 0 0}.invoice-void-meta{color:#666;font-size:12px;margin:4px 0 0}.void-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1100}.void-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:480px;padding:20px 22px;width:100%}.void-modal h3{color:#7f1d1d;font-size:1.1rem;margin:0 0 8px}.void-modal-intro{color:#444;font-size:14px;line-height:1.4;margin:0 0 12px}.void-modal-label{color:#333;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.void-modal-textarea{border:1px solid #ccc;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;margin-bottom:16px;padding:10px 12px;resize:vertical;width:100%}.void-modal-actions{display:flex;gap:12px;justify-content:flex-end}.btn-secondary{background:#fff;border:1px solid #ccc;border-radius:8px;cursor:pointer;font-size:14px;padding:8px 16px}.btn-secondary:hover{background:#f5f5f5}.btn-danger-void{background:#b91c1c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.btn-danger-void:hover:not(:disabled){background:#991b1b}.btn-danger-void:disabled{cursor:not-allowed;opacity:.6}.retentions{padding:0}.retentions-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.retentions-list h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.retentions-table{border-collapse:collapse;width:100%}.retentions-table td,.retentions-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.retentions-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.type-badge{border-radius:12px;font-size:11px;font-weight:600;padding:4px 12px}.type-renta{background:#e3f2fd;color:#1976d2}.type-ica{background:#e8f5e9;color:#388e3c}.type-cree{background:#fff3e0;color:#f57c00}.status-badge{padding:4px 12px;text-transform:capitalize}.status-pendiente{background:#fff3cd;color:#856404}.status-generado{background:#d1ecf1;color:#0c5460}.status-enviado{background:#d4edda;color:#155724}.reports{padding:0}.reports-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:250px 1fr}.reports-sidebar{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;height:-webkit-fit-content;height:fit-content;padding:24px;position:-webkit-sticky;position:sticky;top:24px}.reports-sidebar h3{color:#030;font-size:18px;font-weight:600;margin:0 0 16px}.report-button{background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:8px;padding:12px;text-align:left;transition:all .2s;width:100%}.report-button:hover{background:#e0e0e0}.report-button.active{background:linear-gradient(135deg,#030,#c93);border-color:#030;color:#fff}.reports-main{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.report-params{border-bottom:1px solid #eee;margin-bottom:24px;padding-bottom:16px}.param-group{display:flex;flex-direction:column;gap:8px}.param-group label{color:#666;font-size:14px;font-weight:500}.param-group input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px}.report-content{padding:0}.report-header{border-bottom:2px solid #030;margin-bottom:24px;padding-bottom:16px}.report-header h3{color:#030;font-size:24px;font-weight:700;margin:0 0 8px}.report-header p{color:#666;font-size:14px;margin:0}.balance-sheet{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr 1fr}.balance-section{border:1px solid #eee;border-radius:8px;padding:16px}.balance-section h4{border-bottom:1px solid #eee;color:#030;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.report-table{border-collapse:collapse;width:100%}.report-table td{border-bottom:1px solid #f0f0f0;font-size:14px;padding:8px}.report-table td:first-child{color:#666;font-family:monospace;width:100px}.report-table td:nth-child(2){flex:1 1}.amount{font-weight:500;text-align:right}.total-row{background:#f9f9f9;font-weight:600}.total-row td{border-top:2px solid #030;padding-top:12px}.balance-summary{background:#f9f9f9;border-radius:8px;grid-column:1/-1;margin-top:24px;padding:16px;text-align:center}.balance-summary p{font-size:16px;margin:8px 0}.balanced{color:#4caf50;font-weight:600}.unbalanced{color:#f44336;font-weight:600}.income-statement{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.expense-section,.income-section{border:1px solid #eee;border-radius:8px;padding:16px}.income-section h4{color:#4caf50}.expense-section h4{color:#f44336}.net-income{background:#f9f9f9;border-radius:8px;grid-column:1/-1;margin-top:24px;padding:20px;text-align:center}.net-income p{font-size:20px;margin:0}.positive{color:#4caf50}.negative{color:#f44336}.trial-balance-table{width:100%}.trial-balance-table th{background:#f9f9f9;border-bottom:2px solid #030;font-size:12px;font-weight:600;padding:12px;text-align:left;text-transform:uppercase}.trial-balance-table td{padding:10px 12px}.empty-state{color:#666;padding:60px;text-align:center}.empty-state p{font-size:16px}@media (max-width:1024px){.reports-container{grid-template-columns:1fr}.reports-sidebar{position:static}.balance-sheet,.income-statement{grid-template-columns:1fr}}.payroll{padding:0}.payroll-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.payroll-list h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.payroll-table{border-collapse:collapse;width:100%}.payroll-table td,.payroll-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.payroll-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.payroll-detail{max-height:90vh;max-width:700px;overflow-y:auto}.deductions-section,.parafiscals-section,.payroll-summary,.provisions-section{background:#f9f9f9;border-radius:8px;margin-bottom:24px;padding:16px}.deductions-section h4,.parafiscals-section h4,.payroll-summary h4,.provisions-section h4{color:#030;font-size:16px;font-weight:600;margin:0 0 12px}.summary-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.summary-item{padding:8px 0}.summary-item strong{color:#666;display:block;font-size:12px;margin-bottom:4px;text-transform:uppercase}.detail-table{border-collapse:collapse;width:100%}.detail-table td{border-bottom:1px solid #eee;padding:8px}.detail-table td:first-child{width:60%}.detail-table td:last-child{font-weight:500;text-align:right}.detail-table .total-row{background:#f0f0f0;font-weight:600}.detail-table .total-row td{border-top:2px solid #030;padding-top:12px}.bank-reconciliation{padding:0}.bank-accounts-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.bank-accounts-section h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.bank-accounts-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.bank-account-card{align-items:flex-start;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;display:flex;gap:16px;padding:20px;transition:all .2s}.bank-account-card:hover{border-color:#030;box-shadow:0 4px 12px #0033001a}.bank-account-card.selected{background:#f0f7f0;border-color:#030}.bank-icon{font-size:32px;line-height:1}.account-info{flex:1 1}.account-info h4{color:#030;font-size:18px;font-weight:600;margin:0 0 8px}.account-info p{color:#666;font-size:14px;margin:4px 0}.account-type{font-weight:500;text-transform:capitalize}.status-connected{color:#4caf50;font-size:12px;font-weight:600}.status-disconnected{color:#f44336;font-size:12px;font-weight:600}.last-sync{color:#999;font-size:12px;margin-top:8px}.btn-sync{background:#030;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:background-color .2s}.btn-sync:hover:not(:disabled){background:#050}.btn-sync:disabled{cursor:not-allowed;opacity:.6}.transactions-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.transactions-section h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.transactions-table{border-collapse:collapse;width:100%}.transactions-table td,.transactions-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.transactions-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.transactions-table tr.reconciled{background:#f0f7f0}.txn-type{border-radius:4px;font-size:11px;font-weight:600;padding:4px 8px;text-transform:uppercase}.txn-debito{background:#ffebee;color:#c62828}.txn-credito{background:#e8f5e9;color:#2e7d32}.status-reconciled{color:#4caf50;font-size:12px;font-weight:600}.status-pending{color:#ff9800;font-size:12px;font-weight:600}.tax-reports{padding:0}.report-generator{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.report-generator h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.report-params{align-items:flex-end;display:flex;gap:16px}.reports-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.reports-list h3{color:#030;font-size:20px;font-weight:600;margin:0 0 20px}.reports-table{border-collapse:collapse;width:100%}.reports-table td,.reports-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.reports-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.report-type{border-radius:12px;font-size:11px;font-weight:600;padding:4px 12px}.type-retenciones{background:#e3f2fd;color:#1976d2}.type-iva{background:#f3e5f5;color:#7b1fa2}.type-formulario_350{background:#fff3e0;color:#f57c00}.users-page{padding:0}.users-page .page-header{margin-bottom:24px}.users-page .page-header h2{color:#030;font-size:24px;font-weight:700;margin:0 0 4px}.users-page .page-subtitle{color:#666;font-size:14px;margin:0}.users-page .filters-section{display:flex;gap:16px;margin-bottom:24px}.users-page .search-input{flex:1 1}.users-page .filter-select,.users-page .search-input{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:12px 16px}.users-page .filter-select{min-width:180px}.users-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.users-table{border-collapse:collapse;width:100%}.users-table td,.users-table th{border-bottom:1px solid #eee;padding:12px 16px;text-align:left}.users-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.users-table .empty-state{color:#666;padding:48px 16px;text-align:center}.role-badge{background:#e8eaf6;color:#3949ab}.role-badge,.status-badge.active{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#ffebee;border-radius:12px;color:#c62828;font-size:12px;font-weight:600;padding:4px 10px}.pagination-info{color:#666;font-size:14px;margin-top:16px}.users-error,.users-loading{color:#666;padding:24px;text-align:center}.users-error .error-detail{color:#c62828;font-size:12px;margin-top:8px}.monthly-analysis-page{padding:0}.monthly-analysis-page .page-header{margin-bottom:24px}.monthly-analysis-page .page-header h2{color:#030;font-size:24px;font-weight:700;margin:0 0 4px}.monthly-analysis-page .page-subtitle{color:#666;font-size:14px;margin:0}.monthly-analysis-page .filters-section{margin-bottom:24px}.monthly-analysis-page .filter-select{border:1px solid #ddd;border-radius:6px;font-size:14px;margin-left:8px;padding:8px 12px}.analyses-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.analyses-list .empty-state{color:#666;padding:48px 24px;text-align:center}.analyses-list .empty-state .hint{color:#999;font-size:13px;margin-top:8px}.analyses-table{border-collapse:collapse;width:100%}.analyses-table td,.analyses-table th{border-bottom:1px solid #eee;padding:12px 16px;text-align:left}.analyses-table th{background:#f9f9f9;color:#333;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px}.status-pending_approval{background:#fff3e0;color:#e65100}.status-approved{background:#e8f5e9;color:#2e7d32}.status-rejected{background:#ffebee;color:#c62828}.action-buttons{display:flex;gap:8px}.btn-approve{background:#2e7d32;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px}.btn-approve:hover:not(:disabled){background:#1b5e20}.btn-approve:disabled{cursor:not-allowed;opacity:.6}.btn-reject{background:#c62828;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px}.btn-reject:hover:not(:disabled){background:#b71c1c}.btn-reject:disabled{cursor:not-allowed;opacity:.6}.approved-by,.rejected-by{color:#666;font-size:12px}.monthly-error,.monthly-loading{color:#666;padding:24px;text-align:center}.monthly-error .error-detail{color:#c62828;font-size:12px;margin-top:8px}
/*# sourceMappingURL=main.b7e38f67.css.map*/