@font-face{font-family:DM Sans;src:url(../fonts/DMSans-Variable.ttf)format("truetype-variations");font-weight:100 1000;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(../fonts/DMSans-Italic-Variable.ttf)format("truetype-variations");font-weight:100 1000;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(../fonts/JetBrainsMono-Variable.ttf)format("truetype-variations");font-weight:100 800;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(../fonts/JetBrainsMono-Italic-Variable.ttf)format("truetype-variations");font-weight:100 800;font-style:italic;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface-0:#0f1419;--surface-1:#171d25;--surface-2:#1e2630;--surface-3:#273140;--surface-4:#323f52;--text-primary:#e8eef4;--text-secondary:#9aa8b8;--text-muted:#6b7a8c;--text-inverse:#0f1419;--accent:#2dd4a8;--accent-muted:#1a9e7a;--accent-subtle:#2dd4a81f;--success:#3ecf8e;--success-subtle:#3ecf8e24;--warning:#e8b84a;--warning-subtle:#e8b84a24;--danger:#f07178;--danger-subtle:#f0717824;--info:#6bb3ff;--info-subtle:#6bb3ff24;--border:#e8eef41a;--border-strong:#e8eef42e;--kpi-valen-bg:linear-gradient(145deg, #14352f 0%, #1a4a40 100%);--kpi-valen-border:#2dd4a861;--kpi-valen-value:var(--accent);--kpi-edgar-bg:linear-gradient(145deg, #2a2418 0%, #3d3220 100%);--kpi-edgar-border:#e8b84a52;--kpi-edgar-value:#f0c674;--pocket-hogar-bg:#2dd4a826;--pocket-hogar-fg:#2dd4a8;--pocket-valen-bg:#6bb3ff26;--pocket-valen-fg:#6bb3ff;--pocket-edgar-bg:#e8b84a26;--pocket-edgar-fg:#e8b84a;--bg-canvas:var(--surface-0);--bg-chrome:var(--surface-1);--surface-card:var(--surface-2);--surface-input:var(--surface-3);--surface-row-hover:var(--surface-3);--focus-ring:var(--accent);--progress-track:var(--surface-3);--progress-fill:var(--accent);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--sidebar-width:240px;--sidebar-collapsed:56px;--topbar-height:56px;--content-max:1120px;--content-pad:24px;--content-pad-mobile:16px;--card-gap:16px;--row-height:44px;--breakpoint-mobile:768px;--font-sans:"DM Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-xs:12px;--leading-xs:1.4;--text-sm:13px;--leading-sm:1.45;--text-md:15px;--leading-md:1.5;--text-lg:18px;--leading-lg:1.4;--text-xl:22px;--leading-xl:1.3;--text-kpi:clamp(28px, 4vw, 40px);--leading-kpi:1.1;--text-table:14px;--leading-table:1.4;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-caps:.04em;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--duration-fast:.15s;--duration-base:.18s;--ease:cubic-bezier(.4, 0, .2, 1);--transition:all var(--duration-base) var(--ease)}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-base:0s}}*,:before,:after{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--bg-canvas);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-md);-webkit-font-smoothing:antialiased;text-wrap:pretty;margin:0}h1,h2,h3,h4{font-weight:var(--weight-semibold);line-height:var(--leading-lg);margin:0}a{color:var(--accent);transition:color var(--duration-fast) var(--ease);text-decoration:none}a:hover{color:var(--accent-muted);text-decoration:underline}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}::selection{background:var(--accent-subtle);color:var(--text-primary)}::placeholder{color:var(--text-muted)}.ch-money{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:var(--weight-medium);text-align:right}.ch-caps{text-transform:uppercase;letter-spacing:var(--tracking-caps);font-size:var(--text-xs);color:var(--text-secondary)}.app-shell{flex-direction:column;height:100vh;display:flex;overflow:hidden}.topbar{height:var(--topbar-height);justify-content:flex-start;align-items:center;gap:var(--space-5);padding:0 var(--content-pad-mobile);background:var(--bg-chrome);border-bottom:1px solid var(--border);z-index:20;flex-shrink:0;display:flex}.topbar-brand{font-weight:var(--weight-bold);font-size:var(--text-md);color:var(--text-primary)}.topbar-mes-wrap{align-items:center;gap:var(--space-2);display:flex}.topbar-mes{font-size:var(--text-sm);background:var(--surface-3);color:var(--text-primary);border-radius:var(--radius-pill);font-weight:var(--weight-medium);padding:4px 10px}.mes-estado{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-caps);border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-secondary);padding:4px 8px}.mes-estado-abierto{background:var(--success-subtle);color:var(--success)}.mes-estado-cerrado{background:var(--warning-subtle);color:var(--warning)}.app-body{flex-direction:column;flex:1;display:flex;overflow:hidden}#nav-slot{flex-shrink:0}.nav{background:var(--bg-chrome);border-top:1px solid var(--border);width:100%;display:flex;overflow-x:auto}.nav-scroll{flex:1;display:flex}.nav-group{display:flex}.nav-group-title{display:none}.nav-link{padding:var(--space-2) var(--space-4);color:var(--text-secondary);white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;display:flex}.nav-link.is-active{color:var(--accent)}.nav-icon{stroke-width:1.75px;width:20px;height:20px}.nav-footer{display:none}.content{padding:var(--content-pad-mobile);flex:1;overflow-y:auto}@media (width>=768px){.topbar{padding:0 var(--content-pad)}.app-body{flex-direction:row}.nav{width:var(--sidebar-width);border-top:none;border-right:1px solid var(--border);height:100%;transition:width var(--duration-fast) var(--ease);flex-direction:column;flex-shrink:0;overflow:hidden}.nav.is-collapsed{width:var(--sidebar-collapsed)}.nav-scroll{padding:var(--space-4) 0;flex-direction:column;overflow:hidden auto}.nav-group{flex-direction:column;margin-bottom:0}.nav-divider{border:none;border-top:1px solid var(--border);margin:var(--space-3) var(--space-4)}.nav-group-title{padding:0 var(--space-5);margin-bottom:var(--space-2);white-space:nowrap;opacity:1;transition:opacity var(--duration-fast) var(--ease);display:block}.nav.is-collapsed .nav-group-title{opacity:0;pointer-events:none}.nav-link{justify-content:flex-start;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-5);font-size:var(--text-sm);font-weight:var(--weight-medium);flex-direction:row}.nav.is-collapsed .nav-link{padding:var(--space-2) calc((var(--sidebar-collapsed) - 20px) / 2);position:relative}.nav.is-collapsed .nav-label{display:none}.nav.is-collapsed .nav-link[title]:hover:after,.nav.is-collapsed .nav-collapse-btn[title]:hover:after{content:attr(title);left:calc(100% + var(--space-2));background:var(--surface-4);color:var(--text-primary);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap;z-index:50;pointer-events:none;padding:4px 8px;position:absolute}.nav-link.is-active{background:var(--accent-subtle);color:var(--accent);border-radius:var(--radius-md);margin:0 var(--space-3);padding:var(--space-2) calc(var(--space-5) - var(--space-3))}.nav.is-collapsed .nav-link.is-active{margin:0 calc((var(--sidebar-collapsed) - 32px) / 2);padding:var(--space-2) 6px}.nav-footer{border-top:1px solid var(--border);padding:var(--space-2) 0;flex-direction:column;display:flex}.nav-sync,.nav-collapse-btn{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);font-size:var(--text-sm);color:var(--text-secondary);white-space:nowrap;display:flex}.nav.is-collapsed .nav-sync,.nav.is-collapsed .nav-collapse-btn{padding:var(--space-3) calc((var(--sidebar-collapsed) - 20px) / 2)}.nav.is-collapsed .nav-sync .nav-label,.nav.is-collapsed .nav-collapse-btn .nav-label{display:none}.nav-sync-icon{width:20px;height:20px;color:var(--success)}.nav-collapse-btn{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-family:inherit}.nav-collapse-btn:hover{color:var(--text-primary);background:var(--surface-2)}.content{padding:var(--content-pad)}}.view{max-width:var(--content-max);gap:var(--space-6);flex-direction:column;margin:0 auto;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);padding:0 var(--space-4);height:40px;font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;color:var(--text-primary);transition:var(--transition);white-space:nowrap;background:0 0;border:1px solid #0000;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--text-inverse);font-weight:var(--weight-semibold)}.btn-primary:hover:not(:disabled){background:var(--accent-muted)}.btn-secondary{border-color:var(--border-strong);background:var(--surface-2)}.btn-secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--text-secondary)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text-primary)}.btn-danger{color:var(--danger);border-color:var(--danger-subtle)}.btn-danger:hover:not(:disabled){background:var(--danger-subtle)}.btn-icon{stroke-width:2px;width:16px;height:16px}.badge{border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-caps);white-space:nowrap;background:var(--surface-3);color:var(--text-secondary);justify-content:center;align-items:center;padding:4px 8px;display:inline-flex}.badge-success{background:var(--success-subtle);color:var(--success)}.badge-warning{background:var(--warning-subtle);color:var(--warning)}.badge-danger{background:var(--danger-subtle);color:var(--danger)}.badge-info{background:var(--info-subtle);color:var(--info)}.badge-accent{background:var(--accent-subtle);color:var(--accent)}.badge-hogar{background:var(--pocket-hogar-bg);color:var(--pocket-hogar-fg)}.badge-personal_valen{background:var(--pocket-valen-bg);color:var(--pocket-valen-fg)}.badge-personal_edgar{background:var(--pocket-edgar-bg);color:var(--pocket-edgar-fg)}.chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:var(--transition);padding:6px 12px;display:inline-flex}.chip:hover{background:var(--surface-3);color:var(--text-primary)}.chip.is-active{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent)}.card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.card-title-wrap{gap:var(--space-3);display:flex}.card-icon{color:var(--text-secondary);margin-top:2px}.card-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);margin-bottom:var(--space-1)}.card-desc{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.card-actions{gap:var(--space-2);display:flex}.alert{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-2);border:1px solid #0000;display:flex}.alert-icon{flex-shrink:0;margin-top:2px}.alert-title{font-size:var(--text-md);font-weight:var(--weight-semibold);margin-bottom:var(--space-1)}.alert-desc{font-size:var(--text-sm);color:var(--text-primary);margin:0}.alert-info{border-color:var(--info-subtle)}.alert-info .alert-icon{color:var(--info)}.alert-warning{border-color:var(--warning-subtle)}.alert-warning .alert-icon{color:var(--warning)}.alert-danger{border-color:var(--danger-subtle)}.alert-danger .alert-icon{color:var(--danger)}.alert-success{border-color:var(--success-subtle)}.alert-success .alert-icon{color:var(--success)}.empty-state{text-align:center;padding:var(--space-7) var(--space-5);background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.empty-icon{color:var(--text-muted)}.empty-title{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.empty-desc{font-size:var(--text-sm);color:var(--text-secondary);max-width:400px;margin:0}.empty-action{margin-top:var(--space-2)}.kpi-card{min-width:240px;padding:var(--space-5);border-radius:var(--radius-lg);gap:var(--space-3);transition:filter var(--duration-fast) var(--ease);border:1px solid;flex-direction:column;flex:1;display:flex}.kpi-card:hover{filter:brightness(1.12)}.kpi-valen{background:var(--kpi-valen-bg);border-color:var(--kpi-valen-border)}.kpi-valen .kpi-value{color:var(--kpi-valen-value)}.kpi-edgar{background:var(--kpi-edgar-bg);border-color:var(--kpi-edgar-border)}.kpi-edgar .kpi-value{color:var(--kpi-edgar-value)}.kpi-top{flex-direction:column;gap:4px;display:flex}.kpi-label{font-size:var(--text-sm);color:var(--text-primary);font-weight:var(--weight-medium)}.kpi-note{font-size:var(--text-xs);color:#fff9}.kpi-value{font-size:var(--text-kpi);font-weight:var(--weight-bold);line-height:var(--leading-kpi)}.kpi-detail{padding-top:var(--space-2);font-size:var(--text-sm);margin-top:auto}.totals-block{gap:var(--space-2);padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex}.totals-row{justify-content:space-between;align-items:center;display:flex}.totals-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--weight-medium)}.totals-value{font-size:var(--text-md);color:var(--text-primary)}.totals-extra{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1)}.progress-wrap{gap:var(--space-2);flex-direction:column;display:flex}.progress-head{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary);justify-content:space-between;display:flex}.progress-track{border-radius:var(--radius-pill);background:var(--progress-track);height:8px;overflow:hidden}.progress-fill{border-radius:var(--radius-pill);background:var(--progress-fill);height:100%;transition:width var(--duration-base) var(--ease)}.progress-fill.is-warning{background:var(--warning)}.data-table{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.data-table-header{gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-strong);background:var(--surface-2);z-index:10;display:grid;position:sticky;top:0}.data-table-row{gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface-2);transition:background var(--duration-fast) var(--ease);align-items:center;display:grid}.data-table-row:last-child{border-bottom:none}.data-table-row:hover{background:var(--surface-row-hover)}.data-table-row.is-clickable{cursor:pointer}.data-table-cell{font-size:var(--text-table);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.data-table-empty{padding:var(--space-5);text-align:center;color:var(--text-secondary);font-size:var(--text-sm)}.filter-bar{gap:var(--space-3);margin-bottom:var(--space-4);z-index:10;background:var(--bg-canvas);padding:var(--space-2) 0;flex-wrap:wrap;align-items:center;display:flex;position:sticky;top:0}.filter-slots{gap:var(--space-3);flex-wrap:wrap;flex:1;display:flex}.field{gap:var(--space-2);flex-direction:column;display:flex}.field input,.field select{background:var(--surface-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);transition:border-color var(--duration-fast);padding:8px 12px}.field input:focus,.field select:focus{border-color:var(--focus-ring);outline:none}.modal-overlay{z-index:100;padding:var(--space-4);background:#0f1419cc;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;box-shadow:0 10px 30px #00000080}.modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.modal-close{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.modal-close:hover{background:var(--surface-3);color:var(--text-primary)}.modal-body{padding:var(--space-5);flex:1;overflow-y:auto}.modal-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border);justify-content:flex-end;gap:var(--space-3);display:flex}.notion-select{width:100%;position:relative}.notion-select-input{width:100%;font:inherit;color:var(--text-primary);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px}.notion-select-input:focus{border-color:var(--accent);outline:none}.notion-select-menu{z-index:40;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;max-height:280px;padding:var(--space-1);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000059}.notion-select-empty{color:var(--text-muted);font-size:var(--text-sm);padding:8px 12px}.notion-select-row{align-items:center;gap:var(--space-1);width:100%;display:flex}.notion-select-label{text-align:left;border-radius:var(--radius-sm);width:100%;font:inherit;color:var(--text-primary);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 10px}.notion-select-label:hover{background:var(--surface-4)}.notion-select-edit{cursor:pointer;border-radius:var(--radius-sm);color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;padding:6px}.notion-select-edit:hover{background:var(--surface-4);color:var(--text-primary)}.notion-select-rename-input{font:inherit;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface-4);color:var(--text-primary);outline:none;flex:1;padding:6px 8px}.notion-select-create{text-align:left;border-radius:var(--radius-sm);width:100%;font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:8px 10px;font-weight:600}.notion-select-create:hover{background:var(--surface-4)}.view-header h1{margin:0 0 var(--space-2);font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-xl)}.view-description{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:var(--text-md)}.view-empty{background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-secondary)}.view-bullets{margin:0 0 var(--space-5);padding-left:var(--space-5);color:var(--text-primary)}.config-status{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5);font-size:var(--text-sm)}.config-status-error{background:var(--danger-subtle);color:var(--danger);border:1px solid var(--danger)}.config-status-info{background:var(--info-subtle);color:var(--info);border:1px solid var(--info)}.detalle-filter-select{font:inherit;color:var(--text-primary);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:150px;padding:8px 12px}.detalle-filter-select:focus{border-color:var(--accent);outline:none}.card-body{gap:var(--space-3);flex-direction:column;display:flex}.card-text-wrap,.alert-content{flex:1;min-width:0}.progress-label,.progress-right{font-size:var(--text-xs);color:var(--text-secondary)}.text-right{text-align:right}.data-table-body{flex-direction:column;display:flex}.data-table-row.is-expandable{cursor:pointer}.data-table-expanded{padding:var(--space-4);background:var(--surface-3);border-top:1px solid var(--border);grid-column:1/-1}.view-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.view-header h1{align-items:center;gap:var(--space-3);font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-xl);margin:0;display:flex}
