@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";:root{--font-primary:"Outfit", sans-serif;--font-secondary:"Plus Jakarta Sans", sans-serif;--bg-main:#06090e;--bg-sidebar:#0b0f17;--bg-card:#101523b3;--bg-card-hover:#161c30cc;--border-color:#ffffff0f;--border-focus:#6366f1;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#4b5563;--accent-color:#6366f1;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #a855f7 100%);--success-color:#10b981;--danger-color:#ef4444;--warning-color:#f59e0b;--info-color:#3b82f6;--tag-santander:#c5161c;--tag-naranja:#d85c00;--tag-brubank:#5d2fc7;--tag-carrefour:#0b4a7d;--tag-cash:#0f766e;--tag-default:#374151;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--transition:all .2s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-primary);background-color:var(--bg-main);color:var(--text-primary);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:13px;overflow:hidden}option{background-color:var(--bg-main);color:var(--text-primary)}button,input,select,textarea{font-family:inherit;font-size:13px}.app-container{flex-direction:column;width:100vw;height:100dvh;display:flex;position:relative}.sidebar-overlay{z-index:1000;opacity:0;visibility:hidden;transition:var(--transition);background-color:#0009;position:fixed;inset:0}.sidebar-overlay.open{opacity:1;visibility:visible}.sidebar{background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);z-index:1001;flex-direction:column;width:250px;padding:1.5rem 1rem;transition:transform .25s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.logo-container{align-items:center;gap:.5rem;margin-bottom:2rem;display:flex}.logo-icon{background:var(--accent-gradient);border-radius:var(--radius-sm);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;font-size:1rem;font-weight:700;display:flex}.logo-text{background:linear-gradient(120deg,#fff,#a855f7);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.1rem;font-weight:700}.nav-links{flex-direction:column;flex:1;gap:.25rem;list-style:none;display:flex}.nav-item{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;transition:var(--transition);background:0 0;border:none;align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.85rem;font-weight:500;text-decoration:none;display:flex}.nav-item:hover,.nav-item.active{color:var(--text-primary);background-color:#ffffff0a}.nav-item.active{border-left:2px solid var(--accent-color);color:#a5b4fc;background:#6366f11f}.sidebar-footer{border-top:1px solid var(--border-color);color:var(--text-muted);margin-top:auto;padding-top:1rem;font-size:.75rem}.db-status{align-items:center;gap:.4rem;margin-bottom:.25rem;font-weight:600;display:flex}.status-dot{border-radius:50%;width:6px;height:6px}.status-dot.online{background-color:var(--success-color)}.status-dot.offline{background-color:var(--warning-color)}.top-header{background-color:var(--bg-sidebar);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 1rem;display:flex}.menu-toggle{color:var(--text-primary);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;display:flex}.menu-toggle:hover{background-color:#ffffff0d}.top-header-title{align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex}.top-header-title span.month-label{color:var(--accent-color);border-radius:var(--radius-sm);background-color:#6366f11a;padding:.15rem .4rem;font-size:.8rem;font-weight:700}.top-actions{align-items:center;gap:.5rem;display:flex}.workspace-content{flex-direction:column;flex:1;gap:.75rem;padding:.75rem;display:flex;overflow:hidden}.page-container{flex:1;height:100%;min-height:0;padding:2rem;overflow-y:auto}@media (width<=768px){.page-container{padding:1rem 1rem 4rem!important}}.workbook-grid{flex-direction:column;gap:.75rem;height:100%;display:flex;overflow-y:auto}.month-config-grid{border-radius:var(--radius-sm);background-color:#0003;grid-template-columns:repeat(2,1fr);gap:.4rem;margin-bottom:.25rem;padding:.4rem;display:grid}.workbook-row{grid-template-columns:1.6fr 1fr;gap:.75rem;height:100%;display:grid;overflow:hidden}@media (width<=768px){.workbook-row{height:auto!important;display:block!important;overflow:visible!important}.sheet-box{margin-bottom:1rem;height:auto!important;display:block!important;overflow:visible!important}.sheet-body{flex:none!important;height:auto!important;overflow-y:visible!important}.grid-table-container{flex:none!important;height:auto!important;overflow-x:visible!important}.hide-mobile{display:none!important}.top-header-title span:first-child{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.top-header-title span.month-label{padding:.1rem .2rem;font-size:.7rem}.grid-table th{letter-spacing:0;padding:3px 4px;font-size:10px}.top-summary-panel{grid-template-columns:1fr!important;gap:.25rem!important}.summary-metric{border-bottom:1px solid var(--border-color);padding-bottom:.25rem;border-right:none!important;padding-right:0!important}.summary-metric:last-child{border-bottom:none;padding-bottom:0}.month-config-grid{grid-template-columns:1fr!important;gap:.5rem!important}.grid-table,.grid-table tbody,.grid-table tr,.grid-table td{width:100%;display:block}.grid-table thead{display:none}.grid-table tr{border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:1rem;padding:.5rem;background-color:#0003!important}.grid-table td{justify-content:space-between;align-items:center;display:flex;border:none!important;border-bottom:1px solid #ffffff0d!important;height:auto!important;padding:.6rem 0!important}.grid-table td:last-child{border-bottom:none!important}.grid-table td:before{content:attr(data-label);color:var(--text-secondary);text-transform:uppercase;text-align:left;flex-shrink:0;width:40%;font-size:10px;font-weight:700}.grid-table td .cell-input,.grid-table td .cell-select,.grid-table td .cell-readonly{text-align:right;width:60%}}.sheet-box{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;height:100%;display:flex;overflow:hidden}.sheet-header{border-bottom:1px solid var(--border-color);background-color:#0003;flex-shrink:0;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.85rem;font-weight:600;display:flex}.sheet-body{flex-direction:column;flex:1;gap:.5rem;padding:.5rem;display:flex;overflow-y:auto}.grid-table-container{border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:#00000026;overflow-x:auto}.grid-table{border-collapse:collapse;table-layout:fixed;width:100%}.auto-table{border-collapse:collapse;table-layout:auto;width:100%}.auto-table th{color:var(--text-secondary);border-bottom:1px solid var(--border-color);text-transform:uppercase;background-color:#0f131cf2;padding:6px 10px;font-size:11px;font-weight:700}.auto-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:6px 10px}.grid-table th{color:var(--text-secondary);border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.2px;background-color:#0f131cf2;padding:4px 6px;font-size:11px;font-weight:700}.grid-table th:last-child,.grid-table td:last-child{border-right:none}.grid-table td{border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);vertical-align:middle;height:24px;padding:0}.cell-input,.cell-select{width:100%;height:24px;color:var(--text-primary);background:0 0;border:none;outline:none;padding:2px 6px;font-size:12px;transition:background-color .15s}.cell-input:focus,.cell-select:focus{box-shadow:inset 0 0 0 1px var(--border-focus);background-color:#6366f126}.cell-input[type=number]{text-align:right;font-family:var(--font-secondary)}.cell-readonly{white-space:nowrap;text-overflow:ellipsis;align-items:center;height:100%;padding:2px 6px;font-size:12px;display:flex;overflow:hidden}.cell-readonly.amt{font-family:var(--font-secondary);justify-content:flex-end;font-weight:600}.cell-tag{text-transform:uppercase;color:#fff;border-radius:2px;width:fit-content;padding:.05rem .35rem;font-size:10px;font-weight:700}.tag-santander{background-color:var(--tag-santander)}.tag-naranja{background-color:var(--tag-naranja)}.tag-brubank{background-color:var(--tag-brubank)}.tag-carrefour{background-color:var(--tag-carrefour)}.tag-cash{background-color:var(--tag-cash)}.tag-default{background-color:var(--tag-default)}.top-summary-panel{background-color:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:var(--radius-sm);flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:.5rem;padding:.4rem .75rem;display:grid}.summary-metric{border-right:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-right:.75rem;display:flex}.summary-metric:last-child{border-right:none;padding-right:0}.summary-metric-label{color:var(--text-secondary);text-transform:uppercase;font-size:11px;font-weight:600}.summary-metric-value{font-size:13px;font-weight:700;font-family:var(--font-secondary)}.sheets-tab-bar{background-color:var(--bg-sidebar);border-top:1px solid var(--border-color);flex-shrink:0;align-items:center;gap:1px;height:28px;padding:0 .5rem;display:flex;overflow-x:auto}.sheet-tab{height:27px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);white-space:nowrap;background:0 0;border:none;border-top:2px solid #0000;align-items:center;padding:0 1rem;font-size:11px;font-weight:600;display:flex}.sheet-tab:hover{color:var(--text-primary);background-color:#ffffff08}.sheet-tab.active{background-color:var(--bg-main);border-top:2px solid var(--accent-color);border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);color:var(--text-primary);font-weight:700}.sheet-add-tab{width:22px;height:22px;color:var(--text-primary);cursor:pointer;transition:var(--transition);background:#ffffff0d;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:.5rem;display:flex}.sheet-add-tab:hover{background-color:#ffffff1f}.parameters-panel{flex-direction:column;gap:.75rem;display:flex}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);border:none;justify-content:center;align-items:center;gap:.35rem;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);background-color:#ffffff0d}.btn-secondary:hover{background-color:#ffffff1a}.btn-danger{color:var(--danger-color);background-color:#ef444426;border:1px solid #ef444433}.btn-danger:hover{background-color:#ef444440}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;background-color:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;gap:1rem;width:95%;max-width:400px;padding:1.25rem;display:flex;box-shadow:0 10px 30px #00000080}.modal-header h3{font-size:1.1rem;font-weight:700}.form-group{flex-direction:column;gap:.25rem;display:flex}.form-label{color:var(--text-secondary);font-size:11px;font-weight:600}.form-input,.form-select{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);background-color:#0003;outline:none;padding:.4rem .6rem;font-size:12px}.form-input:focus,.form-select:focus{border-color:var(--accent-color)}.chart-collapse-header{border-top:1px solid var(--border-color);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary);background-color:#ffffff05;justify-content:space-between;align-items:center;padding:.35rem .75rem;font-size:11px;font-weight:700;display:flex}.chart-collapse-content{background-color:#0003;max-height:0;transition:max-height .25s ease-out;overflow:hidden}.chart-collapse-content.open{max-height:240px;overflow:visible}.split-workbook{grid-template-rows:auto 1fr;height:100%;display:grid;overflow:hidden}
