.oq-faint{color:var(--text-faint)}.oq-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.oq-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.oq-icon{flex:none;display:inline-block;vertical-align:middle}.oq-spin{animation:oq-spin .9s linear infinite}@keyframes oq-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.oq-spin{animation-duration:2.4s!important;animation-iteration-count:infinite!important}}.oq-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-md);padding:0 14px;font:500 var(--fs-md)/1 var(--font-sans);border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.oq-btn--sm{height:var(--control-sm);padding:0 10px;font-size:var(--fs-base);gap:4px}.oq-btn--icon{width:var(--control-md);padding:0}.oq-btn--sm.oq-btn--icon{width:var(--control-sm)}.oq-btn--block{width:100%}.oq-btn--primary{background:var(--primary);color:var(--on-primary)}.oq-btn--primary:hover:not(:disabled){background:var(--primary-hover)}.oq-btn--primary:active:not(:disabled){background:var(--primary-active)}.oq-btn--secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.oq-btn--secondary:hover:not(:disabled){background:var(--surface-hover)}.oq-btn--ghost{background:transparent;color:var(--text-muted)}.oq-btn--ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.oq-btn--danger{background:var(--danger);color:var(--on-primary)}.oq-btn--danger:hover:not(:disabled){background:var(--danger-hover)}.oq-btn:disabled{cursor:not-allowed;opacity:.5}.oq-btn[aria-busy=true]{cursor:progress;opacity:.85}.oq-help{width:22px;height:22px;margin-left:2px}.oq-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0}.oq-card__head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);min-height:48px}.oq-card__title{font-size:var(--fs-md);font-weight:600;margin:0;flex:1;display:flex;align-items:center;gap:6px}.oq-card__sub{font-size:var(--fs-base);color:var(--text-muted)}.oq-card__body{padding:var(--space-4)}.oq-card__body--flush{padding:0}.oq-card__foot{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg);font-size:var(--fs-base);color:var(--text-muted)}.oq-kpi{padding:var(--space-4);display:flex;flex-direction:column;gap:6px;position:relative}.oq-kpi__top{display:flex;align-items:center;gap:6px;min-height:20px}.oq-kpi__label{font-size:var(--fs-sm);font-weight:500;color:var(--text-muted);letter-spacing:.02em;flex:1}.oq-kpi__tone{width:22px;height:22px;border-radius:var(--radius-sm);display:grid;place-items:center;flex:none}.oq-kpi--ok .oq-kpi__tone{background:var(--success-soft);color:var(--success)}.oq-kpi--warn .oq-kpi__tone{background:var(--warning-soft);color:var(--warning)}.oq-kpi--danger .oq-kpi__tone{background:var(--danger-soft);color:var(--danger)}.oq-kpi__value{font-size:var(--fs-kpi);line-height:32px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oq-kpi--sm .oq-kpi__value{font-size:22px;line-height:28px}.oq-kpi--ok .oq-kpi__value{color:var(--success)}.oq-kpi--danger .oq-kpi__value{color:var(--danger)}.oq-kpi--warn .oq-kpi__value{color:var(--warning)}.oq-kpi__meta{gap:8px}.oq-kpi__hint{font-size:var(--fs-sm);color:var(--text-faint);font-variant-numeric:tabular-nums}.oq-kpi__delta{display:inline-flex;align-items:center;gap:3px;font-size:var(--fs-sm);font-weight:500;font-variant-numeric:tabular-nums}.oq-kpi__delta--up{color:var(--success)}.oq-kpi__delta--down{color:var(--danger)}.oq-kpi__delta--flat{color:var(--text-muted)}.oq-kpi__delta span.oq-faint{font-weight:400}.oq-kpi__extra{margin-top:4px;padding-top:8px;border-top:1px dashed var(--border);font-size:var(--fs-base)}.oq-kpi-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.oq-ph{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}.oq-ph__text{flex:1;min-width:220px}.oq-ph__title{margin:0;font-size:var(--fs-xl);line-height:30px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.oq-ph__filete{display:flex;gap:3px;margin:6px 0 8px;height:3px}.oq-ph__filete i{display:block;height:3px;border-radius:2px}.oq-ph__filete i:first-child{width:28px;background:var(--filete-bermellon)}.oq-ph__filete i:last-child{width:8px;background:var(--filete-dorado)}.oq-ph__sub{margin:0;font-size:var(--fs-base);color:var(--text-muted)}.oq-ph__actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.oq-logo{display:block;height:36px;width:auto}.oq-navlink{display:flex;align-items:center;gap:8px;height:32px;padding:0 10px;border-radius:var(--radius-sm);color:var(--text);text-decoration:none;font-size:var(--fs-md);white-space:nowrap;cursor:pointer}.oq-navlink:hover{background:var(--surface-hover)}.oq-navlink[aria-current=page]{background:var(--primary-soft);color:var(--primary-active);font-weight:600}.oq-ctx{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--space-2) var(--space-3);margin-left:auto;min-width:0}.oq-ctx__estado,.oq-ctx__conv,.oq-ctx__ejercicio{display:inline-flex;align-items:center}.oq-ctx__select{height:var(--control-md);padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--success-soft);color:var(--text);font:500 var(--fs-base) var(--font-sans);cursor:pointer}.oq-ctx__select--previo{background:var(--warning-soft)}.oq-ctx__mes{display:inline-flex;align-items:center;height:var(--control-md);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface)}.oq-ctx__mes button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;width:30px;height:100%;display:grid;place-items:center;color:var(--text-muted);cursor:pointer}.oq-ctx__mes button:hover{background:var(--surface-hover);color:var(--text)}.oq-ctx__mes button:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.oq-ctx__mes button:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.oq-ctx__mes span{min-width:76px;text-align:center;font-weight:600;font-size:var(--fs-md);font-variant-numeric:tabular-nums}.oq-user{display:inline-flex;align-items:center;gap:8px;min-height:var(--control-md);padding:0 2px 0 4px;font:500 var(--fs-base) var(--font-sans);color:var(--text)}.oq-user__av{width:28px;height:28px;flex:none;border-radius:50%;background:var(--violeta-100);color:var(--violeta-800);display:grid;place-items:center;font-size:var(--fs-sm);font-weight:600}.oq-user__txt{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.oq-user__txt small{font-size:var(--fs-xs);color:var(--text-faint);font-weight:400}.oq-shell{display:flex;min-height:100vh;background:var(--bg)}.oq-shell__main{flex:1;min-width:0;display:flex;flex-direction:column}.oq-shell__content{padding:var(--space-6);width:100%;flex:1}.oq-side{width:var(--sidebar-width);flex:none;background:var(--nav-bg);border-right:1px solid var(--filete-dorado);box-shadow:2px 0 0 var(--filete-bermellon);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:var(--z-nav)}.oq-side--rail{width:var(--sidebar-rail)}.oq-side__head{height:64px;display:flex;align-items:center;gap:8px;padding:0 10px 0 16px;flex:none}.oq-side--rail .oq-side__head{padding:0;justify-content:center}.oq-side__logo{flex:1;display:block}.oq-side__head .oq-logo{height:40px}.oq-side__scroll{flex:1;overflow-y:auto;padding:4px 10px 12px}.oq-side--rail .oq-side__scroll{padding:4px 8px}.oq-side__group{margin-top:12px}.oq-side__gtitle{display:flex;align-items:center;gap:8px;height:28px;padding:0 8px;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);letter-spacing:.02em}.oq-side__gtitle .oq-icon{color:var(--text-faint)}.oq-side__group--active .oq-side__gtitle .oq-icon{color:var(--filete-violeta)}.oq-side .oq-navlink{padding-left:32px;height:30px}.oq-side .oq-navlink[aria-current=page]{background:var(--nav-active);box-shadow:0 0 0 1px var(--border);color:var(--primary-active)}.oq-side .oq-navlink:hover:not([aria-current=page]){background:var(--surface-hover)}.oq-side__railbtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;width:44px;height:40px;margin:2px 0;display:grid;place-items:center;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer}.oq-side__railbtn:hover,.oq-side__railbtn[aria-expanded=true]{background:var(--surface-hover);color:var(--text)}.oq-side__railbtn--active{background:var(--nav-active);color:var(--filete-violeta);box-shadow:0 0 0 1px var(--border)}.oq-side__fly{position:fixed;left:var(--sidebar-rail);min-width:200px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-popover)}.oq-side__flytitle{padding:4px 10px 6px;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);letter-spacing:.02em}.oq-side__fly .oq-navlink{padding-left:10px}.oq-side__fly .oq-navlink[aria-current=page]{background:var(--primary-soft);box-shadow:none}.oq-topbar{min-height:var(--nav-height);display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-6);background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:var(--z-sticky)}@media (max-width: 1400px){.oq-topbar{padding-top:var(--space-2);padding-bottom:var(--space-2)}}.oq-topbar__logo{display:none}.oq-topbar__crumb{font-size:var(--fs-base);color:var(--text-muted);display:flex;align-items:center;gap:6px;white-space:nowrap}.oq-topbar__crumb strong{color:var(--text);font-weight:500}.oq-topbar__menu{display:none}@media (max-width: 900px){.oq-shell>.oq-side{display:none}.oq-topbar{padding:var(--space-2) var(--space-4);gap:var(--space-2);flex-wrap:wrap}.oq-topbar__menu{display:inline-flex}.oq-topbar__logo{display:block}.oq-topbar .oq-logo{height:30px}.oq-topbar__crumb{display:none}.oq-shell__content{padding:var(--space-4)}.oq-ctx{flex-wrap:wrap;gap:var(--space-2)}.oq-user__txt{display:none}.oq-ctx__mes span{min-width:64px;font-size:var(--fs-base)}}.oq-drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex}.oq-drawer__veil{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay)}.oq-drawer .oq-side{position:relative;height:100%;width:288px;max-width:85vw;display:flex}.oq-badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;font-size:var(--fs-sm);font-weight:500;line-height:1;white-space:nowrap;border-radius:var(--radius-sm);background:var(--surface-hover);color:var(--text-muted)}.oq-badge--ok{background:var(--success-soft);color:var(--success)}.oq-badge--warn{background:var(--warning-soft);color:var(--warning)}.oq-badge--danger{background:var(--danger-soft);color:var(--danger)}.oq-badge--info{background:var(--primary-soft);color:var(--primary-active)}.oq-badge--outline{background:transparent;border:1px solid var(--border);color:var(--text-muted)}.oq-field{display:inline-flex;flex-direction:column;gap:4px;min-width:0}.oq-label{font-size:var(--fs-sm);font-weight:500;color:var(--text-muted);letter-spacing:.02em}.oq-control{position:relative;display:inline-flex;align-items:center;height:var(--control-md);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--text);min-width:0}.oq-control:hover{border-color:var(--text-faint)}.oq-control:focus-within{outline:2px solid var(--focus-ring);outline-offset:1px}.oq-control>.oq-icon{margin-left:10px;color:var(--text-faint)}.oq-control input,.oq-control select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;outline:0;background:transparent;font:400 var(--fs-md) var(--font-sans);color:inherit;height:100%;padding:0 10px;min-width:0;width:100%}.oq-control input::placeholder{color:var(--text-faint)}.oq-control select{padding-right:30px;cursor:pointer}.oq-control .oq-select-chev{position:absolute;right:8px;pointer-events:none;color:var(--text-muted);margin:0}.oq-control--sm{height:var(--control-sm)}.oq-control--invalid{border-color:var(--danger)}.oq-help{font-size:var(--fs-sm);color:var(--text-faint)}.oq-help--error{color:var(--danger)}.oq-check{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-md);cursor:pointer;color:var(--text);min-height:var(--control-md)}.oq-check input{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin:0;width:16px;height:16px;flex:none;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);display:grid;place-items:center;cursor:pointer}.oq-check input:checked{background:var(--primary);border-color:var(--primary)}.oq-check input:checked:after{content:"";width:9px;height:5px;border:2px solid var(--on-primary);border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}.oq-check input:disabled{opacity:.5;cursor:not-allowed}.oq-filtros{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.oq-filtros__main{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;flex:1;min-width:0}.oq-filtros__sep{width:1px;align-self:stretch;background:var(--border);margin:2px 0}.oq-filtros__search{flex:1 1 200px;min-width:180px;max-width:320px}.oq-filtros__search .oq-control,.oq-filtros__search .oq-field{width:100%}.oq-filtros__acciones{display:flex;gap:var(--space-2);margin-left:auto;align-items:flex-end}.oq-filtros__toggle{display:none}.oq-filtros__sec{display:contents}@media (max-width: 640px){.oq-filtros{padding:var(--space-2);gap:var(--space-2)}.oq-filtros__main{flex-direction:column;align-items:stretch;width:100%}.oq-filtros__main>*{width:100%;max-width:none;flex:none}.oq-filtros__sep{display:none}.oq-filtros__acciones{width:100%;margin-left:0}.oq-filtros__acciones>*{flex:1}.oq-filtros__sec--collapsed{display:none}.oq-filtros__sec>*{width:100%}.oq-filtros__sec>.oq-check{width:auto}.oq-filtros__toggle{display:inline-flex}}.oq-filtros .oq-pop-wrap .oq-trigger{width:100%}.oq-pop-wrap{position:relative;display:inline-flex;flex-direction:column;gap:4px;min-width:0}.oq-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:var(--z-popover);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.oq-pop--right{left:auto;right:0}.oq-trigger{display:inline-flex;align-items:center;gap:8px;height:var(--control-md);padding:0 10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);font:500 var(--fs-md) var(--font-sans);color:var(--text);cursor:pointer;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:0}.oq-trigger:hover{background:var(--surface-hover)}.oq-trigger[aria-expanded=true]{border-color:var(--primary)}.oq-trigger>.oq-icon{color:var(--text-muted)}.oq-trigger__text{overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.oq-periodo{display:flex;width:560px;max-width:calc(100vw - 32px)}.oq-periodo__atajos{width:150px;flex:none;padding:8px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:2px;background:var(--surface-2);border-radius:var(--radius-md) 0 0 var(--radius-md)}.oq-periodo__atajo{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;text-align:left;height:30px;padding:0 10px;border-radius:var(--radius-sm);font:400 var(--fs-base) var(--font-sans);color:var(--text);cursor:pointer}.oq-periodo__atajo:hover{background:var(--surface-hover)}.oq-periodo__atajo[aria-pressed=true]{background:var(--primary-soft);color:var(--primary-active);font-weight:600}.oq-periodo__main{flex:1;padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0}.oq-periodo__bar{display:flex;align-items:center;justify-content:space-between;gap:8px}.oq-periodo__inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.oq-periodo__nav{display:flex;align-items:center;justify-content:space-between}.oq-periodo__navlabel{font-weight:600;font-size:var(--fs-md);text-transform:capitalize}.oq-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px 0}.oq-cal__dow{font-size:var(--fs-xs);color:var(--text-faint);text-align:center;height:22px;line-height:22px;font-weight:500;text-transform:uppercase}.oq-cal__d,.oq-mgrid__m{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;height:32px;font:400 var(--fs-base) var(--font-sans);color:var(--text);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:0}.oq-cal__d:hover,.oq-mgrid__m:hover{background:var(--surface-hover)}.oq-cal__d--out{color:var(--text-faint)}.oq-cal__d--hoy{font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--filete-dorado)}.oq-cal__d--in,.oq-mgrid__m--in{background:var(--primary-soft);color:var(--primary-active)}.oq-cal__d--edge,.oq-mgrid__m--edge{background:var(--primary);color:var(--on-primary);font-weight:600;border-radius:var(--radius-sm)}.oq-cal__d--edge:hover,.oq-mgrid__m--edge:hover{background:var(--primary-hover)}.oq-mgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px 0}.oq-mgrid__m{height:40px}.oq-periodo__foot{display:flex;align-items:center;gap:8px;border-top:1px solid var(--border);padding-top:10px}.oq-periodo__resumen{flex:1;font-size:var(--fs-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}@media (max-width: 640px){.oq-periodo{flex-direction:column;width:calc(100vw - 32px)}.oq-periodo__atajos{width:auto;flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid var(--border);border-radius:var(--radius-md) var(--radius-md) 0 0}}.oq-seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:2px}.oq-seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;height:24px;padding:0 10px;border-radius:var(--radius-sm);font:500 var(--fs-sm) var(--font-sans);color:var(--text-muted);cursor:pointer}.oq-seg button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border-strong)}.oq-trigger:disabled{opacity:.5;cursor:not-allowed}.oq-trigger:disabled:hover{background:var(--surface)}.oq-trigger--cliente{padding:0 6px 0 10px;cursor:default}.oq-trigger--cliente:hover{background:var(--surface)}.oq-trigger__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;font:inherit;color:inherit;cursor:pointer;padding:0;height:100%;flex:1;min-width:0;display:inline-flex;align-items:center;gap:8px;text-align:left}.oq-trigger__btn:disabled{cursor:not-allowed;opacity:.5}.oq-trigger__btn:focus-visible,.oq-chip button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:var(--radius-sm)}.oq-trigger__btn>.oq-icon{color:var(--text-muted);margin-left:auto}.oq-combo{width:320px;max-width:calc(100vw - 32px);padding:8px;display:flex;flex-direction:column;gap:6px}.oq-combo__list{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto}.oq-combo__opt{display:flex;align-items:center;gap:8px;padding:0 8px;height:32px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--fs-md)}.oq-combo__opt[aria-selected=true]{font-weight:600}.oq-combo__opt--active{background:var(--surface-hover)}.oq-combo__opt .oq-check-mark{margin-left:auto;color:var(--primary);flex:none}.oq-combo__opt mark{background:none;color:var(--primary-active);font-weight:600}.oq-combo__opt--todos{border-bottom:1px solid var(--border);border-radius:0;margin-bottom:4px}.oq-combo__nombre{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.oq-combo__vacio{padding:12px 8px;color:var(--text-faint);font-size:var(--fs-base)}.oq-combo__hint{font-size:var(--fs-xs);color:var(--text-faint);padding:2px 8px 0}.oq-check-mark{flex:none}.oq-chip{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 4px 0 8px;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-active);font-size:var(--fs-base);font-weight:500;max-width:220px;flex:0 1 auto}.oq-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.oq-chip button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:inherit;width:18px;height:18px;display:grid;place-items:center;border-radius:3px;cursor:pointer;padding:0}.oq-chip button:hover{background:var(--azul-100)}.oq-chip--warn{background:var(--warning-soft);color:var(--warning)}.oq-chip--warn button:hover{background:var(--dorado-100)}.oq-aviso-inline{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-sm);color:var(--warning)}.oq-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.oq-tabs::-webkit-scrollbar{display:none}.oq-tabs--1{border-bottom:1px solid var(--border);gap:2px;margin-bottom:var(--space-4)}.oq-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;cursor:pointer;white-space:nowrap;flex:none;font:500 var(--fs-md) var(--font-sans);color:var(--text-muted);display:inline-flex;align-items:center;gap:6px}.oq-tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.oq-tab:disabled{opacity:.5;cursor:not-allowed}.oq-tabs--1 .oq-tab{height:40px;padding:0 12px;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:var(--radius-md) var(--radius-md) 0 0}.oq-tabs--1 .oq-tab:hover:not(:disabled){color:var(--text);background:var(--surface-hover)}.oq-tabs--1 .oq-tab[aria-selected=true]{color:var(--primary-active);border-bottom-color:var(--primary);font-weight:600}.oq-tabs--2{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:3px;display:flex;width:fit-content;max-width:100%;margin-bottom:var(--space-4)}.oq-tabs--2 .oq-tab{height:28px;padding:0 10px;font-size:var(--fs-base);border-radius:var(--radius-sm)}.oq-tabs--2 .oq-tab:hover:not(:disabled){color:var(--text)}.oq-tabs--2 .oq-tab[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border-strong);font-weight:600}.oq-tab__count{font-size:var(--fs-xs);font-weight:600;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--surface-hover);color:var(--text-muted);display:inline-grid;place-items:center;font-variant-numeric:tabular-nums}.oq-tab[aria-selected=true] .oq-tab__count{background:var(--primary-soft);color:var(--primary-active)}.oq-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0;max-width:100%}.oq-table-wrap--alto{overflow:auto}.oq-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-base);color:var(--text)}.oq-table>caption{text-align:left}.oq-table>thead>tr>th,.oq-table>tbody>tr>td,.oq-table>tfoot>tr>td{padding:0 var(--space-3);min-height:var(--row-height);height:var(--row-height);text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);vertical-align:middle}.oq-table>thead>tr>th{background:var(--surface-2);font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);letter-spacing:.02em}.oq-table-wrap--alto .oq-table>thead>tr>th{position:sticky;top:0;z-index:var(--z-sticky)}.oq-table>thead>tr>th.th-ordenable:hover{color:var(--text);background:var(--surface-hover)}.oq-table>thead>tr>th[aria-sort=ascending],.oq-table>thead>tr>th[aria-sort=descending]{color:var(--primary-active)}.oq-table>thead>tr>th:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.oq-table>thead>tr>th.oq-num,.oq-table>tbody>tr>td.oq-num,.oq-table>tfoot>tr>td.oq-num{text-align:right;font-variant-numeric:tabular-nums}.oq-table .oq-c{text-align:center}.oq-table>tbody>tr:hover>td{background:var(--surface-hover)}.oq-table>tbody>tr:last-child>td{border-bottom:0}.oq-table>tbody>tr.oq-table__click{cursor:pointer}.oq-table>thead>tr>th{white-space:normal}.oq-table>tbody>tr>td{white-space:normal;overflow-wrap:break-word;max-width:22rem}.oq-table>tbody>tr>td.oq-num{white-space:nowrap}.oq-table>tbody>tr>td:has(input,select,textarea){white-space:nowrap;max-width:none}.oq-table>tbody>tr>td:last-child:has(button,.oq-row){white-space:nowrap;width:1%;max-width:none}.oq-table>tbody>tr>td.oq-table__wrap{white-space:normal;min-width:200px}.oq-table>tbody>tr>td.oq-table__strong{font-weight:600}.oq-table>tbody>tr.oq-atenuada>td{opacity:.55}.oq-table>tfoot>tr>td,.oq-table>tbody>tr.oq-table__total>td{background:var(--surface-2);font-weight:600;border-top:1px solid var(--border-strong);border-bottom:0;font-variant-numeric:tabular-nums}.oq-table>tbody>tr.oq-table__sub>td{background:var(--surface-2);color:var(--text-muted);white-space:normal;height:auto;padding:var(--space-3)}.oq-table>tbody>tr>td.oq-table__exp{width:32px;padding-right:0}.oq-table__expbtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;padding:0}.oq-table__expbtn:hover{background:var(--surface-hover);color:var(--text)}.oq-table>tbody>tr.oq-table__estado>td{height:auto;padding:var(--space-6) var(--space-3);border-bottom:0;white-space:normal;text-align:center}.oq-table>tbody>tr.oq-table__estado:hover>td{background:var(--surface)}.oq-table--fija>thead>tr>th:first-child,.oq-table--fija>tbody>tr>td:first-child,.oq-table--fija>tfoot>tr>td:first-child{position:sticky;left:0;z-index:2;background:var(--surface);box-shadow:1px 0 0 var(--border)}.oq-table--fija>thead>tr>th:first-child{background:var(--surface-2);z-index:calc(var(--z-sticky) + 1)}.oq-table--fija>tbody>tr:hover>td:first-child{background:var(--surface-hover)}.oq-table--fija>tfoot>tr>td:first-child{background:var(--surface-2)}@media (max-width: 640px){.oq-table>thead>tr>th,.oq-table>tbody>tr>td,.oq-table>tfoot>tr>td{padding:0 10px}}.oq-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:var(--z-modal);display:grid;place-items:center;padding:var(--space-4)}.oq-modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-height:calc(100vh - 32px);display:flex;flex-direction:column;outline:none}.oq-modal--sm{max-width:420px}.oq-modal--md{max-width:600px}.oq-modal--lg{max-width:880px}.oq-modal__head{display:flex;align-items:center;gap:8px;padding:14px 16px 14px 20px;border-bottom:1px solid var(--border)}.oq-modal__title{margin:0;font-size:var(--fs-lg);font-weight:600;flex:1}.oq-modal__body{padding:20px;overflow:auto;font-size:var(--fs-md)}.oq-modal__body--flush{padding:0}.oq-modal__foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.oq-modal--sm .oq-modal__head{border-bottom:0;padding-bottom:0}.oq-modal--sm .oq-modal__body{padding-top:8px;color:var(--text-muted)}.oq-confirm__icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--danger-soft);color:var(--danger);flex:none}.oq-confirm__icon--primary{background:var(--primary-soft);color:var(--primary-active)}.oq-confirm__msg{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}@media (max-width: 640px){.oq-overlay{place-items:end stretch;padding:0}.oq-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh}}.oq-toasts{position:fixed;bottom:16px;right:16px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:8px;width:360px;max-width:calc(100vw - 32px)}.oq-toast{display:flex;gap:10px;align-items:flex-start;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--fs-base)}.oq-toast__icon{color:var(--text-muted);margin-top:1px}.oq-toast--ok .oq-toast__icon{color:var(--success)}.oq-toast--warn .oq-toast__icon{color:var(--warning)}.oq-toast--danger .oq-toast__icon{color:var(--danger)}.oq-toast--info .oq-toast__icon{color:var(--primary)}.oq-toast__body{flex:1;min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.oq-toast__title{font-weight:600;color:var(--text)}.oq-toast__msg{color:var(--text-muted);margin-top:2px}.oq-toast__action{margin-top:6px}.oq-toast__action button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;font:600 var(--fs-base) var(--font-sans);color:var(--primary);cursor:pointer}.oq-sk{display:block;background:var(--neutral-200);border-radius:var(--radius-sm);animation:oq-sk 1.4s ease-in-out infinite}@keyframes oq-sk{50%{opacity:.45}}@media (prefers-reduced-motion: reduce){.oq-sk{animation:none}}.oq-estado{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:var(--space-12) var(--space-6)}.oq-estado__icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--surface-hover);color:var(--text-muted);margin-bottom:6px}.oq-estado--error .oq-estado__icon{background:var(--danger-soft);color:var(--danger)}.oq-estado__title{font-weight:600;font-size:var(--fs-md);margin:0}.oq-estado__msg{margin:0;font-size:var(--fs-base);color:var(--text-muted);max-width:420px}.oq-estado__actions{margin-top:10px;display:flex;gap:8px}.oq-estado__code{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-faint)}.oq-cargando{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);max-width:520px;margin:0 auto}.oq-cargando__filas{display:flex;flex-direction:column;gap:10px}.oq-cargando__msg{margin:4px 0 0;text-align:center;font-size:var(--fs-base);color:var(--text-muted)}.oq-icono-texto{display:inline-flex;align-items:center;gap:.4em;vertical-align:middle}.oq-icono-texto>.oq-icon{flex:none}@media (max-width: 640px){.oq-modal{max-height:92vh;max-height:92dvh}.oq-modal__head{padding:12px 12px 12px 16px}.oq-modal__body{padding:16px;-webkit-overflow-scrolling:touch}.oq-modal__foot{padding:12px 16px;flex-wrap:wrap}.oq-modal__foot>.oq-btn{flex:1 1 auto}.oq-modal__body .form-actions{position:sticky;bottom:0;background:var(--surface);margin-bottom:calc(-1 * var(--space-2));padding-bottom:var(--space-3)}.oq-modal__body .form-actions>*{flex:1 1 auto}.form{padding:var(--space-4)}.form-row{grid-template-columns:minmax(0,1fr)}.oq-ph{gap:var(--space-2)}.oq-ph>*{min-width:0}.oq-kpi-grid{grid-template-columns:minmax(0,1fr)}.oq-tabs--2{width:100%;overflow-x:auto}.oq-toasts{left:16px;right:16px;width:auto}}@media (pointer: coarse){.oq-btn{height:40px}.oq-btn--sm{height:36px}.oq-btn--icon{width:40px}.oq-btn--sm.oq-btn--icon{width:36px}.oq-control,.oq-control--sm{height:40px}.oq-control input,.oq-control select,.oq-filtros input,.form-group :where(input:not([type=checkbox],[type=radio]),select,textarea),.personal-form :where(input:not([type=checkbox],[type=radio]),select,textarea){font-size:16px}.btn-primary,.btn-secondary,.form-group :where(input:not([type=checkbox],[type=radio]),select){min-height:40px}.oq-check,.oq-navlink{min-height:40px}.oq-tabs--1 .oq-tab{height:44px}.oq-tabs--2 .oq-tab{height:34px}.form-group :where(input[type=checkbox],input[type=radio]),.oq-check input{width:20px;height:20px}}@media (max-width: 640px){.page-header{flex-wrap:wrap;align-items:flex-start}.page-header>*{min-width:0;max-width:100%}.page-header select,.page-header input{max-width:100%}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:2rem}.login-container{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-lg);width:100%;max-width:450px;padding:2.5rem;border-top:3px solid var(--filete-dorado)}.login-container .btn-primary{margin-top:.5rem;min-height:40px}.login-header{text-align:center;margin-bottom:2rem}.login-header p{color:#666;font-size:1rem}.login-logo{display:block;max-width:280px;width:100%;height:auto;margin:0 auto}.filete-voluta{display:block;width:160px;height:auto;margin:.5rem auto 0}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group small{color:#666;font-size:.85rem}.login-footer{text-align:center;margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.login-footer p{color:#666;font-size:.95rem}.login-footer a{color:var(--primary);font-weight:600;text-decoration:none}.login-footer a:hover{text-decoration:underline}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:6px;padding:.875rem;color:#c33;font-size:.95rem;text-align:center}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.empresa-fields{background-color:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;padding:1.5rem;margin-top:.5rem}.empresa-fields-header{font-weight:600;color:#495057;margin-bottom:1rem;font-size:.95rem}@media (max-width: 600px){.login-page{padding:1rem}.login-container{padding:2rem 1.5rem}.form-row{grid-template-columns:1fr}.login-header h1{font-size:1.5rem}}.login-separador{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0 1rem;color:var(--text-faint);font-size:.85rem}.login-separador:before,.login-separador:after{content:"";flex:1;height:1px;background:#e1e4e8}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.7rem 1rem;background:#fff;color:#3c4043;border:1px solid #dadce0;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:background .2s ease,box-shadow .2s ease}.btn-google:hover:not(:disabled){background:#f7f8f8;box-shadow:0 1px 3px #3c404333}.btn-google:disabled{opacity:.6;cursor:not-allowed}.btn-google .g-logo{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:conic-gradient(#ea4335,#ea4335 90deg,#fbbc05 90deg,#fbbc05 180deg,#34a853 180deg,#34a853 270deg,#4285f4 270deg,#4285f4 360deg);color:#fff;font-weight:700;font-size:.8rem}.login-nota{margin-top:.6rem;font-size:.8rem;color:var(--text-faint);text-align:center}.dash-page .dash-header{margin-bottom:var(--space-6)}.dash-header__acciones{display:flex;gap:var(--space-2);flex-wrap:wrap}.dash-btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md, 6px);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;font-size:var(--fs-md);font-weight:500}.dash-btn:hover:not(:disabled){background:var(--surface-hover)}.dash-btn:disabled{opacity:.6;cursor:not-allowed}.dash-btn--nota{background:var(--warning-soft);border-color:var(--warning);color:var(--warning)}.dash-btn--transicion{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.dash-btn--primario{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.dash-btn--primario:hover:not(:disabled){background:var(--primary-hover)}.dash-btn--secundario{background:var(--surface)}.dash-help{background:none;border:none;cursor:pointer;color:inherit;opacity:.6;margin-left:var(--space-2);padding:var(--space-1);transition:opacity .2s}.dash-help:hover{opacity:1}.dash-ayuda-texto{line-height:1.6;color:var(--text-muted);margin:0}.dash-ayuda-inline{padding:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:var(--space-3);font-size:var(--fs-base);color:var(--text-muted)}.dash-alertas{margin-bottom:var(--space-6);padding:var(--space-4);background:var(--warning-soft);border:1px solid var(--warning);border-radius:10px}.dash-alertas__cabecera{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);gap:var(--space-2)}.dash-alertas__titulo{margin:0;color:var(--warning)}.dash-alertas__toggle{background:none;border:1px solid var(--warning);color:var(--warning);border-radius:6px;padding:var(--space-1) var(--space-2);cursor:pointer;font-size:var(--fs-sm);font-weight:500}.dash-alertas__resumen{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center}.dash-alertas__chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--surface);border:1px solid var(--warning);border-radius:8px}.dash-alertas__chip-texto{font-weight:700;color:var(--warning)}.dash-alertas__lista{display:flex;flex-direction:column;gap:var(--space-3)}.dash-alerta{padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:8px}.dash-alerta--critical{border-color:var(--danger);background:var(--danger-soft)}.dash-alerta--warning{border-color:var(--warning);background:var(--warning-soft)}.dash-alerta--info{border-color:var(--primary);background:var(--info-soft)}.dash-alerta__fila{display:flex;justify-content:space-between;align-items:flex-start}.dash-alerta__cuerpo{flex:1}.dash-alerta__titulo{font-weight:700;margin-bottom:var(--space-1);font-size:var(--fs-md)}.dash-alerta__mensaje{color:var(--text-muted);font-size:var(--fs-md);margin-bottom:var(--space-2)}.dash-alerta__accion{font-size:var(--fs-base);color:var(--text-muted);font-style:italic}.dash-alerta__tipo{padding:var(--space-1) var(--space-2);background:var(--primary);color:var(--on-primary);border-radius:4px;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;margin-left:var(--space-4)}.dash-alerta--critical .dash-alerta__tipo{background:var(--danger)}.dash-alerta--warning .dash-alerta__tipo{background:var(--warning)}.dash-grid{display:grid;gap:var(--space-4);margin-bottom:var(--space-6)}.dash-grid--hero{grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr))}.dash-grid--dos{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}.dash-grid--proyecciones{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid--graficos{grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr));margin-bottom:0}@media (max-width: 720px){.dash-grid--proyecciones{grid-template-columns:minmax(0,1fr)}}.dash-hero{padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--primary);border-radius:10px;color:var(--text)}.dash-hero--pos{border-top-color:var(--success)}.dash-hero--neg{border-top-color:var(--danger)}.dash-hero--pos .dash-hero__valor{color:var(--success)}.dash-hero--neg .dash-hero__valor{color:var(--danger)}.dash-hero__label{font-size:var(--fs-md);color:var(--text-muted);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center}.dash-hero__valor{font-size:2.5rem;font-weight:700;margin:var(--space-1) 0 var(--space-3)}.dash-hero__cargando{font-size:1.5rem;color:var(--text-muted)}.dash-hero__detalle{font-size:var(--fs-base);padding:var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-muted)}.dash-hero__detalle--sep{margin-bottom:var(--space-3)}.dash-hero__detalle-titulo{margin-bottom:var(--space-1)}.dash-hero__diferencia{font-size:var(--fs-lg);font-weight:700;color:var(--text)}.dash-hero__aviso{font-size:var(--fs-sm);padding:var(--space-2);background:var(--warning-soft);color:var(--warning);border-radius:6px;border-left:3px solid var(--warning)}.dash-card{padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--primary);border-radius:10px}.dash-card--bloque{margin-bottom:var(--space-6)}.dash-card--ingresos{border-top-color:var(--success)}.dash-card--pagos{border-top-color:var(--danger)}.dash-card--pendientes{border-top-color:var(--warning)}.dash-card--proy-calculada{border-top-color:var(--primary)}.dash-card--proy-caja{border-top-color:var(--success)}.dash-card--proy-simulada{border-top-color:var(--warning)}.dash-card--sim-caja{border-top-color:var(--filete-violeta)}.dash-card--consumos{border-top-color:var(--filete-dorado)}.dash-card--punteada{border-style:dashed;border-top-style:dashed}.dash-card__cabecera{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);gap:var(--space-2)}.dash-card__titulo{margin:0 0 var(--space-3);color:var(--text);font-size:var(--fs-md);display:flex;align-items:center}.dash-card__titulo--flush{margin:0}.dash-card__valor{font-size:2.2rem;font-weight:700;color:var(--text)}.dash-card__valor--pos{color:var(--success)}.dash-card__valor--neg{color:var(--danger)}.dash-card__valor--warn{color:var(--warning)}.dash-card__valor--sep{margin-bottom:var(--space-3)}.dash-badge{padding:var(--space-1) var(--space-3);border-radius:12px;font-size:var(--fs-xs);font-weight:700}.dash-badge--ok{background:var(--success-soft);color:var(--success)}.dash-detalle{padding:var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:var(--fs-base)}.dash-detalle--sep{margin-bottom:var(--space-4)}.dash-detalle__fila{display:flex;justify-content:space-between;margin-bottom:.4rem;color:var(--text-muted)}.dash-detalle__fila--ultima{margin-bottom:0}.dash-detalle__total{display:flex;justify-content:space-between;margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border);color:var(--text);font-weight:700}.dash-pend{margin-bottom:var(--space-3)}.dash-pend__monedas{display:flex;gap:var(--space-6);align-items:baseline;flex-wrap:wrap}.dash-pend__moneda{font-size:var(--fs-sm);color:var(--warning);font-weight:500;margin-bottom:var(--space-1)}.dash-pend__moneda--usd{color:var(--success)}.dash-pend__moneda--clp{color:var(--primary)}.dash-pend__secundario{font-size:1.5rem;font-weight:600}.dash-pend__secundario--usd{color:var(--success)}.dash-pend__secundario--clp{color:var(--primary)}.dash-pend__deuda{font-size:var(--fs-md);font-weight:600;color:var(--violeta-600);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.dash-lista{padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:var(--fs-md)}.dash-lista--vacia{color:var(--text-muted);text-align:center;font-style:italic}.dash-lista__fila{display:flex;justify-content:space-between;padding:var(--space-2) 0;color:var(--text)}.dash-lista__fila--sep{border-bottom:1px solid var(--border)}.dash-lista__montos{text-align:right}.dash-lista__monto{display:block}.dash-lista__monto--usd{color:var(--success);font-size:var(--fs-base)}.dash-lista__monto--clp{color:var(--primary);font-size:var(--fs-base)}.dash-proy-valor{font-size:2.2rem;font-weight:700;margin:var(--space-2) 0;padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;text-align:center}.dash-proy-valor--pos{color:var(--success);background:var(--success-soft);border-color:var(--success)}.dash-proy-valor--neg{color:var(--danger);background:var(--danger-soft);border-color:var(--danger)}.dash-formula{padding:var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:var(--fs-sm);color:var(--text-muted)}.dash-formula__linea{margin-bottom:var(--space-2)}.dash-formula__impacto{font-weight:700}.dash-formula__impacto--pos{color:var(--success)}.dash-formula__impacto--neg{color:var(--danger)}.dash-selector{margin-bottom:var(--space-3)}.dash-select{width:100%;padding:var(--space-2);border-radius:6px;border:1px solid var(--border-strong);font-size:var(--fs-md);background:var(--surface);color:var(--text)}.dash-vacio{padding:var(--space-8);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;text-align:center;color:var(--text-muted);font-size:var(--fs-md)}.dash-vacio__icono{margin-bottom:var(--space-2)}.dash-vacio__link{color:var(--primary);font-weight:700}.dash-nota{padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--filete-dorado);border-radius:8px;font-size:var(--fs-md);color:var(--text-muted)}.dash-graficos{margin-top:var(--space-6)}.dash-graficos__titulo{margin-bottom:var(--space-4)}.dash-panel{padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:10px}.dash-panel--sep{margin-bottom:var(--space-4)}.dash-panel__titulo{margin-top:0;margin-bottom:var(--space-4);color:var(--text)}.dash-notas__texto{width:100%;min-height:300px;padding:var(--space-4);border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text);font-size:var(--fs-md);line-height:1.6;resize:vertical;font-family:inherit;box-sizing:border-box}.dash-notas__acciones{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-4)}.dash-notas__ok{color:var(--success);align-self:center;font-weight:500}.concepto-wrap{position:relative;display:inline}.concepto{display:inline;padding:0;border:none;background:none;font:inherit;color:inherit;cursor:help;border-bottom:1px dotted #2a78d6;text-align:left}.concepto:hover,.concepto[aria-expanded=true]{border-bottom-style:solid;color:#184f95}.concepto:focus-visible{outline:2px solid #2a78d6;outline-offset:2px;border-radius:2px}.concepto-marca{display:inline-block;margin-left:.2em;width:.95em;height:.95em;line-height:.95em;border-radius:50%;background:#2a78d6;color:#fff;font-size:.68em;font-weight:700;text-align:center;vertical-align:super}.concepto-pop{position:fixed;z-index:60;top:0;left:0;display:block;box-sizing:border-box;width:min(22rem,calc(100vw - 1rem));max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);overflow-y:auto;white-space:normal;text-align:left;text-transform:none;letter-spacing:normal;overflow-wrap:anywhere;padding:.85rem .95rem;background:#fff;border:1px solid rgba(11,11,11,.12);border-radius:10px;box-shadow:0 10px 30px #0b0b0b29;cursor:auto}.concepto-pop-titulo{display:block;margin-bottom:.35rem;font-size:.82rem;font-weight:700;color:#0b0b0b}.concepto-pop-texto{display:block;font-size:.82rem;line-height:1.5;font-weight:400;color:#52514e}.btn-ayuda{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border:1px solid rgba(42,120,214,.35);border-radius:999px;background:#2a78d614;color:#184f95;font-size:.85rem;font-weight:600;cursor:pointer}.btn-ayuda:hover{background:#2a78d629}.btn-ayuda>span[aria-hidden]{display:inline-flex;align-items:center;justify-content:center;width:1.05rem;height:1.05rem;border-radius:50%;background:#2a78d6;color:#fff;font-size:.72rem;font-weight:700}.ayuda-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0b0b0b59;display:flex;justify-content:flex-end}.ayuda-panel{width:min(34rem,100%);height:100%;overflow-y:auto;background:#fcfcfb;box-shadow:-12px 0 40px #0b0b0b33;animation:ayuda-entra .16s ease-out}@keyframes ayuda-entra{0%{transform:translate(2rem);opacity:0}to{transform:translate(0);opacity:1}}@media (prefers-reduced-motion: reduce){.ayuda-panel{animation:none}}.ayuda-header{position:sticky;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem 1rem;background:#fcfcfb;border-bottom:1px solid #e1e0d9}.ayuda-kicker{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint)}.ayuda-header h2{margin:.15rem 0 0;font-size:1.25rem;color:#0b0b0b}.ayuda-cerrar{flex:none;width:2rem;height:2rem;border:1px solid rgba(11,11,11,.12);border-radius:50%;background:#fff;color:#52514e;font-size:1.2rem;line-height:1;cursor:pointer}.ayuda-cerrar:hover{background:#f3f2ee}.ayuda-cuerpo{padding:1.25rem 1.5rem 2.5rem}.ayuda-resumen{margin:0 0 1.5rem;padding:.9rem 1rem;background:#2a78d614;border-left:3px solid #2a78d6;border-radius:0 8px 8px 0;font-size:.92rem;line-height:1.55;color:#184f95}.ayuda-seccion{margin-bottom:1.75rem}.ayuda-seccion h3{margin:0 0 .6rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.ayuda-seccion p{margin:0 0 .75rem;font-size:.9rem;line-height:1.6;color:#52514e}.ayuda-glosario>div{padding:.7rem 0;border-top:1px solid #e1e0d9}.ayuda-glosario dt{font-size:.88rem;font-weight:700;color:#0b0b0b;margin-bottom:.2rem}.ayuda-glosario dd{margin:0;font-size:.86rem;line-height:1.55;color:#52514e}.ayuda-pie{margin:0;padding-top:1rem;border-top:1px solid #e1e0d9;font-size:.8rem;color:var(--text-faint)}.tarj-titulo{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.tarj-titulo h2{margin:0}.tarj-acciones-header{display:flex;gap:var(--space-3)}.tarj-vacio{padding:var(--space-12);text-align:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);margin:var(--space-8) 0}.tarj-vacio__texto{font-size:var(--fs-md);color:var(--text-muted);margin-bottom:var(--space-4)}.tarj-tabla{margin-top:var(--space-8)}.tarj-franja{border-left:4px solid var(--border-strong)}.tarj-franja--ok{border-left-color:var(--success)}.tarj-franja--vencida{border-left-color:var(--danger)}.tarj-franja--porvencer{border-left-color:var(--warning)}.tarj-franja--aldia{border-left-color:var(--border-strong)}.tarj-fila{display:flex;align-items:center;gap:var(--space-2)}.tarj-fila--der{justify-content:flex-end}.tarj-tenue{color:var(--text-faint)}.tarj-aviso{color:var(--warning)}.tarj-rg{color:var(--violeta-600)}.tarj-pagado{color:var(--success)}.tarj-mt{margin-top:var(--space-1)}.tarj-input-mini{width:100px;padding:2px var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--fs-base);background:var(--surface);color:var(--text)}.tarj-input-mini--tem{width:62px}.tarj-input-mini--ancho{width:120px}.tarj-icono-btn{background:none;border:none;cursor:pointer;padding:0;color:inherit}.tarj-icono-btn--tenue{color:var(--text-faint)}.tarj-icono-btn--tenue:hover{color:var(--text)}.tarj-editado{color:var(--primary);font-size:var(--fs-xs);cursor:help}.tarj-ciclo{color:var(--text-muted)}.tarj-ciclo--vencido{color:var(--danger);font-weight:700}.tarj-ciclo--proximo{color:var(--warning);font-weight:700}.tarj-sub{font-size:var(--fs-sm);font-weight:400}.tarj-sub--tenue{color:var(--text-faint)}.tarj-sub--ok{color:var(--success);margin-top:2px}.tarj-sub--pesificado{color:var(--warning);margin-top:var(--space-1);cursor:help;white-space:nowrap}.tarj-pend{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-md);font-weight:700;border:1px solid var(--border)}.tarj-pend--warn{background:var(--warning-soft);border-color:var(--warning)}.tarj-pend--ok{background:var(--success-soft);border-color:var(--success)}.tarj-pend__txt--warn{color:var(--warning)}.tarj-pend__txt--ok{color:var(--success)}.tarj-pend--usd{font-size:var(--fs-sm)}.tarj-chip{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:600;border:1px solid var(--border)}.tarj-chip--ok{background:var(--success-soft);color:var(--success);border-color:var(--success)}.tarj-chip--vencida{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}.tarj-chip--porvencer{background:var(--warning-soft);color:var(--warning);border-color:var(--warning)}.tarj-chip--aldia{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}.tarj-acciones{display:flex;gap:var(--space-2)}.tarj-accion{padding:var(--space-1) var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-weight:600;font-size:var(--fs-base)}.tarj-accion:hover:not(:disabled){background:var(--surface-hover)}.tarj-accion:disabled{opacity:.5;cursor:not-allowed}.tarj-accion--pagar{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.tarj-accion--minimo{background:var(--warning-soft);color:var(--warning);border-color:var(--warning)}.tarj-accion--usd{background:var(--success-soft);color:var(--success);border-color:var(--success)}.tarj-accion--pagar:hover:not(:disabled){background:var(--primary-soft)}.tarj-accion--minimo:hover:not(:disabled){background:var(--warning-soft)}.tarj-accion--usd:hover:not(:disabled){background:var(--success-soft)}.tarj-subtitulo{margin:var(--space-12) 0 var(--space-4);color:var(--text-muted);font-size:var(--fs-md);font-weight:500}.tarj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:var(--space-4)}.tarj-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-5);border:1px solid var(--border)}.tarj-card__titulo{margin:0;font-size:var(--fs-md);color:var(--text)}.tarj-card__disp{margin-top:var(--space-1);font-size:var(--fs-base);color:var(--text-muted);display:flex;align-items:center;gap:var(--space-2)}.tarj-drop{border:2px dashed var(--border-strong);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-8);text-align:center;background:var(--surface-2);margin-bottom:var(--space-6);cursor:pointer}.tarj-drop:hover{background:var(--surface-hover)}.tarj-drop__icono{margin-bottom:var(--space-4)}.tarj-drop__titulo{font-size:var(--fs-md);color:var(--text);margin-bottom:var(--space-2)}.tarj-drop__sub{font-size:var(--fs-base);color:var(--text-muted)}.tarj-oculto{display:none}.tarj-seccion{margin-bottom:var(--space-6)}.tarj-lista-titulo{font-size:var(--fs-base);color:var(--text-muted);margin-bottom:var(--space-3)}.tarj-lista{max-height:200px;overflow:auto;background:var(--surface-2);border-radius:var(--radius-lg);padding:var(--space-3)}.tarj-archivo{display:flex;align-items:center;padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-2);font-size:var(--fs-base)}.tarj-archivo__icono{margin-right:var(--space-2)}.tarj-archivo__nombre{flex:1;color:var(--text)}.tarj-archivo__tam{color:var(--text-muted);font-size:var(--fs-sm)}.tarj-resumen{padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-4);border:1px solid var(--border)}.tarj-resumen--ok{background:var(--success-soft);border-color:var(--success)}.tarj-resumen--warn{background:var(--warning-soft);border-color:var(--warning)}.tarj-resumen__titulo{margin:0 0 var(--space-2);color:var(--text)}.tarj-resumen__texto{margin:0;font-size:var(--fs-base);color:var(--text)}.tarj-resultados{max-height:300px;overflow:auto}.tarj-resultado{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.tarj-resultado--ok{background:var(--success-soft);border-color:var(--success)}.tarj-resultado--error{background:var(--danger-soft);border-color:var(--danger)}.tarj-resultado__cab{display:flex;align-items:center;margin-bottom:var(--space-1)}.tarj-resultado__icono{margin-right:var(--space-2)}.tarj-resultado__nombre{font-weight:600;color:var(--text);font-size:var(--fs-base)}.tarj-resultado__detalle{font-size:var(--fs-sm);margin-left:28px}.tarj-resultado__detalle--ok{color:var(--success)}.tarj-resultado__detalle--error{color:var(--danger)}.tarj-pie{display:flex;gap:var(--space-3);justify-content:flex-end}.tarj-pie--sep{margin-top:var(--space-6)}.tarj-edit-intro{margin:0 0 var(--space-6);font-size:var(--fs-base);color:var(--text-muted)}.tarj-campo{margin-bottom:var(--space-4)}.tarj-campo__label{display:block;font-size:var(--fs-sm);color:var(--text);margin-bottom:var(--space-1);font-weight:600}.tarj-campo__fila{display:flex;align-items:center;gap:var(--space-2)}.tarj-campo__prefijo{color:var(--text-muted);font-size:var(--fs-base);min-width:2.2rem}.tarj-campo__input{flex:1;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-md);background:var(--surface);color:var(--text)}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.clientes-tab{padding:20px}.map-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;margin-bottom:20px}.map-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.map-header h3{margin:0;font-size:16px;color:#333}.map-total{font-size:14px;color:#666;background:#f0f0f0;padding:4px 12px;border-radius:16px}.leaflet-map-wrapper{height:350px;border-radius:8px;overflow:hidden;border:1px solid #e0e0e0}.leaflet-map{height:100%;width:100%;z-index:1}.map-warning{color:#ff9800;font-size:12px}.map-geocode-notice{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff3cd;border-radius:8px;margin-top:12px;font-size:14px;color:#856404}.btn-geocode{background:#ffc107;color:#333;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:background .2s}.btn-geocode:hover{background:#e0a800}.cluster-marker{background:none;border:none}.cluster-marker-inner{background:var(--primary-active);color:#fff;font-weight:700;font-size:14px;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:3px solid white;box-shadow:0 2px 8px #0000004d}.cliente-popup .leaflet-popup-content-wrapper{border-radius:12px;padding:0}.cliente-popup .leaflet-popup-content{margin:0;min-width:200px;max-width:280px}.popup-content{padding:16px}.popup-single h4,.popup-multiple h4{margin:0 0 8px;font-size:15px;color:#333;font-weight:600}.popup-fantasia{margin:0 0 8px;font-size:13px;color:#666;font-style:italic}.popup-cuit,.popup-location,.popup-email{margin:4px 0;font-size:13px;color:#555}.popup-btn{width:100%;margin-top:12px;padding:8px 16px;background:var(--primary);color:var(--on-primary);border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:background-color .12s ease}.popup-btn:hover{background:var(--primary-hover)}.popup-list{list-style:none;padding:0;margin:8px 0 0;max-height:150px;overflow-y:auto}.popup-list li{padding:4px 0;border-bottom:1px solid #eee}.popup-list li:last-child{border-bottom:none}.popup-link{background:none;border:none;color:#4285f4;cursor:pointer;font-size:13px;padding:0;text-align:left;width:100%}.popup-link:hover{text-decoration:underline}.popup-more{color:var(--text-faint);font-style:italic;font-size:12px}.map-empty{text-align:center;padding:60px 20px;color:var(--text-faint);font-style:italic;background:#f8f9fa;border-radius:8px}.filters-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;margin-bottom:20px}.filter-group label{font-size:13px;font-weight:500;margin-bottom:6px;color:#555}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 2px #4285f41a}.checkbox-filter{justify-content:flex-end}.checkbox-filter .checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#555}.checkbox-filter input[type=checkbox]{width:16px;height:16px;cursor:pointer}.filters-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #eee}.table-info{padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #eee;font-size:14px;color:#666}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-state p{margin:8px 0}.empty-state .hint{font-size:14px;color:var(--text-faint)}.clientes-table tbody tr.inactive{opacity:.5;background-color:#fafafa}.clientes-table .subtitle{font-size:12px;color:var(--text-faint);margin-top:2px}.clientes-table .actions{white-space:nowrap}.btn-icon{background:none;border:none;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;transition:background-color .2s}.btn-icon:hover{background-color:#f0f0f0}.btn-icon.danger:hover{background-color:#ffe0e0}.modal-body,.modal-body.view-mode{padding:24px}.form-section{margin-bottom:24px}.form-section h3{margin:0 0 16px;font-size:16px;color:#555;border-bottom:1px solid #eee;padding-bottom:8px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group.full-width{grid-column:1 / -1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;margin-top:24px;border-top:1px solid #eee}.detail-section{margin-bottom:24px}.detail-section h3{margin:0 0 16px;font-size:16px;color:#555;border-bottom:1px solid #eee;padding-bottom:8px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item label{font-size:12px;color:var(--text-faint);font-weight:500}.detail-item span{font-size:14px;color:#333}.saldo-section{background-color:#f9f9f9;padding:20px;border-radius:8px}.saldo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.saldo-card{background:#fff;padding:16px;border-radius:8px;border-left:4px solid #ddd;box-shadow:0 2px 4px #0000000d}.saldo-card.pending{border-left-color:#ff9800}.saldo-card.facturas{border-left-color:#2196f3}.saldo-card.vencidas{border-left-color:#f44336}.saldo-card-clickable{cursor:pointer;transition:box-shadow .15s ease}.saldo-card-clickable:hover{box-shadow:0 4px 10px #0000001f}.saldo-label{font-size:12px;color:var(--text-faint);margin-bottom:8px}.saldo-value{font-size:24px;font-weight:700;color:#333}.loading{text-align:center;padding:40px;color:#666}.error-container button{background-color:#4285f4;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer}@media (max-width: 768px){.filters-grid{grid-template-columns:1fr}.filters-actions{flex-direction:column}.filters-actions button{width:100%}.form-grid,.detail-grid,.saldo-cards{grid-template-columns:1fr}.leaflet-map-wrapper{height:250px}.map-geocode-notice{flex-direction:column;gap:8px;text-align:center}}.facturas-tab{padding:0}.filters-section{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.filter-group{display:flex;flex-direction:column}.filter-group label{font-size:12px;font-weight:500;margin-bottom:6px;color:#555}.filter-group select,.filter-group input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.filters-actions{display:flex;justify-content:flex-end;gap:12px}.facturas-table .subtitle{font-size:11px;color:var(--text-faint);margin-top:2px}.vencimiento-badge{display:inline-block;background-color:#ff9800;color:#fff;font-size:11px;padding:2px 8px;border-radius:10px;margin-top:4px}.estado-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.badge-pending{background-color:#fff3cd;color:#856404}.badge-partial{background-color:#d1ecf1;color:#0c5460}.badge-paid{background-color:#d4edda;color:#155724}.badge-overdue{background-color:#f8d7da;color:#721c24}.badge-uncollectible{background-color:#e2e3e5;color:#383d41}.actions{display:flex;gap:8px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.items-list{display:flex;flex-direction:column;gap:12px}.item-row{background-color:#f9f9f9;padding:12px;border-radius:6px}.item-fields{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:12px;align-items:center}.item-fields input,.item-fields select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.totales-section{background-color:#f5f5f5;padding:20px;border-radius:8px}.totales-grid{display:grid;gap:12px}.total-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.total-item.total{border-top:2px solid #333;padding-top:12px;margin-top:8px;font-size:18px;font-weight:700}.total-amount{color:#4caf50;font-size:20px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.totales-detail{background-color:#f9f9f9;padding:20px;border-radius:8px}.totales-detail .totales-grid{display:flex;flex-direction:column;gap:12px}.totales-detail .totales-grid>div{display:flex;justify-content:space-between;padding:8px 0}.total-final{border-top:2px solid #333;padding-top:12px;margin-top:8px;font-size:18px;font-weight:700}.saldo-final{background-color:#fff3cd;padding:12px;border-radius:6px;margin-top:8px}.totales-detail .amount{font-size:18px;color:#4caf50}.loading,.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-state button{margin-top:20px;background-color:#4caf50;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer}.error-container{text-align:center;padding:40px}.error{color:#f44336;margin-bottom:20px}.error-container button{background-color:#4caf50;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer}.badge-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb;padding:.35rem .65rem;font-size:.85rem;font-weight:600;line-height:1;border-radius:6px;white-space:nowrap;display:inline-block}.badge-warning{background-color:#fff3cd;color:#856404;border:1px solid #ffeaa7;padding:.35rem .65rem;font-size:.85rem;font-weight:600;line-height:1;border-radius:6px;white-space:nowrap;display:inline-block}.badge-secondary{background-color:#e2e3e5;color:#383d41;border:1px solid #d6d8db;padding:.35rem .65rem;font-size:.85rem;font-weight:600;line-height:1;border-radius:6px;white-space:nowrap;display:inline-block}.highlight-so{background-color:#fff3cd;color:#856404;padding:.2rem .4rem;border-radius:4px;font-weight:600;border:1px solid #ffeaa7}.highlight-oc{background-color:#e2e3e5;color:#383d41;padding:.2rem .4rem;border-radius:4px;font-weight:600;border:1px solid #d6d8db}@media (max-width: 768px){.filters-grid,.item-fields,.info-grid{grid-template-columns:1fr}}.badge-idle{background:#f1f0ec;color:#6b6a65}.badge-info{background:#2a78d61f;color:#184f95}.badge-progress{background:#5598e72e;color:#10467f}.badge-done{background:#0ca30c1a;color:#2f6b2f}.so-celda{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.so-sin-vincular{background:transparent;color:var(--text-muted);border:1px dashed var(--border-strong)}.so-vacio{color:var(--text-faint)}.so-vincular{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:2px 4px;border-radius:var(--radius-sm);color:var(--primary);font:inherit;font-size:var(--fs-sm);cursor:pointer}.so-vincular:hover{text-decoration:underline}.so-editor{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}.so-editor input{width:76px;padding:2px 6px;font-size:var(--fs-sm)}.so-accion{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.so-accion:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.so-accion:disabled{opacity:.5;cursor:not-allowed}.cuentas-por-cobrar-tab{padding:1rem}.fiscal-year-indicator{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#e3f2fd;border-left:4px solid #2196F3;border-radius:6px;margin-bottom:1.5rem;font-size:.95rem;color:#1565c0}.fiscal-year-indicator .icon{font-size:1.25rem}.fiscal-year-indicator strong{color:#0d47a1}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:1.5rem;margin-bottom:2rem}.stat-icon{font-size:2.5rem}.stat-label{font-size:.875rem;color:#666;margin-bottom:.25rem}.stat-value{font-size:1.35rem;font-weight:700;color:#333;margin-bottom:.25rem;word-break:break-word}.stat-detail{font-size:.875rem;color:var(--text-faint)}.indicador{text-align:center;padding:1rem;background:#f9f9f9;border-radius:8px}.facturas-table tbody tr.row-vencida{background:#ffebee}.facturas-table tbody tr.row-vencida:hover{background:#ffcdd2}.text-bold{font-weight:600}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-pendiente{background:#fff3e0;color:#f57c00}.badge-parcial{background:#e3f2fd;color:#1976d2}.badge-cobrada{background:#e8f5e9;color:#388e3c}.badge-vencida{background:#ffebee;color:#c62828}.empty-state{text-align:center;padding:3rem;color:#666;font-size:1.125rem}.btn-small{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s}.loading{text-align:center;padding:3rem;font-size:1.125rem;color:#666}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}}.cxc-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1rem}.cxc-kpi{background:#fff;border:1px solid #e8e8e8;border-left:4px solid #bdc3c7;border-radius:8px;padding:.9rem 1.1rem}.cxc-kpi.principal{border-left-color:#3498db}.cxc-kpi.peligro{border-left-color:#e74c3c}.cxc-kpi.atencion{border-left-color:#f39c12}.cxc-kpi.neutro{border-left-color:#95a5a6}.cxc-kpi .kpi-label{font-size:.8rem;color:var(--text-faint);margin-bottom:.2rem}.cxc-kpi .kpi-value{font-size:1.35rem;font-weight:700;color:#2c3e50}.cxc-kpi .kpi-detail{font-size:.75rem;color:var(--text-faint);margin-top:.2rem}.cxc-sync-status{font-size:.8rem;color:var(--text-faint);background:#f8f9fa;border-radius:6px;padding:.45rem .8rem;margin-bottom:1rem}.aging-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:.6rem;margin-bottom:1rem}.aging-chip{background:#fff;border:2px solid #ecf0f1;border-radius:8px;padding:.55rem .6rem;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:.15rem;transition:border-color .15s ease,background .15s ease}.aging-chip:hover{background:#f8f9fa}.aging-chip.activo{border-color:#3498db;background:#eaf4fc}.aging-chip .chip-titulo{font-size:.8rem;font-weight:600;color:#2c3e50}.aging-chip .chip-monto{font-size:.95rem;font-weight:700;color:#2c3e50}.aging-chip .chip-cant{font-size:.72rem;color:var(--text-faint)}.chip-61-90 .chip-monto{color:#e67e22}.chip-mas90 .chip-monto{color:#e74c3c}.cxc-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.cxc-buscador{flex:1;min-width:240px;padding:.55rem .8rem;border:1px solid #dfe4ea;border-radius:6px;font-size:.9rem}.cxc-toolbar select{padding:.5rem;border:1px solid #dfe4ea;border-radius:6px}.cxc-check{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:#555;cursor:pointer;white-space:nowrap}.btn-limpiar{background:none;border:none;color:#e74c3c;cursor:pointer;font-size:.85rem}.dias-badge{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.75rem;font-weight:600;white-space:nowrap}.dias-badge.futura{background:#eaf4fc;color:#2980b9}.dias-badge.baja{background:#e8f8f0;color:#27ae60}.dias-badge.media{background:#fef5e7;color:#d68910}.dias-badge.alta{background:#fdebd0;color:#ca6f1e}.dias-badge.critica{background:#fdecea;color:#c0392b}.cliente-grupo{border:1px solid #ecf0f1;border-radius:8px;margin-bottom:.5rem;background:#fff}.cliente-fila{display:flex;align-items:center;gap:.75rem;padding:.65rem .9rem;cursor:pointer}.cliente-fila:hover{background:#f8f9fa}.cliente-toggle{color:var(--text-faint);width:1em}.cliente-nombre{font-weight:600;color:#2c3e50;flex:1}.cliente-cant{font-size:.78rem;color:var(--text-faint)}.cliente-saldo{font-weight:700;color:#2c3e50;margin-left:auto}.facturas-anidadas{margin:0;border-top:1px solid #f1f2f6}.facturas-anidadas td:first-child{width:2rem}.fila-factura{cursor:pointer}.fila-factura:hover td{background:#f0f6fb}.cxc-total-pie{padding:.7rem .9rem;background:#f8f9fa;border-radius:6px;margin-top:.5rem;color:#2c3e50}.aging-strip{grid-template-columns:repeat(6,1fr)}.chip-deudores{border-style:dashed}.chip-deudores .chip-monto{color:var(--text-faint)}.chip-deudores.activo{border-color:#8e44ad;background:#f5eef8}.cxc-aviso-deudores{background:#f5eef8;border:1px solid #d7bde2;color:#6c3483;border-radius:6px;padding:.6rem .9rem;margin-bottom:1rem;font-size:.85rem}.btn-deudor{background:none;border:1px solid #dfe4ea;border-radius:5px;padding:.15rem .5rem;cursor:pointer;font-size:.78rem;color:#555;white-space:nowrap}.btn-deudor:hover{border-color:#8e44ad;color:#6c3483}.deudor-nota{display:block;font-size:.75rem;font-weight:400;color:#8e44ad}@media (max-width: 800px){.aging-strip{grid-template-columns:repeat(2,1fr)}}.select-marca{padding:.25rem .4rem;border:1px solid #dfe4ea;border-radius:5px;font-size:.78rem;color:#555;max-width:140px}.badge-marca{display:inline-block;padding:.25rem .6rem;border-radius:12px;font-size:.72rem;font-weight:600;white-space:nowrap}.marca-largo-plazo{background:#e3f2fd;color:#1565c0}.marca-pendiente-anulacion{background:#fff3e0;color:#b26a00}.marca-incobrable{background:#eceff1;color:#546e7a}.marca-nota{font-size:.78rem;color:var(--text-faint);margin-left:.4rem}.cxc-marcadas{margin-top:1rem;background:#fff;border:1px solid #ecf0f1;border-radius:8px;padding:.75rem 1rem}.cxc-marcadas summary{cursor:pointer;font-weight:600;color:#2c3e50}.cxc-marcadas-subtotales{display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0}.cxc-marcadas-subtotal{display:flex;align-items:center;gap:.4rem;background:#f8f9fa;border-radius:6px;padding:.4rem .7rem;font-size:.85rem}.cxc-marcadas-subtotal-monto{font-weight:700;color:#2c3e50}.cxc-marcadas-subtotal-cant{color:var(--text-faint);font-size:.78rem}.colppy-tab{padding:1.5rem}.colppy-header{margin-bottom:2rem}.colppy-header h2{margin:0 0 .5rem;color:#2c3e50}.colppy-header p{margin:0;color:var(--text-faint)}.message{padding:1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.message pre{margin:0;white-space:pre-wrap;font-family:inherit}.connection-status{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.connection-status.connected{background-color:#d4edda;border:1px solid #c3e6cb}.connection-status.disconnected{background-color:#f8d7da;border:1px solid #f5c6cb}.status-icon{font-size:1.5rem}.stat-box{background:var(--surface);color:var(--text);padding:var(--space-5) var(--space-6);border:1px solid var(--border);border-top:3px solid var(--primary);border-radius:var(--radius-lg);text-align:center}.stat-box .stat-icon{font-size:2rem;margin-bottom:.5rem}.stat-box .stat-label{font-size:var(--fs-base);color:var(--text-muted);margin-bottom:.5rem}.stat-box .stat-value{font-size:var(--fs-kpi);font-weight:600;margin:.5rem 0}.stat-box .stat-detail{font-size:var(--fs-sm);color:var(--text-muted)}.config-section{background:#f8f9fa;padding:2rem;border-radius:12px;margin-bottom:2rem}.config-section h3{margin:0 0 1.5rem;color:#2c3e50}.import-section{background:#fff;padding:2rem;border-radius:12px;border:2px solid #e9ecef;margin-bottom:2rem}.import-section h3{margin:0 0 1.5rem;color:#2c3e50}.sync-mode-selector{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.sync-mode-selector .checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;margin-bottom:.5rem}.sync-mode-selector input[type=checkbox]{width:20px;height:20px;cursor:pointer}.sync-mode-selector .default-badge{display:inline-block;margin-left:.5rem;padding:.25rem .5rem;background:var(--primary);color:#fff;font-size:.75rem;font-weight:600;border-radius:4px}.sync-mode-selector .hint{display:block;color:#6c757d;font-size:.9rem;margin-left:2rem}.import-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.import-btn{padding:1rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:.5rem}.import-btn:hover:not(:disabled){box-shadow:0 4px 12px #00000026}.import-btn:disabled{opacity:.6;cursor:not-allowed}.import-btn.primary{background:var(--primary);color:#fff}.import-btn.primary:hover:not(:disabled){background:var(--primary-hover)}.import-btn.secondary{background:#6c757d;color:#fff}.import-btn.secondary:hover:not(:disabled){background:#5a6268}.import-btn.success{background:#28a745;color:#fff}.import-btn.success:hover:not(:disabled){background:#218838}.importing-indicator{text-align:center;padding:2rem}.spinner{border:4px solid #f3f3f3;border-top:4px solid var(--primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.config-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid #e9ecef}.btn-danger{padding:0 var(--space-4);min-height:var(--control-md);border:1px solid transparent;border-radius:var(--radius-md);font:500 var(--fs-md)/1.2 var(--font-sans);cursor:pointer;background:var(--danger);color:var(--on-primary);transition:background-color .12s ease}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.info-panel{background:#e7f3ff;border-left:4px solid var(--primary);padding:1.5rem;border-radius:8px;margin-top:2rem}.info-panel h4{margin:0 0 1rem;color:#2c3e50}.info-panel ul{margin:0;padding-left:1.5rem}.info-panel li{margin-bottom:.5rem;color:#495057;line-height:1.6}.badge{display:inline-block;padding:.35rem .65rem;font-size:.85rem;font-weight:600;line-height:1;border-radius:6px;white-space:nowrap}.badge-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.badge-warning{background-color:#fff3cd;color:#856404;border:1px solid #ffeaa7}.badge-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.badge-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.badge-secondary{background-color:#e2e3e5;color:#383d41;border:1px solid #d6d8db}.message.warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}@media (max-width: 768px){.stats-grid,.import-actions{grid-template-columns:1fr}.config-actions{flex-direction:column}}.recordatorios-tab{padding:1.5rem}.recordatorios-header{margin-bottom:1.5rem}.recordatorios-header h2{margin:0 0 .5rem;color:#2c3e50}.recordatorios-header p{margin:0;color:var(--text-faint)}.message{padding:1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.message.warning{background-color:#fff3cd;border:1px solid #ffc107;color:#856404}.message button{background:transparent;border:none;font-size:1.2rem;cursor:pointer;padding:0;color:inherit;opacity:.6}.message button:hover{opacity:1}.scheduler-status{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.scheduler-status.running{background-color:#d4edda;border:1px solid #c3e6cb}.scheduler-status.stopped{background-color:#f8d7da;border:1px solid #f5c6cb}.scheduler-status.paused{background-color:#fff3cd;border:1px solid #ffc107}.scheduler-status .status-icon{font-size:1.2rem}.scheduler-status .status-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.scheduler-status .status-info span{font-size:.85rem;color:#666}.btn-scheduler-toggle{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;font-weight:500;transition:all .2s;white-space:nowrap}.btn-scheduler-toggle.btn-pause{background:#ffc107;color:#333}.btn-scheduler-toggle.btn-pause:hover:not(:disabled){background:#e0a800}.btn-scheduler-toggle.btn-resume{background:#28a745;color:#fff}.btn-scheduler-toggle.btn-resume:hover:not(:disabled){background:#218838}.btn-scheduler-toggle:disabled{opacity:.6;cursor:not-allowed}.section-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.section-card h3{margin:0 0 1rem;color:#2c3e50;font-size:1.1rem}.field-hint{display:block;margin-top:.25rem;font-size:.8rem;color:var(--text-faint);font-style:italic}.form-row{margin-bottom:1rem}.form-row.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto;margin:0}.checkbox-label h3{margin:0}.button-row{margin-top:1rem}.button-row.main-actions{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.btn-link{background:none;border:none;color:#3498db;cursor:pointer;padding:0;font-size:.9rem;text-decoration:underline}.btn-link:hover{color:#2980b9}.btn-test{background:#f39c12;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;font-size:.85rem;cursor:pointer;transition:background .2s}.btn-test:hover:not(:disabled){background:#e67e22}.btn-test:disabled{opacity:.6;cursor:not-allowed}.template-card{border-left:4px solid #3498db}.template-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.variables-help{margin-bottom:1.5rem}.variables-list{background:#f8f9fa;padding:1rem;border-radius:6px;font-size:.85rem;margin-top:.5rem;white-space:pre-wrap;color:#666}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.preview-actions{display:flex;gap:.5rem}.preview-explanation{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;padding:1rem;margin-bottom:1.5rem;font-size:.9rem}.preview-explanation p{margin:0 0 .5rem;color:#555}.preview-explanation p:last-child{margin-bottom:0;color:var(--text-faint);font-style:italic}.preview-explanation ul{margin:.5rem 0;padding-left:1.5rem}.preview-explanation li{margin-bottom:.25rem;color:#666}.preview-summary{color:#666;margin-bottom:1rem}.preview-list{display:flex;flex-direction:column;gap:1rem}.preview-item{border:1px solid #e0e0e0;border-radius:6px;overflow:hidden}.preview-item-header{background:#f8f9fa;padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e0e0e0}.preview-item-header .factura{font-weight:500;color:#2c3e50}.preview-item-content{padding:1rem}.preview-item-content p{margin:0 0 .5rem;font-size:.9rem}.preview-item-content p:last-child{margin-bottom:0}.tipo-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.tipo-badge.previo{background:#e3f2fd;color:#1565c0}.tipo-badge.dia_vencimiento{background:#fff3e0;color:#ef6c00}.tipo-badge.primer{background:#fce4ec;color:#c2185b}.tipo-badge.posterior{background:#f3e5f5;color:#7b1fa2}.tipo-badge.pago_recibido{background:#e8f5e9;color:#2e7d32}.template-description{background:#f0f7ff;border:1px solid #b3d7ff;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.9rem;color:#06c}.historial-table tr.error{background:#fff5f5}.status-success{color:#27ae60;font-weight:500}.status-error{color:#e74c3c;font-weight:500;cursor:help}.no-data{text-align:center;color:var(--text-faint);padding:2rem}@media (max-width: 768px){.form-row.two-cols{grid-template-columns:1fr}.preview-header{flex-direction:column;gap:1rem;align-items:stretch}.preview-actions{justify-content:flex-end}}.reco-punto-pausa{width:8px;height:8px;border-radius:50%;background:#ffc107;box-shadow:0 0 0 2px #ffc10759}.reco-tag-pronto{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .4rem;border-radius:4px;background:#f1f1f1;color:var(--text-faint)}.oq-tab[aria-selected=true] .reco-tag-pronto{background:var(--surface-hover);color:var(--text-muted)}.reco-intro{max-width:70ch;margin:0 0 .9rem;color:#555;font-size:.92rem;line-height:1.55}.reco-pausa-alerta{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;margin-bottom:1.5rem;border:2px solid #ffc107;border-left-width:8px;border-radius:8px;background:#fff8e1}.reco-pausa-icono{font-size:1.8rem;line-height:1.2}.reco-pausa-texto{flex:1}.reco-pausa-texto strong{display:block;font-size:1.15rem;color:#7a5b00;margin-bottom:.4rem}.reco-pausa-texto p{margin:0;max-width:70ch;color:#6b5200;font-size:.9rem;line-height:1.55}.reco-pausa-aviso{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.7rem 1rem;margin-bottom:1.25rem;border:1px solid #ffc107;border-left:6px solid #ffc107;border-radius:6px;background:#fff8e1;color:#856404;font-size:.9rem}.button-row.reco-acciones{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.reco-dato-envio{display:flex;align-items:baseline;gap:.6rem;padding:.75rem 1rem;margin:1rem 0;border-radius:6px;background:#f8f9fa;font-size:.9rem}.reco-dato-etiqueta{color:var(--text-faint)}.so-grupos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:1rem;margin-bottom:1.5rem}.so-grupo{border:1px solid #e0e0e0;border-top:4px solid #bdc3c7;border-radius:8px;padding:1rem;background:#fff}.so-grupo-estancada{border-top-color:#e67e22;background:#fff8f0}.so-grupo-contradictorio{border-top-color:#e74c3c}.so-grupo-terminado{border-top-color:#f39c12}.so-grupo-en_curso{border-top-color:#3498db}.so-fila-estancada{background:#fff3e0}.so-grupo-cabecera{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.so-grupo-titulo{font-weight:600;color:#2c3e50}.so-grupo-cantidad{font-size:1.5rem;font-weight:700;color:#2c3e50;line-height:1}.so-grupo-monto{margin-top:.15rem;font-size:.95rem;color:#555}.so-grupo-explicacion{margin:.6rem 0 .75rem;font-size:.82rem;color:var(--text-faint);line-height:1.5}.so-detalle{margin-top:.5rem;overflow-x:auto}.so-detalle h4{margin:0 0 .75rem;color:#2c3e50;font-size:1rem}.so-tabla{font-size:.85rem}.so-tabla .so-col-monto{text-align:right;white-space:nowrap}.so-tabla .so-col-asunto{max-width:22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reco-proximamente{border:1px dashed #d5d5d5;border-radius:8px;background:#fbfbfb;padding:3rem 2rem;text-align:center}.reco-proximamente-icono{display:block;font-size:2.2rem;margin-bottom:.75rem;opacity:.7}.reco-proximamente h3{margin:0 0 .9rem;color:#2c3e50;font-size:1.1rem}.reco-proximamente p{max-width:62ch;margin:0 auto .75rem;color:var(--text-faint);font-size:.92rem;line-height:1.6}.reco-proximamente p:last-child{margin-bottom:0}@media (max-width: 768px){.reco-pausa-alerta{flex-direction:column}.so-grupos{grid-template-columns:1fr}}.facturacion-page{padding:0;margin:0 auto}.facturacion-content{background:#fff;border-radius:8px;padding:var(--space-5);box-shadow:0 2px 4px #0000001a;min-height:400px}.stat-card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:1rem;transition:box-shadow .15s ease}.stat-card:hover{box-shadow:0 4px 8px #00000026}.stat-icon{font-size:2.5rem;opacity:.8}.stat-label{font-size:.85rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.stat-value{font-size:1.8rem;font-weight:700;color:#2c3e50;margin-bottom:.25rem}@media (max-width: 768px){.facturacion-page{padding:0}.facturacion-content{padding:1.5rem}}.pagos-tab{--pg-surface-1: #fcfcfb;--pg-surface-2: #f3f2ee;--pg-ink: #0b0b0b;--pg-ink-2: #52514e;--pg-ink-muted: #6b6a65;--pg-grid: #e1e0d9;--pg-border: rgba(11, 11, 11, .1);--pg-blue: #2468bd;--pg-blue-dark: #184f95;--pg-blue-mid: #5598e7;--pg-blue-light: #86b6ef;--pg-blue-wash: rgba(42, 120, 214, .1);--pg-good: #0ca30c;--pg-warning: #fab219;--pg-warning-ink: #a15a00;--pg-critical: #b83232;--pg-critical-wash: rgba(208, 59, 59, .12);--pg-success-ink: #006300;color:var(--pg-ink)}.pagos-tab .section-title{font-size:1rem;font-weight:700;margin:0 0 .25rem}.pagos-tab .section-title.spaced{margin-top:1.9rem}.pagos-tab .section-note{font-size:.8rem;color:var(--pg-ink-muted);margin:0 0 1rem;max-width:780px;line-height:1.5}.pagos-tab .tab-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.pagos-tab .tab-toolbar .vistas-compromisos{margin-bottom:0}.pagos-tab .tab-toolbar .toolbar-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.85rem;color:var(--pg-ink-2)}.pagos-tab .tab-loading,.pagos-tab .tab-empty{padding:2rem 0;color:var(--pg-ink-muted);font-size:.9rem}.pagos-tab .empty-state{background:var(--pg-surface-1);border:1px dashed var(--pg-ink-muted);border-radius:12px;padding:1.75rem 1.9rem;margin-bottom:1.5rem}.pagos-tab .empty-state h3{margin:0 0 .5rem;font-size:1rem}.pagos-tab .empty-state p{margin:0 0 .75rem;font-size:.88rem;color:var(--pg-ink-2);line-height:1.6;max-width:760px}.pagos-tab .empty-state ul{margin:0 0 .5rem;padding-left:1.2rem;font-size:.88rem;color:var(--pg-ink-2);line-height:1.7}.pagos-tab .empty-state code{background:var(--pg-surface-2);border-radius:4px;padding:1px 5px;font-size:.8rem}.pagos-tab .kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;margin-bottom:1.6rem}.pagos-tab .kpi-tile{background:var(--pg-surface-1);border:1px solid var(--pg-border);border-radius:10px;padding:1rem 1.15rem}.pagos-tab .kpi-tile.risk{border-color:#d03b3b59;background:var(--danger-soft)}.pagos-tab .kpi-tile .label{font-size:.75rem;color:var(--pg-ink-2);font-weight:600;margin-bottom:.5rem}.pagos-tab .kpi-tile .value{font-size:1.55rem;font-weight:700;line-height:1.15;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.pagos-tab .kpi-tile .value.critical{color:var(--pg-critical)}.pagos-tab .kpi-tile .value.warning{color:var(--pg-warning-ink)}.pagos-tab .kpi-tile .value.good{color:var(--pg-success-ink)}.pagos-tab .kpi-tile .foot{font-size:.72rem;color:var(--pg-ink-muted);margin-top:.4rem;line-height:1.45}.pagos-tab .card{background:var(--pg-surface-1);border:1px solid var(--pg-border);border-radius:12px;padding:1.25rem 1.4rem 1rem;margin-bottom:1.6rem}.pagos-tab .card.flush{padding:0;overflow-x:auto}.pagos-tab .card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.pagos-tab .card-head h3{font-size:.95rem;margin:0 0 .15rem;font-weight:700}.pagos-tab .card-head .desc{font-size:.78rem;color:var(--pg-ink-muted);max-width:640px;line-height:1.5}.pagos-tab .btn-ghost{font-family:inherit;font-size:.75rem;font-weight:600;color:var(--pg-ink-2);background:var(--pg-surface-2);border:1px solid var(--pg-border);border-radius:7px;padding:.4rem .75rem;cursor:pointer;white-space:nowrap}.pagos-tab .btn-ghost:hover:not(:disabled){background:var(--pg-grid)}.pagos-tab .btn-ghost:disabled{opacity:.5;cursor:not-allowed}.pagos-tab .btn-ghost.active{background:var(--pg-blue);color:#fff;border-color:var(--pg-blue)}.pagos-tab .btn-accion{font-family:inherit;font-size:.82rem;font-weight:600;color:#fff;background:var(--pg-blue);border:1px solid var(--pg-blue);border-radius:8px;padding:.5rem .95rem;cursor:pointer;white-space:nowrap}.pagos-tab .btn-accion:hover:not(:disabled){background:var(--pg-blue-dark)}.pagos-tab .btn-accion:disabled{opacity:.55;cursor:not-allowed}.pagos-tab .btn-icono{background:none;border:none;cursor:pointer;font-size:.95rem;padding:.15rem .3rem;border-radius:5px}.pagos-tab .btn-icono:hover{background:var(--pg-surface-2)}.pagos-tab table.oq-table tr.drag-over td{background:var(--pg-blue-wash);border-top:2px dashed var(--pg-blue)}.pagos-tab .week-list{display:flex;flex-direction:column;gap:.6rem}.pagos-tab .week-row{background:var(--pg-surface-1);border:1px solid var(--pg-border);border-radius:10px;overflow:hidden}.pagos-tab .week-row.status-rojo{border-left:4px solid var(--pg-critical)}.pagos-tab .week-row.status-amarillo{border-left:4px solid var(--pg-warning)}.pagos-tab .week-row.status-verde{border-left:4px solid var(--pg-good)}.pagos-tab .week-summary{display:grid;grid-template-columns:150px 170px 1fr 1fr 26px;align-items:center;gap:.9rem;padding:.9rem 1.1rem;cursor:pointer;width:100%;background:none;border:none;font-family:inherit;text-align:left}.pagos-tab .week-summary:hover{background:var(--pg-surface-2)}.pagos-tab .week-summary:focus-visible{outline:2px solid var(--pg-blue);outline-offset:-2px}.pagos-tab .week-summary .w-range{font-size:.83rem;font-weight:700}.pagos-tab .week-summary .w-range .sub{display:block;font-size:.7rem;font-weight:500;color:var(--pg-ink-muted);margin-top:.15rem}.pagos-tab .status-pill{display:inline-flex;align-items:center;gap:.4rem;font-size:.79rem;font-weight:600}.pagos-tab .status-pill .dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.pagos-tab .status-rojo .status-pill{color:var(--pg-critical)}.pagos-tab .status-rojo .status-pill .dot{background:var(--pg-critical)}.pagos-tab .status-amarillo .status-pill{color:var(--pg-warning-ink)}.pagos-tab .status-amarillo .status-pill .dot{background:var(--pg-warning)}.pagos-tab .status-verde .status-pill{color:var(--pg-success-ink)}.pagos-tab .status-verde .status-pill .dot{background:var(--pg-good)}.pagos-tab .w-metric{font-size:.79rem;color:var(--pg-ink-2)}.pagos-tab .w-metric .lbl{display:block;font-size:.66rem;color:var(--pg-ink-muted);text-transform:uppercase;letter-spacing:.02em;margin-bottom:.15rem}.pagos-tab .w-metric .num{font-weight:700;color:var(--pg-ink);font-variant-numeric:tabular-nums;font-size:.85rem}.pagos-tab .chevron{color:var(--pg-ink-muted);justify-self:end;transition:transform .15s ease}.pagos-tab .week-row.open .chevron{transform:rotate(180deg)}.pagos-tab .week-detail{padding:0 1.1rem 1.1rem;border-top:1px solid var(--pg-grid)}.pagos-tab .detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;padding-top:1rem}.pagos-tab .detail-col h4{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--pg-ink-muted);margin:0 0 .6rem;font-weight:700}.pagos-tab .item-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem;padding:.55rem 0;border-bottom:1px solid var(--pg-grid);font-size:.82rem}.pagos-tab .item-row:last-child{border-bottom:none}.pagos-tab .item-name{font-weight:600}.pagos-tab .item-sub{font-size:.72rem;color:var(--pg-ink-muted);margin-top:.15rem}.pagos-tab .item-amt{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.pagos-tab .item-amt .range{display:block;font-size:.7rem;font-weight:500;color:var(--pg-ink-muted)}.pagos-tab .week-empty{font-size:.79rem;color:var(--pg-ink-muted);font-style:italic;padding:.4rem 0}.pagos-tab .crit-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:.35rem;flex-shrink:0;position:relative;top:1px}.pagos-tab .crit-critica{background:var(--pg-blue-dark)}.pagos-tab .crit-alta{background:var(--pg-blue)}.pagos-tab .crit-media{background:var(--pg-blue-mid)}.pagos-tab .crit-flexible{background:var(--pg-blue-light)}.pagos-tab .flag-riesgo{display:inline-block;font-size:.65rem;font-weight:700;color:var(--pg-critical);background:#d03b3b1a;border:1px solid rgba(208,59,59,.3);border-radius:5px;padding:1px 6px;margin-left:.4rem;vertical-align:middle}.pagos-tab .reco-list{display:flex;flex-direction:column;gap:.6rem}.pagos-tab .reco-item{display:flex;gap:.75rem;background:var(--pg-surface-1);border:1px solid var(--pg-border);border-radius:10px;padding:.9rem 1rem;font-size:.85rem;line-height:1.55}.pagos-tab .reco-icon{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--pg-surface-2);border:1px solid var(--pg-border);display:flex;align-items:center;justify-content:center;font-size:.8rem}.pagos-tab .reco-item.reco-riesgo .reco-icon,.pagos-tab .reco-item.reco-critico .reco-icon{background:#d03b3b1a;border-color:#d03b3b59}.pagos-tab .reco-item .reco-titulo{font-weight:700}.pagos-tab .reco-item .reco-detalle{color:var(--pg-ink-2);margin-top:.15rem}.pagos-tab .evid-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;padding:.25rem .55rem;border-radius:7px;white-space:nowrap}.pagos-tab .evid-strong{background:var(--pg-surface-2);border:1px solid var(--pg-border);color:var(--pg-ink-2)}.pagos-tab .evid-weak{background:#fab2191f;border:1px solid rgba(250,178,25,.5);color:#8a5a00}.pagos-tab .evid-manual{background:var(--pg-surface-2);border:1px dashed #c3c2b7;color:var(--pg-ink-2)}.pagos-tab .evid-default{background:var(--pg-surface-2);border:1px dashed var(--pg-ink-muted);color:var(--pg-ink-muted);font-style:italic}.pagos-tab .evid-note{display:block;font-size:.68rem;color:var(--pg-ink-muted);margin-top:.25rem;font-weight:400}.pagos-tab .rango-leyenda{display:flex;flex-wrap:wrap;gap:1rem;font-size:.72rem;color:var(--pg-ink-2);padding:.6rem .75rem 0}.pagos-tab .rango-leyenda .item{display:flex;align-items:center;gap:.35rem}.pagos-tab .promise-card{background:var(--pg-surface-1);border:1px solid var(--pg-border);border-radius:10px;padding:.9rem 1.1rem;margin-bottom:.6rem;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr auto;gap:1rem;align-items:start}.pagos-tab .promise-card .p-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.03em;color:var(--pg-ink-muted);font-weight:700;margin-bottom:.2rem}.pagos-tab .promise-card .p-cli{font-weight:700;font-size:.85rem}.pagos-tab .promise-card .p-amt{font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums}.pagos-tab .promise-card .p-hist{font-size:.74rem;color:var(--pg-ink-muted);margin-top:.25rem;line-height:1.5}.pagos-tab .promise-card .p-acciones{display:flex;flex-direction:column;gap:.35rem}.pagos-tab .conf-bar-track{width:100%;height:8px;border-radius:4px;background:var(--pg-surface-2);border:1px solid var(--pg-border);margin-top:.35rem;overflow:hidden}.pagos-tab .conf-bar-fill{height:100%;border-radius:4px;background:var(--pg-blue)}.pagos-tab .conf-low .conf-bar-fill{background:var(--pg-critical)}.pagos-tab .conf-mid .conf-bar-fill{background:var(--pg-warning)}.pagos-tab .conf-high .conf-bar-fill{background:var(--pg-good)}.pagos-tab .broken-chain{font-size:.7rem;color:var(--pg-critical);font-weight:700;margin-top:.25rem}.pagos-tab .estado-badge{display:inline-block;font-size:.68rem;font-weight:700;border-radius:5px;padding:2px 7px;border:1px solid var(--pg-border);background:var(--pg-surface-2);color:var(--pg-ink-2)}.pagos-tab .estado-cumplida{border-color:#0ca30c66;color:var(--pg-success-ink)}.pagos-tab .estado-incumplida{border-color:#d03b3b66;color:var(--pg-critical)}.pagos-tab .estado-renegociada{border-color:#fab21980;color:var(--pg-warning-ink)}.pagos-tab .override-card{background:var(--pg-surface-1);border:1px solid var(--pg-border);border-left:4px solid var(--pg-blue-dark);border-radius:10px;padding:.9rem 1.1rem;margin-bottom:.6rem;display:grid;grid-template-columns:1.3fr .9fr 1fr 1.6fr auto;gap:1rem;align-items:start}.pagos-tab .override-card .p-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.03em;color:var(--pg-ink-muted);font-weight:700;margin-bottom:.2rem}.pagos-tab .override-card .p-cli{font-weight:700;font-size:.85rem}.pagos-tab .override-card .p-amt{font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums}.pagos-tab .override-card .p-hist{font-size:.74rem;color:var(--pg-ink-muted);margin-top:.25rem;line-height:1.5}.pagos-tab .override-card .p-motivo{font-size:.78rem;color:var(--pg-ink-2);line-height:1.55}.pagos-tab .override-card .p-acciones{display:flex;flex-direction:column;gap:.35rem}.pagos-tab .certeza-badge{display:inline-block;font-size:.66rem;font-weight:700;border-radius:5px;padding:2px 7px;border:1px solid rgba(24,79,149,.35);background:var(--pg-blue-wash);color:var(--pg-blue-dark)}.pagos-tab .certeza-aviso,.pagos-tab-modal .certeza-aviso{background:var(--pg-blue-wash, rgba(42, 120, 214, .1));border:1px solid rgba(42,120,214,.35);border-radius:10px;padding:.8rem 1rem;margin-bottom:1rem;max-width:820px}.pagos-tab .certeza-aviso .certeza-titulo,.pagos-tab-modal .certeza-aviso .certeza-titulo{display:block;font-size:.78rem;font-weight:700;color:#184f95;margin-bottom:.3rem}.pagos-tab .certeza-aviso p,.pagos-tab-modal .certeza-aviso p{margin:0;font-size:.8rem;line-height:1.6;color:#374151}.pagos-tab .checklist-grid{overflow-x:auto}.pagos-tab table.checklist{border-collapse:collapse;min-width:900px;font-size:.8rem}.pagos-tab table.checklist th{padding:.4rem;min-width:70px;font-size:.72rem;font-weight:600;border-bottom:2px solid var(--pg-grid);color:var(--pg-ink-2)}.pagos-tab table.checklist th.sticky-col,.pagos-tab table.checklist td.sticky-col{position:sticky;left:0;background:#fff;z-index:1;text-align:left;white-space:nowrap;padding:.4rem .5rem}.pagos-tab table.checklist td{padding:.3rem;text-align:center;cursor:pointer;font-weight:600;border-bottom:1px solid var(--pg-grid)}.pagos-tab .dropzone{border:2px dashed #d1d5db;border-radius:10px;padding:2.25rem 1.5rem;text-align:center;background:var(--pg-surface-2);margin-bottom:1.25rem;cursor:pointer}.pagos-tab .dropzone:hover{border-color:var(--pg-blue)}.pagos-tab .dropzone .icono{font-size:2.25rem;margin-bottom:.6rem}.pagos-tab .dropzone p{margin:.2rem 0;font-size:.9rem;color:var(--pg-ink-2)}.pagos-tab .dropzone .archivo{font-weight:700;color:var(--pg-ink)}.pagos-tab .aviso{padding:.75rem 1rem;border-radius:8px;font-size:.85rem;margin-bottom:1rem;border:1px solid var(--pg-border);background:var(--pg-surface-2);color:var(--pg-ink-2)}.pagos-tab .aviso.ok{background:#dcfce7;border-color:#86efac;color:#14532d}.pagos-tab .aviso.warn{background:#fef3c7;border-color:#fbbf24;color:#92400e}.pagos-tab .aviso.error{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.pagos-tab .lista-monoespaciada{max-height:300px;overflow:auto;background:var(--pg-surface-2);border-radius:8px;padding:.75rem;font-size:.78rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.pagos-tab .lista-monoespaciada>div{padding:.2rem 0;border-bottom:1px solid var(--pg-grid)}.pagos-tab-modal .modal-sub{margin:0 0 1.1rem;font-size:.85rem;color:#6b7280}.pagos-tab-modal .form-fila{display:flex;gap:.75rem;margin-bottom:.9rem;flex-wrap:wrap}.pagos-tab-modal .form-campo{flex:1;min-width:150px;margin-bottom:.9rem}.pagos-tab-modal .form-fila .form-campo{margin-bottom:0}.pagos-tab-modal .form-campo label{display:block;font-size:.78rem;font-weight:600;margin-bottom:.3rem}.pagos-tab-modal .form-campo input,.pagos-tab-modal .form-campo select,.pagos-tab-modal .form-campo textarea{width:100%;padding:.5rem .7rem;border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.88rem;box-sizing:border-box}.pagos-tab-modal .form-campo small{display:block;margin-top:.25rem;font-size:.72rem;color:#6b7280;line-height:1.45}.pagos-tab-modal .form-check{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-bottom:1.1rem}.pagos-tab-modal .modal-acciones{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1.2rem}.pagos-tab-modal .modal-error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b;border-radius:8px;padding:.6rem .8rem;font-size:.82rem;margin-bottom:.9rem}@media (max-width: 1180px){.pagos-tab .kpi-row{grid-template-columns:repeat(2,1fr)}.pagos-tab .detail-grid{grid-template-columns:1fr}.pagos-tab .promise-card,.pagos-tab .override-card{grid-template-columns:1fr 1fr}.pagos-tab .week-summary{grid-template-columns:1fr 1fr;row-gap:.6rem}.pagos-tab .chevron{display:none}}.dec-tab .dec-scroll{overflow-x:auto;margin-top:.5rem}.dec-grilla{width:100%;border-collapse:separate;border-spacing:0;font-size:.82rem}.dec-grilla th,.dec-grilla td{border-bottom:1px solid var(--pg-grid);padding:.35rem .5rem;text-align:right;vertical-align:middle}.dec-grilla thead th{position:sticky;top:0;z-index:2;background:var(--pg-surface-2);text-align:center;font-weight:600;line-height:1.25;min-width:7.5rem}.dec-grilla thead th.dec-parcial{background:repeating-linear-gradient(135deg,var(--pg-surface-2),var(--pg-surface-2) 6px,#eceae3 6px,#eceae3 12px)}.dec-sem-num{display:block;font-size:.82rem}.dec-sem-fechas{display:block;font-size:.72rem;color:var(--pg-ink-muted);font-weight:400}.dec-sem-nota{display:block;font-size:.66rem;color:var(--pg-ink-muted);font-style:italic}.dec-grilla th.dec-concepto{position:sticky;left:0;z-index:1;background:var(--pg-surface-1);text-align:left;font-weight:500;min-width:13rem;max-width:18rem}.dec-grilla thead th.dec-concepto{z-index:3;background:var(--pg-surface-2)}.dec-nombre{display:block}.dec-detalle{display:block;font-size:.72rem;color:var(--pg-ink-muted)}.dec-nota{display:block;font-size:.7rem;color:var(--pg-ink-muted);font-style:italic}.dec-celda{position:relative;white-space:nowrap}.dec-monto{font-variant-numeric:tabular-nums}.dec-pagado{background:#0ca30c29;color:var(--pg-success-ink);font-weight:600}.dec-parcial-celda,.dec-celda.dec-parcial{background:#fab21938;color:var(--pg-warning-ink)}.dec-movida{box-shadow:inset 3px 0 0 var(--pg-blue)}.dec-marca{font-size:.7rem;line-height:1}.dec-flechas{display:flex;gap:.15rem;justify-content:flex-end;margin-top:.15rem;opacity:0;transition:opacity .12s}.dec-celda:hover .dec-flechas,.dec-flechas:focus-within{opacity:1}.dec-flechas button{width:1.3rem;height:1.3rem;padding:0;border:1px solid var(--pg-border);border-radius:4px;background:#fff;color:var(--pg-blue-dark);font-size:.85rem;line-height:1;cursor:pointer}.dec-flechas button:hover:not(:disabled){background:var(--pg-blue-wash)}.dec-flechas button:disabled{opacity:.3;cursor:not-allowed}.dec-bloque th{text-align:left;background:var(--pg-surface-2);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--pg-ink-2)}.dec-plegar{display:inline-flex;align-items:center;gap:.45rem;padding:0;border:none;background:none;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.dec-cantidad{padding:.05rem .4rem;border-radius:999px;background:var(--pg-blue-wash);color:var(--pg-blue-dark);font-size:.7rem;letter-spacing:0}.dec-total th,.dec-total td{background:var(--pg-surface-1);font-weight:700;border-top:1px solid var(--pg-ink-muted)}.dec-total th{text-align:left}.dec-saldo td.negativo{color:var(--pg-critical)}.dec-saldo td.positivo{color:var(--pg-success-ink)}.dec-vacia{background:transparent}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.dec-resumen{border-bottom:2px solid var(--pg-ink-muted)}.dec-resumen .dec-total th,.dec-resumen .dec-total td{background:var(--pg-surface-2)}.dec-resumen tr:first-child th,.dec-resumen tr:first-child td{border-top:none}.dec-resumen .dec-saldo th,.dec-resumen .dec-saldo td{border-top:1px dashed var(--pg-grid)}.dec-flechas .dec-parcial-btn{width:auto;min-width:1.3rem;padding:0 .25rem;font-weight:700;color:var(--pg-warning-ink);border-color:#fab21980}.dec-flechas .dec-parcial-btn:hover:not(:disabled){background:#fab2192e}.dec-preview{margin:0 0 .9rem;padding:.7rem .85rem;background:var(--pg-blue-wash);border-left:3px solid var(--pg-blue);border-radius:0 8px 8px 0;font-size:.85rem;line-height:1.5;color:var(--pg-ink-2)}.dec-link-factura{display:block;padding:0;border:none;background:none;font:inherit;font-size:.72rem;color:var(--pg-blue-dark);text-align:left;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.dec-link-factura:hover{color:var(--pg-blue)}.dec-resumen .dec-sub{display:block;font-size:.68rem;font-weight:400;text-transform:none;letter-spacing:0;color:var(--pg-ink-muted)}.dec-hecho{color:var(--pg-success-ink)}.dec-hecho-cero,.dec-barra{color:var(--pg-ink-muted);font-weight:400}.pdf-uploader{display:flex;flex-direction:column;gap:30px}.upload-section{display:flex;flex-direction:column;gap:20px}.upload-section h2{color:#333;margin-bottom:10px}.file-input-wrapper{position:relative}.file-input{display:none}.file-input-label{display:inline-block;padding:15px 30px;background:var(--primary);color:var(--on-primary);border-radius:var(--radius-md);cursor:pointer;font-weight:600;transition:background-color .12s ease}.file-input-label:hover{background:var(--primary-hover);box-shadow:none}.btn{padding:12px 24px;border:none;border-radius:6px;font-weight:600;font-size:1rem;transition:all .3s;box-shadow:0 2px 8px #0000001a}.btn:hover:not(:disabled){box-shadow:0 4px 12px #00000026}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-success{background:#28a745;color:#fff}.btn-small{padding:6px 12px;font-size:.875rem}.btn-large{padding:16px 32px;font-size:1.1rem}.analysis-section{display:flex;flex-direction:column;gap:20px}.help-text{color:#6c757d;font-size:.95rem;margin-bottom:10px}.analyzed-files{display:flex;flex-direction:column;gap:20px}.analyzed-file-card{border:2px solid #e9ecef;border-radius:8px;padding:20px;background:#f8f9fa;transition:all .3s}.analyzed-file-card:hover{border-color:var(--primary);box-shadow:0 4px 12px var(--primary-soft)}.file-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.file-info{display:flex;align-items:center;gap:15px}.file-info h3{color:#333;font-size:1.1rem;margin:0}.confidence-badge{padding:4px 12px;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase}.file-details{display:flex;flex-direction:column;gap:12px}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #dee2e6}.detail-row .label{font-weight:600;color:#495057}.detail-row .value{color:#212529}.detail-row .amount{font-weight:600;color:#28a745}.detail-row .amount.highlight{font-size:1.1rem;color:#dc3545}.error-message{padding:15px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.info-message{padding:10px;background:#d1ecf1;border:1px solid #bee5eb;border-radius:6px;color:#0c5460;font-size:.9rem}.edit-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:15px;background:#fff;border-radius:6px}.confirmation-actions{margin-top:15px;padding-top:15px;border-top:2px solid #dee2e6}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600;color:#495057}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.process-actions{display:flex;justify-content:center;margin-top:20px}.results-section{display:flex;flex-direction:column;gap:20px}.results-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.summary-stat{padding:20px;border-radius:8px;text-align:center;border:1px solid var(--border)}.summary-stat.success{background:var(--success-soft);color:var(--success)}.summary-stat.error{background:var(--danger-soft);color:var(--danger)}.summary-stat.skipped{background:var(--surface-hover);color:var(--text-muted)}.stat-value{display:block;font-size:2.5rem;font-weight:700;margin-bottom:5px}.stat-label{display:block;font-size:.9rem}.results-list{display:flex;flex-direction:column;gap:15px}.result-card{padding:15px;border-radius:6px;border:2px solid}.result-card.success{background:#d4edda;border-color:#c3e6cb}.result-card.error{background:#f8d7da;border-color:#f5c6cb}.result-card.skipped{background:#e2e3e5;border-color:#d6d8db}.result-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.result-icon{font-size:1.5rem}.result-filename{font-weight:600;color:#333}.result-details{margin-left:35px;color:#495057}.result-details p{margin:5px 0}.result-message{margin-left:35px;color:#721c24;font-size:.9rem}.chat-analytics{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-6);color:var(--text)}.chat-analytics h3{margin:0 0 1rem;font-size:1.25rem;display:flex;align-items:center;gap:.5rem}.chat-input-container{display:flex;gap:.5rem;margin-bottom:1rem}.chat-input{flex:1;padding:.75rem 1rem;min-height:var(--control-md);border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-md);background:var(--surface);color:var(--text)}.chat-input::placeholder{color:var(--text-faint)}.chat-input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.chat-send-btn{min-height:var(--control-md);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);font-weight:500;cursor:pointer;transition:background-color .12s ease}.chat-send-btn:hover:not(:disabled){background:var(--primary-hover)}.chat-send-btn:disabled{opacity:.6;cursor:not-allowed}.chat-categories{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.chat-category-btn{padding:.4rem .8rem;border:1px solid var(--border-strong);border-radius:20px;background:var(--surface);color:var(--text);font-size:var(--fs-base);cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.chat-category-btn:hover{background:var(--surface-hover)}.chat-category-btn.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-active)}.chat-suggestions{display:flex;gap:.5rem;flex-wrap:wrap}.chat-suggestion{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text);font-size:var(--fs-base);cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.chat-suggestion:hover{background:var(--surface-hover);border-color:var(--border-strong)}.chat-history{margin-top:1rem;max-height:400px;overflow-y:auto}.chat-message{padding:1rem;border-radius:8px;margin-bottom:.75rem}.chat-message.user{background:var(--primary-soft);margin-left:2rem}.chat-message.assistant{background:var(--surface-2);border:1px solid var(--border);color:var(--text);margin-right:2rem}.chat-message-header{display:flex;align-items:center;gap:.5rem;font-weight:600;margin-bottom:.5rem;font-size:.85rem}.chat-message.user .chat-message-header{color:var(--text-muted)}.chat-message.assistant .chat-message-header{color:var(--primary)}.chat-message-content{line-height:1.5}.chat-message-content strong{font-weight:600}.chat-source{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-muted)}.chat-source-toggle{display:flex;align-items:center;gap:.25rem;cursor:pointer;color:var(--primary);font-weight:500}.chat-source-toggle:hover{text-decoration:underline}.chat-source-details{margin-top:.5rem;padding:.5rem;background:var(--surface-hover);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.chat-warnings{margin-top:.5rem;padding:.5rem;background:var(--warning-soft);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--warning)}.chat-loading{display:flex;align-items:center;gap:.5rem;padding:1rem;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--primary-active);margin-right:2rem}.chat-loading-dots{display:flex;gap:4px}.chat-loading-dots span{width:8px;height:8px;background:var(--primary);border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.chat-loading-dots span:nth-child(1){animation-delay:-.32s}.chat-loading-dots span:nth-child(2){animation-delay:-.16s}.chat-loading-dots span:nth-child(3){animation-delay:0}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-confidence{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;margin-left:.5rem}.chat-confidence.high{background:var(--success-soft);color:var(--success)}.chat-confidence.medium{background:var(--warning-soft);color:var(--warning)}.chat-confidence.low{background:var(--danger-soft);color:var(--danger)}@media (max-width: 768px){.chat-analytics{padding:1rem}.chat-input-container{flex-direction:column}.chat-message.user{margin-left:0}.chat-message.assistant{margin-right:0}}.tab-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:var(--text-faint)}.tab-loading .spinner{width:40px;height:40px;border:4px solid #ecf0f1;border-top-color:#3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.tab-header{margin-bottom:2rem}.tab-header h2{font-size:1.5rem;color:#2c3e50;margin-bottom:.5rem}.tab-header p{color:var(--text-faint)}.message{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-radius:4px;margin-bottom:1.5rem}.message.success{background:#d4edda;border-left:4px solid #28a745;color:#155724}.message.error{background:#f8d7da;border-left:4px solid #dc3545;color:#721c24}.message.warning{background:#fff3cd;border-left:4px solid #ffc107;color:#856404}.message .close-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;opacity:.5;padding:0 .5rem}.message .close-btn:hover{opacity:1}.connection-status{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem}.connection-status.connected{background:#e8f5e9;border:1px solid #a5d6a7}.connection-status.disconnected{background:#ffebee;border:1px solid #ef9a9a}.status-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.status-dot.connected{background:#4caf50;box-shadow:0 0 8px #4caf5080}.status-dot.disconnected{background:#f44336}.status-info{flex:1}.status-info small{color:var(--text-faint)}.config-form{max-width:500px;margin-bottom:2rem}.form-group small{display:block;margin-top:.25rem;color:var(--text-faint);font-size:.85rem}.btn-danger{padding:.75rem 1.5rem;background:#e74c3c;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s ease}.btn-danger:hover:not(:disabled){background:#c0392b}.btn-success{padding:.75rem 1.5rem;background:#27ae60;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s ease}.btn-success:hover:not(:disabled){background:#219a52}.config-actions{margin-top:2rem}.current-config{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:4px;margin-bottom:1rem}.current-config code{background:#e9ecef;padding:.25rem .5rem;border-radius:4px;font-family:monospace}.action-buttons{display:flex;gap:1rem}.info-panel{margin-top:2rem;padding:1.5rem;background:#e8f4f8;border-left:4px solid #3498db;border-radius:4px}.info-panel h4{margin-bottom:.75rem;color:#2c3e50}.info-panel ul{margin:0;padding-left:1.5rem;color:#34495e}.info-panel li{margin-bottom:.5rem}.info-panel code{background:#3498db1a;padding:.125rem .375rem;border-radius:3px;font-family:monospace;font-size:.9rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;border-left:4px solid #3498db}.stat-card.positive{border-left-color:#27ae60}.stat-card.negative{border-left-color:#e74c3c}.stat-card.warning{border-left-color:#f39c12}.stat-card .stat-label{font-size:.85rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.stat-card .stat-value{font-size:2rem;font-weight:700;color:#2c3e50}.stat-card .stat-detail{font-size:.85rem;color:var(--text-faint);margin-top:.25rem}.resource-section{margin-bottom:2rem}.resource-section h3{font-size:1.25rem;color:#2c3e50;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.resource-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:1rem}.resource-card{background:#fff;border:1px solid #ecf0f1;border-radius:8px;padding:1rem;transition:box-shadow .2s ease}.resource-card:hover{box-shadow:0 4px 8px #0000001a}.resource-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.resource-card-name{font-weight:600;color:#2c3e50;word-break:break-word}.resource-card-details{font-size:.9rem;color:var(--text-faint)}.resource-card-details p{margin:.25rem 0}.resource-card-details strong{color:#34495e}.date-filters{display:flex;gap:1rem;align-items:flex-end;margin-bottom:2rem;flex-wrap:wrap}.date-filters .form-group{margin-bottom:0}.date-filters input[type=date],.date-filters input[type=month]{width:auto}.column-filters{display:flex;gap:1rem;align-items:flex-end;margin-bottom:1rem;flex-wrap:wrap}.column-filter{display:flex;align-items:center;gap:.5rem}.column-filter label{font-size:.85rem;font-weight:500;color:var(--text-faint);white-space:nowrap}.column-filter select{padding:.4rem .5rem;border:1px solid #ddd;border-radius:4px;font-size:.85rem;max-width:240px}.sync-actions{display:flex;gap:1rem;align-items:center;margin-bottom:2rem}.sync-logs{margin-top:2rem}.sync-logs h3{margin-bottom:1rem;color:#2c3e50}.sync-log-entry{display:flex;align-items:flex-start;gap:1rem;padding:1rem;border-bottom:1px solid #ecf0f1}.sync-log-entry:last-child{border-bottom:none}.sync-log-icon{font-size:1.5rem}.sync-log-details{flex:1}.sync-log-details .timestamp{font-size:.85rem;color:var(--text-faint)}.sync-log-details .status{font-weight:500;margin:.25rem 0}.sync-log-details .status.success{color:#27ae60}.sync-log-details .status.error{color:#e74c3c}.sync-log-details .info{font-size:.9rem;color:var(--text-faint)}.empty-state{text-align:center;padding:3rem;color:var(--text-faint)}.empty-state .icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state p{margin-bottom:.5rem}.resource-type-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.5rem;background:#f8f9fa;border-radius:8px}.resource-type-tabs button{padding:.75rem 1.5rem;background:transparent;border:none;border-radius:6px;font-size:.95rem;font-weight:500;color:var(--text-faint);cursor:pointer;transition:all .2s ease}.resource-type-tabs button:hover{background:#ecf0f1;color:#2c3e50}.resource-type-tabs button.active{background:#3498db;color:#fff}.trend{font-size:.9rem;font-weight:500}.trend.up{color:#e74c3c}.trend.down{color:#27ae60}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.date-filters{flex-direction:column;align-items:stretch}.date-filters .form-group,.date-filters input[type=date]{width:100%}.resource-cards{grid-template-columns:1fr}.action-buttons{flex-direction:column}.sync-actions{flex-direction:column;align-items:stretch}}.maas-tab .muted{color:#94a3b8}.maas-tab code{font-size:.8rem;background:#94a3b826;padding:.1rem .3rem;border-radius:.25rem}.maas-tab .stat-cards{display:flex;gap:1rem;flex-wrap:wrap}.maas-tab .stat-label{font-size:.8rem;color:#64748b}.maas-tab .stat-value{font-size:1.4rem;font-weight:600}.maas-tab .stat-card.semaforo-verde{border-left:8px solid #27ae60}.maas-tab .stat-card.semaforo-amarillo{border-left:8px solid #f39c12}.maas-tab .stat-card.semaforo-rojo{border-left:8px solid #e74c3c}.maas-tab .semaforo-tag{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;margin-top:.25rem}.maas-tab .semaforo-dot{width:.7rem;height:.7rem;border-radius:50%;display:inline-block}.maas-tab .semaforo-verde .semaforo-dot{background:#27ae60}.maas-tab .semaforo-amarillo .semaforo-dot{background:#f39c12}.maas-tab .semaforo-rojo .semaforo-dot{background:#e74c3c}.maas-tab .barra-pct{background:#94a3b840;border-radius:4px;height:.5rem;width:100px;overflow:hidden;display:inline-block;vertical-align:middle;margin-left:.5rem}.maas-tab .barra-pct>span{display:block;height:100%}.maas-aggregados{display:flex;gap:1.5rem;flex-wrap:wrap}.maas-aggregados .resource-section{flex:1;min-width:min(280px,100%)}.badge-warn{display:inline-block;margin-left:.35rem;padding:0 .4rem;background:#f59e0b;color:#fff;border-radius:.75rem;font-size:.75rem;font-weight:600}.maas-tab .chip{display:inline-block;margin:.15rem;padding:.2rem .5rem;cursor:pointer;background:#2563eb1a;border:1px solid rgba(37,99,235,.3);border-radius:.375rem;font-size:.8rem;color:#2563eb}.maas-tab .chip:hover{background:#2563eb33}.rs-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-bottom:.9rem}.rs-kpi{background:#fff;border:1px solid #e8e8e8;border-left:4px solid #bdc3c7;border-radius:8px;padding:.6rem .9rem}.rs-kpi.principal{border-left-color:#3498db}.rs-kpi-label{font-size:.8rem;color:var(--text-faint);margin-bottom:.15rem}.rs-kpi-value{font-size:1.15rem;font-weight:700;color:#2c3e50}.rs-kpi-detail{font-size:.75rem;color:var(--text-faint);margin-top:.15rem}.rs-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.9rem}.rs-buscador{flex:1;min-width:220px;padding:.5rem .8rem;border:1px solid #dfe4ea;border-radius:6px;font-size:.9rem}.rs-field{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:#555}.rs-field select{padding:.45rem;border:1px solid #dfe4ea;border-radius:6px}.rs-check{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:#555;cursor:pointer;white-space:nowrap}.rs-limpiar{padding:.35rem .8rem;font-size:.85rem}.rs-grid{display:flex;flex-direction:column;gap:1rem}.rs-panel{background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:.75rem 1rem}.rs-panel h3{font-size:.95rem;color:#2c3e50;margin:0 0 .5rem}.rs-sub{font-size:.8rem;color:var(--text-faint);font-weight:400;margin-left:.3rem}.rs-id{display:block;font-size:.72rem;color:var(--text-faint)}.infraestructura-page{padding:0;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;margin-bottom:.5rem;color:#2c3e50}.page-header .subtitle{color:var(--text-faint);font-size:1rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:var(--text-faint)}.loading-container .spinner{width:40px;height:40px;border:4px solid #ecf0f1;border-top-color:#3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.infraestructura-content{background:#fff;border-radius:8px;padding:var(--space-5);box-shadow:0 2px 4px #0000001a;min-height:400px}.needs-config-message{text-align:center;padding:4rem 2rem}.needs-config-message .config-icon{font-size:4rem;color:#bdc3c7;margin-bottom:1rem}.needs-config-message h3{font-size:1.5rem;color:#2c3e50;margin-bottom:.5rem}.needs-config-message p{color:var(--text-faint);margin-bottom:1.5rem;max-width:400px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.infraestructura-page{padding:0}.infraestructura-content{padding:1.5rem}}.productividad-page{padding:0;margin:0 auto}.productividad-content{background:#fff;border-radius:8px;padding:var(--space-5);box-shadow:0 2px 4px #0000001a;min-height:400px}.prod-rango{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;margin-bottom:1.25rem}.prod-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.prod-kpi{background:#f8f9fa;border:1px solid #ecf0f1;border-radius:8px;padding:1rem;text-align:center}.prod-kpi .kpi-label{font-size:.8rem;color:var(--text-faint);margin-bottom:.35rem}.prod-kpi .kpi-value{font-size:1.5rem;font-weight:700;color:#2c3e50}.prod-kpi .kpi-detail{font-size:.75rem;color:var(--text-faint);margin-top:.25rem}.prod-tabla-wrap{overflow-x:auto}.prod-tabla{width:100%;border-collapse:collapse;font-size:.9rem}.prod-tabla th{text-align:left;padding:.6rem .75rem;border-bottom:2px solid #ecf0f1;color:var(--text-faint);font-weight:600;white-space:nowrap}.prod-tabla td{padding:.55rem .75rem;border-bottom:1px solid #f1f2f6;white-space:nowrap}.prod-tabla tr:hover td{background:#f8f9fa}.prod-tabla .num{text-align:right;font-variant-numeric:tabular-nums}.prod-tabla tfoot td{font-weight:700;border-top:2px solid #ecf0f1}.prod-tabla tbody tr:nth-child(2n) td{background:#fcfcfd}.prod-tabla thead th{position:sticky;top:0;z-index:2;background:#fff}.prod-tabla th:first-child,.prod-tabla td:first-child{position:sticky;left:0;z-index:1;background:inherit}.prod-tabla thead th:first-child{z-index:3}.prod-tabla tbody td:first-child{background:#fff}.prod-tabla tbody tr:nth-child(2n) td:first-child{background:#fcfcfd}.prod-tabla tbody tr:hover td,.prod-tabla tbody tr:hover td:first-child{background:#eef5fb}.badge-interno{background:#ecf0f1;color:var(--text-faint);border-radius:4px;padding:.1rem .45rem;font-size:.75rem;margin-left:.4rem}.prod-advertencia{background:#fff8e1;border:1px solid #ffe0b2;color:#8d6e00;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.85rem}.prod-mensaje{border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.9rem;white-space:pre-wrap}.prod-mensaje.success{background:#e8f8f0;border:1px solid #b7ebd3;color:#1e8e5a}.prod-mensaje.error{background:#fdecea;border:1px solid #f5c6cb;color:#b03a2e}@media (max-width: 768px){.productividad-page{padding:0}.productividad-content{padding:1.25rem}}.prod-rango-nota{font-size:.8rem;color:var(--text-faint);font-style:italic}.personal-page{padding:0;margin:0 auto}.personal-content{background:#fff;border-radius:8px;padding:var(--space-5);box-shadow:0 2px 4px #0000001a;min-height:400px}.personal-rango{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.personal-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin-bottom:1.5rem}.personal-kpi{background:#f8f9fa;border-radius:8px;padding:1rem}.personal-kpi .kpi-label{font-size:.8rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em}.personal-kpi .kpi-value{font-size:1.5rem;font-weight:700;color:#2c3e50}.personal-kpi .kpi-detail{font-size:.75rem;color:var(--text-faint);margin-top:.25rem}.personal-tabla-wrap{overflow-x:auto;max-height:70vh}.personal-tabla{width:100%;border-collapse:collapse;font-size:.9rem}.personal-tabla th{text-align:left;padding:.6rem .75rem;border-bottom:2px solid #ecf0f1;color:var(--text-faint);font-weight:600;white-space:nowrap;position:sticky;top:0;background:#fff;z-index:2}.personal-tabla td{padding:.5rem .75rem;border-bottom:1px solid #f1f2f6;white-space:nowrap}.personal-tabla tbody tr:nth-child(2n) td{background:#fcfcfd}.personal-tabla th:first-child,.personal-tabla td:first-child{position:sticky;left:0;background:#fff;z-index:1}.personal-tabla thead th:first-child{z-index:3}.personal-tabla tbody tr:nth-child(2n) td:first-child{background:#fcfcfd}.personal-tabla tbody tr:hover td,.personal-tabla tbody tr:hover td:first-child{background:#eef5fb}.personal-tabla .num{text-align:right;font-variant-numeric:tabular-nums;min-width:4.5em}.produccion-subject{display:inline-block;max-width:380px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.badge-interna{display:inline-block;margin-left:6px;padding:.05rem .4rem;border-radius:8px;font-size:.72em;font-weight:600;background:#ecf0f1;color:var(--text-faint);border:1px solid #dfe4e6;white-space:nowrap}.personal-tabla tfoot td{font-weight:700;border-top:2px solid #ecf0f1;background:#fff}.celda-edit{cursor:pointer;border-radius:4px}.celda-edit:hover{outline:2px solid #3498db;outline-offset:-2px}.celda-vacia{color:#cbd5e0}.personal-badge{background:#ecf0f1;color:var(--text-faint);border-radius:4px;padding:.1rem .45rem;font-size:.75rem;margin-left:.4rem}.personal-badge.baja{background:#fdecea;color:#c0392b}.personal-mensaje{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;cursor:pointer}.personal-mensaje.success{background:#eafaf1;color:#1e8449}.personal-mensaje.error{background:#fdecea;color:#c0392b}.personal-aviso{background:#fff8e1;border-left:4px solid #f39c12;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;font-size:.9rem}.personal-form{display:flex;flex-direction:column;gap:.75rem}.personal-form label{display:block;font-size:var(--fs-sm);font-weight:500;color:var(--text-muted)}.personal-form :where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color]),select,textarea){width:100%;min-height:var(--control-md);padding:0 10px;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-md);font:400 var(--fs-md)/1.4 var(--font-sans)}.personal-form :where(textarea){padding:8px 10px}.personal-form :where(input,select,textarea):focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.personal-form :where(input[type=checkbox],input[type=radio]){width:16px;height:16px;margin:0 6px 0 0;vertical-align:middle;accent-color:var(--primary)}.personal-form .fila{display:flex;gap:.75rem}.personal-form .fila>*{flex:1}.personal-acciones{display:flex;gap:.75rem;margin-top:1.25rem;justify-content:flex-end}.rentab-tab .tab-header{margin-bottom:2rem}.rentab-tab .tab-header h2{font-size:1.5rem;color:#2c3e50;margin-bottom:.5rem}.rentab-tab .tab-header p{color:var(--text-faint)}.rentab-tab .tab-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:var(--text-faint)}.rentab-tab .tab-loading .spinner{width:40px;height:40px;border:4px solid #ecf0f1;border-top-color:#3498db;border-radius:50%;animation:rentab-spin 1s linear infinite;margin-bottom:1rem}@keyframes rentab-spin{to{transform:rotate(360deg)}}.rentab-tab .message{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-radius:4px;margin-bottom:1.5rem}.rentab-tab .message.success{background:#d4edda;border-left:4px solid #28a745;color:#155724}.rentab-tab .message.error{background:#f8d7da;border-left:4px solid #dc3545;color:#721c24}.rentab-tab .message .close-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;opacity:.5;padding:0 .5rem}.rentab-tab .message .close-btn:hover{opacity:1}.rentab-tab .form-group small{display:block;margin-top:.25rem;color:var(--text-faint);font-size:.85rem}.rentab-tab .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.rentab-tab .form-row .form-group{margin-bottom:0}.rentab-tab .btn-danger{padding:.5rem 1rem;background:#e74c3c;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer}.rentab-tab .btn-danger:hover{background:#c0392b}.rentab-tab .btn-success{padding:.75rem 1.5rem;background:#27ae60;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer}.rentab-tab .btn-success:hover{background:#219a52}.rentab-tab .btn-sm{padding:.4rem .8rem;font-size:.85rem}.rentab-tab .badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.rentab-tab .badge.premium{background:#e8d5f5;color:#6c3483}.rentab-tab .badge.flex{background:#d5f5e3;color:#1e8449}.rentab-tab .badge.go{background:#fdebd0;color:#d35400}.rentab-tab .badge.activo{background:#d4edda;color:#155724}.rentab-tab .badge.ignorar{background:#e2e3e5;color:#383d41}.rentab-tab .badge.churn{background:#f8d7da;color:#721c24}.rentab-tab .inline-input{padding:.4rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;width:100px}.rentab-tab .inline-input:focus{border-color:#3498db}.rentab-tab .empty-state{text-align:center;padding:3rem;color:var(--text-faint)}.rentab-tab .empty-state .icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.rentab-tab .stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.rentab-tab .stat-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 2px 4px #0000001a;border-left:4px solid #3498db}.rentab-tab .stat-card .stat-label{font-size:.8rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px}.rentab-tab .stat-card .stat-value{font-size:1.75rem;font-weight:700;color:#2c3e50;margin-top:.25rem}.rentab-tab .config-form{max-width:600px}.rentab-tab .toolbar{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}.rentab-tab .toolbar select{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.rentab-tab .add-form-panel{background:#f8f9fa;border:1px solid #ecf0f1;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.rentab-tab .add-form-panel h3{margin-bottom:1rem;color:#2c3e50}@media (max-width: 768px){.rentab-tab .form-row,.rentab-tab .stats-row{grid-template-columns:1fr}.rentab-tab .toolbar{flex-direction:column;align-items:stretch}}.rentabilidad-page{padding:0;margin:0 auto}.rentabilidad-page .page-header{margin-bottom:2rem}.rentabilidad-page .page-header h1{font-size:2rem;margin-bottom:.5rem;color:#2c3e50}.rentabilidad-page .page-header .subtitle{color:var(--text-faint);font-size:1rem}.rentabilidad-content{background:#fff;border-radius:8px;padding:var(--space-5);box-shadow:0 2px 4px #0000001a;min-height:400px}@media (max-width: 768px){.rentabilidad-page{padding:0}.rentabilidad-content{padding:1.5rem}}.proy-titulo{text-transform:capitalize}.proy-filtros{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);align-items:center}.proy-filtro{display:flex;gap:var(--space-2);align-items:center}.proy-select{padding:var(--space-2);border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}.proy-aviso{margin-bottom:var(--space-6);padding:var(--space-4) var(--space-5);background:var(--warning-soft);border:1px solid var(--warning);border-radius:8px;color:var(--warning)}.proy-alertas{margin-bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.proy-alerta{padding:var(--space-3) var(--space-4);border-radius:8px;font-weight:600}.proy-alerta--critica{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger)}.proy-alerta--aviso{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning)}.proy-apagar{margin-bottom:var(--space-6);border:1px solid var(--border);border-top:3px solid var(--primary)}.proy-h3-sin-margen{margin-top:0}.proy-apagar__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:var(--space-6)}.proy-col-titulo{font-weight:700;margin-bottom:var(--space-2)}.proy-linea{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.proy-nota{color:var(--text-muted);font-size:.85em}.proy-nowrap{white-space:nowrap}.proy-total{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;font-size:var(--fs-lg)}.proy-ingreso{display:flex;justify-content:space-between;gap:var(--space-4);color:var(--text-muted)}.proy-balance{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:6px;font-weight:700;font-size:var(--fs-lg)}.proy-balance--ok{background:var(--success-soft);color:var(--success)}.proy-balance--mal{background:var(--danger-soft);color:var(--danger)}.proy-pie{margin-top:var(--space-4);margin-bottom:0;font-size:var(--fs-md);color:var(--text-muted)}.proy-resultado{margin-bottom:var(--space-6);border:1px solid var(--border)}.proy-resultado--ok{background:var(--success-soft);border-left:4px solid var(--success)}.proy-resultado--mal{background:var(--danger-soft);border-left:4px solid var(--danger)}.proy-resultado--ok h3,.proy-resultado--ok .proy-resultado__monto,.proy-resultado--ok .proy-formula__resultado{color:var(--success)}.proy-resultado--mal h3,.proy-resultado--mal .proy-resultado__monto,.proy-resultado--mal .proy-formula__resultado{color:var(--danger)}.proy-resultado__monto{font-size:2.5rem}.proy-formula{margin-top:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);align-items:center;font-size:var(--fs-md);color:var(--text)}.proy-formula__resultado{font-weight:700}.proy-resultado__nota{margin-top:var(--space-2);font-size:var(--fs-base);color:var(--text-muted)}.proy-comparacion{margin-bottom:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr))}.proy-pos{color:var(--success)}.proy-neg{color:var(--danger)}.proy-primary{color:var(--primary)}.proy-warn{color:var(--warning)}.proy-faint{color:var(--text-faint)}.proy-bold{font-weight:700}.proy-detalle{font-size:var(--fs-base);color:var(--text-muted)}.proy-bloque{margin-bottom:var(--space-6)}.proy-bloque--grande{margin-bottom:var(--space-8)}.proy-metodo{font-size:var(--fs-sm);color:var(--text-faint);margin-bottom:var(--space-3)}.proy-extra{font-size:var(--fs-base);color:var(--text-muted);margin-bottom:var(--space-3)}.proy-centro{text-align:center}.proy-h4{color:var(--primary)}.proy-h4--primero{margin:var(--space-4) 0 var(--space-2)}.proy-h4--segundo{margin:var(--space-6) 0 var(--space-2)}.proy-h4--timeline{margin-bottom:var(--space-4)}.proy-h4__extra{font-weight:400;color:var(--text-muted)}.proy-porc{color:var(--text-faint);font-size:var(--fs-sm)}.proy-manual{color:var(--primary);font-size:var(--fs-xs)}.proy-seccion{margin-top:var(--space-8);margin-bottom:var(--space-4);color:var(--text-muted);border-top:1px dashed var(--border);padding-top:var(--space-8)}.proy-resumen{margin-bottom:var(--space-4)}.proy-confianza{margin-top:var(--space-4);padding:var(--space-3);background:var(--surface-2);border-radius:6px;font-size:var(--fs-md);color:var(--text-muted)}.proy-intro{color:var(--text-muted);margin-bottom:var(--space-4)}.proy-timeline{margin-bottom:var(--space-8)}.proy-info{margin-top:var(--space-8);padding:var(--space-4);background:var(--info-soft);border-radius:8px;border:1px solid var(--border)}.proy-info h4{color:var(--primary);margin-bottom:var(--space-2)}.proy-info ul{margin-left:var(--space-6);color:var(--text-muted)}@media (max-width: 720px){.proy-comparacion{grid-template-columns:minmax(0,1fr)}}.creditos-page .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;padding:var(--space-5)}.creditos-page .card:hover{transform:none}.cred-mb-md{margin-bottom:1.5rem}.cred-mb-lg{margin-bottom:2rem}.cred-t-right{text-align:right}.cred-t-center{text-align:center}.oq-table th.cred-t-right,.oq-table td.cred-t-right{text-align:right}.oq-table th.cred-t-center{text-align:center}.cred-w100{width:100%}.cred-titulo{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.cred-titulo h2{margin:0}.cred-acciones{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.cred-anio{width:auto;padding:.4rem .5rem}.cred-mes-cab{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.cred-mes-cab h3,.cred-cab-fila h3{margin:0}.cred-mes-nav{display:flex;align-items:center;gap:.75rem}.cred-btn-nav{padding:.25rem .6rem}.cred-mes-label{min-width:150px;text-align:center;text-transform:capitalize}.cred-vacio-msg{color:var(--text-faint);margin-bottom:0}.cred-mes-resumen{display:flex;gap:1.5rem;flex-wrap:wrap;margin:.75rem 0 1rem;font-size:.9rem}.cred-impagas-n{color:var(--danger)}.cred-total{color:var(--text-muted)}.cred-lista{display:flex;flex-direction:column;gap:.4rem}.cred-cuota{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border-radius:var(--radius-md);background:var(--warning-soft);border:1px solid var(--warning)}.cred-cuota--pagada{background:var(--success-soft);border-color:var(--success)}.cred-cuota--vencida{background:var(--danger-soft);border-color:var(--danger)}.cred-cuota__izq{display:flex;align-items:center;gap:.6rem}.cred-cuota__icono{font-size:1.1rem}.cred-cuota__sub{font-size:.8rem;color:var(--text-muted)}.cred-cuota__der{display:flex;align-items:center;gap:.75rem}.cred-cuota__monto{font-weight:700;color:var(--danger)}.cred-cuota__monto--pagada{color:var(--success);text-decoration:line-through}.cred-pagar{padding:.35rem .7rem;background:var(--success);color:var(--on-primary);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.8rem;font-weight:600;white-space:nowrap}.cred-pagar:disabled{background:var(--neutral-400);cursor:wait}.cred-alerta{background:var(--warning-soft);border:1px solid var(--warning);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem}.cred-alerta__titulo{color:var(--warning);margin-top:0}.cred-alerta__grupo{margin-bottom:1rem}.cred-alerta__h--vencidas{color:var(--danger)}.cred-alerta__h--urgente{color:var(--warning)}.cred-alerta__lista{display:flex;flex-direction:column;gap:.5rem}.cred-alerta__item{background:var(--warning-soft);border:1px solid var(--warning);padding:.75rem;border-radius:var(--radius-md);display:flex;justify-content:space-between;align-items:center}.cred-alerta__item--vencida{background:var(--danger-soft);border-color:var(--danger)}.cred-alerta__det{font-size:.9rem;color:var(--warning)}.cred-alerta__item--vencida .cred-alerta__det{color:var(--danger)}.cred-alerta__monto{font-weight:700;font-size:1.1rem;color:var(--warning)}.cred-alerta__item--vencida .cred-alerta__monto{color:var(--danger)}.creditos-page .card.cred-prox{background:var(--primary-soft);margin-bottom:2rem}.cred-prox h3{color:var(--primary-active)}.cred-prox__grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-top:1rem}.cred-label{font-size:.9rem;color:var(--text-muted)}.cred-prox__valor{font-size:1.5rem;font-weight:700;color:var(--primary-active)}.cred-prox__valor--proximas{color:var(--primary)}.cred-kpis{margin-bottom:2rem}.cred-kpis__grupo{margin-top:.5rem}.cred-kpis .card .amount.cred-amount--activos{color:var(--primary)}.cred-kpis .card .amount.cred-amount--ars{color:var(--primary);margin-bottom:.5rem}.cred-kpis .card .amount.cred-amount--usd{color:var(--success);font-size:1.2rem;margin-top:.25rem}.cred-kpis .card .amount.cred-amount--clp{color:var(--warning);font-size:1.2rem;margin-top:.25rem}.cred-cab-fila{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.cred-check-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem}.cred-check{width:16px;height:16px;cursor:pointer}.cred-inactivo{opacity:.6}.cred-td-entidad{font-weight:600}.cred-tipo-sub{font-size:.75rem;color:var(--text-faint);font-weight:400}.cred-saldo{font-weight:600;color:var(--danger);text-align:right}.cred-saldo--saldado{color:var(--success)}.cred-nota-graf{text-align:center;color:var(--text-muted);margin-top:.5rem;font-size:.85rem}.cred-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:1rem}.cred-item{background:var(--surface);border-radius:var(--radius-lg);padding:.85rem 1rem;border:1px solid var(--border);cursor:pointer;transition:border-color .2s}.cred-item--inactivo{border-color:var(--neutral-300);opacity:.6}.cred-item:hover{border-color:var(--primary)}.cred-item__cab{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.4rem}.cred-item__entidad{font-weight:700;font-size:1.05rem;color:var(--text)}.cred-item__tipo{font-size:.8rem;color:var(--text-muted);margin-top:.1rem}.cred-badge{padding:.15rem .55rem;border-radius:12px;font-size:.72rem;font-weight:600;background:var(--success-soft);color:var(--success)}.cred-badge--off{background:var(--surface-hover);color:var(--text-muted)}.cred-badge--pendiente{background:var(--warning-soft);color:var(--warning)}.cred-item__montos{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:.3rem}.cred-item__pend{text-align:right;font-weight:700}.cred-danger{color:var(--danger)}.cred-ok{color:var(--success)}.cred-item__orig{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-faint);margin-bottom:.3rem}.cred-prog-wrap{margin-top:.3rem}.cred-prog-wrap__cab{display:flex;justify-content:space-between;font-size:.72rem;color:var(--text-muted);margin-bottom:.2rem}.cred-prog{height:5px;background:var(--border);border-radius:3px;overflow:hidden}.cred-prog__fill{height:100%;background:var(--primary);border-radius:3px;transition:width .3s}.cred-prog__fill--completo{background:var(--success)}.cred-item__acciones{text-align:right;margin-top:.4rem}.cred-btn-sm{padding:.3rem .7rem;font-size:.8rem}.cred-det{padding:1.5rem}.cred-det__resumen{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface-2);border-radius:var(--radius-lg)}.cred-det__label{font-size:.8rem;color:var(--text-muted)}.cred-det__valor{font-size:1.1rem;font-weight:700;color:var(--text)}.cred-det__notas{font-size:.85rem;color:var(--text-muted);margin-bottom:1.5rem;padding:.75rem 1rem;background:var(--surface-2);border-radius:var(--radius-lg);white-space:pre-wrap}.cred-h4{margin:0 0 .75rem;font-size:1rem}.cred-mt-md{margin-top:1.5rem}.cred-tabla-chica{font-size:.85rem}.cred-td-nowrap{white-space:nowrap}.cred-td-detalle{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cred-td-monto{font-weight:600;white-space:nowrap}.cred-td-mes{color:var(--text-muted);font-size:.8rem}.cred-usd{color:var(--success)}.cred-det__vacio{padding:2rem;text-align:center;color:var(--text-muted);background:var(--surface-2);border-radius:var(--radius-lg)}.cred-hist{padding:2rem}.cred-hist__resumen{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-top:1rem;margin-bottom:2rem;padding:1rem;background:var(--surface-2);border-radius:var(--radius-lg)}.cred-hist__valor{font-size:1.3rem;font-weight:700;color:var(--success)}.cred-hist__valor--capital{color:var(--primary)}.cred-hist__valor--interes{color:var(--danger)}.oq-table td.cred-td-total{font-weight:700;color:var(--success)}.oq-table td.cred-td-interes{color:var(--danger)}.cred-hist__prog{margin-top:2rem}.cred-hist__track{width:100%;height:30px;background:var(--border);border-radius:15px;overflow:hidden;position:relative}.cred-hist__fill{height:100%;background:var(--success);display:flex;align-items:center;justify-content:center;color:var(--on-primary);font-weight:700;font-size:.9rem}.cred-hist__pie{display:flex;justify-content:space-between;margin-top:.5rem;font-size:.85rem;color:var(--text-muted)}.cred-hist__vacio{padding:3rem;text-align:center;color:var(--text-muted);background:var(--surface-2);border-radius:var(--radius-lg)}.cred-hist__vacio p:first-child{margin:0}.cred-hist__vacio p:last-child{margin-top:1rem}.cred-faint-txt{color:var(--text-muted)}.cred-label--mb{margin-bottom:.5rem}.imex-textarea{font-family:var(--font-mono);font-size:.9rem}.imex-nota{font-size:.85rem;color:var(--text-muted);margin-top:var(--space-2)}.imex-texto-suave{color:var(--text-muted)}.imex-negrita{font-weight:700}.imex-centro{text-align:center}.imex-acciones{margin-top:1.5rem}.imex-bloque{margin-bottom:var(--space-4)}.imex-estructura{background:var(--primary-soft);border:2px solid var(--primary);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem}.imex-estructura-titulo{margin:0 0 var(--space-4) 0;color:var(--primary)}.imex-caja{margin-bottom:1.5rem;padding:var(--space-4);background:var(--surface);border-radius:var(--radius-md)}.imex-columnas{font-size:.9rem;color:var(--text-muted);margin-top:var(--space-2);font-family:var(--font-mono);padding:var(--space-2);background:var(--surface-2);border-radius:var(--radius-sm)}.imex-formatos{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:1.5rem}.imex-valor-grande{font-size:1.1rem;color:var(--text-muted);margin-top:var(--space-1)}.imex-valor{font-size:1rem;color:var(--text-muted);margin-top:var(--space-1)}.imex-ignoradas{color:var(--warning);margin-left:var(--space-4)}.imex-lineas{background:var(--surface);border-radius:var(--radius-md);padding:var(--space-2);margin-top:var(--space-2);max-height:400px;overflow:auto;font-size:.82rem}.imex-linea{padding:.4rem .6rem;margin-bottom:2px;border-radius:var(--radius-sm)}.imex-linea--valida{background:var(--success-soft);border-left:3px solid var(--success)}.imex-linea--invalida{background:var(--danger-soft);border-left:3px solid var(--danger)}.imex-linea-texto{font-family:var(--font-mono);color:var(--text-muted);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.imex-linea-num{color:var(--text-faint);margin-right:var(--space-2)}.imex-linea-parsed{padding-left:2rem;font-size:.8rem}.imex-linea-parsed--ingreso{color:var(--success)}.imex-linea-parsed--gasto{color:var(--danger)}.imex-linea-motivo{padding-left:2rem;color:var(--danger);font-size:.78rem;font-style:italic}.btn-primary.imex-btn-ok{background:var(--success);color:var(--on-primary)}.btn-primary.imex-btn-ok:hover:not(:disabled),.btn-primary.imex-btn-ok:active:not(:disabled){background:var(--success);filter:brightness(.92)}.imex-procesando{text-align:center;padding:3rem}.imex-procesando-icono{font-size:3rem;margin-bottom:var(--space-4)}.imex-destino{margin:var(--space-2) 0;font-size:.95rem}.imex-contadores{display:flex;gap:2rem;font-size:.9rem;color:var(--text-muted)}.imex-saldo{background:var(--warning-soft);border:1px solid var(--warning);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);font-size:.9rem}.imex-saldo-texto{margin-bottom:var(--space-2)}.imex-saldo-check{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.imex-internos{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.75rem var(--space-4);margin-bottom:var(--space-4);font-size:.85rem;color:var(--text-muted)}.imex-th-check{width:40px}.imex-th-tipo{width:80px}.imex-th-quitar{width:60px}.imex-check{cursor:pointer;transform:scale(1.2)}.imex-celda-tipo{font-size:1.2rem}.imex-fila-dup{background-color:var(--warning-soft)}.imex-fila-omitida{background-color:var(--danger-soft)}.imex-fila-op-omitida{opacity:.6}.imex-fila-op-excluida{opacity:.55}.imex-dup-aviso{font-size:.75rem;color:var(--warning);margin-top:var(--space-1)}.imex-dup-celda{padding:var(--space-2) var(--space-4);font-size:.85rem}.imex-dup-linea{display:flex;align-items:center;gap:var(--space-4)}.imex-dup-etiqueta{font-weight:700;color:var(--warning)}.imex-chip{display:inline-block;margin-top:var(--space-1);font-size:.72rem;padding:.1rem .5rem;border-radius:10px;cursor:pointer}.imex-chip--excluido{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.imex-chip--cuenta{background:var(--success-soft);color:var(--success);border:1px solid var(--success)}.imex-monto{font-weight:700}.imex-monto--ingreso{color:var(--success)}.imex-monto--gasto{color:var(--danger)}.imex-select{padding:.3rem;border-radius:var(--radius-sm);border:1px solid var(--border);font-size:.85rem}.imex-select--off{opacity:.5}.imex-btn-quitar{padding:.3rem .6rem;background:var(--danger);color:var(--on-primary);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem}.imex-btn-quitar:hover{background:var(--danger-hover)}.simulacion-tab{padding:1rem}.simulacion-header{margin-bottom:1.5rem}.simulacion-warning{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:var(--warning-soft);border:1px dashed var(--warning);border-radius:var(--radius-lg);color:var(--warning);font-weight:600;font-size:1rem}.warning-icon{font-size:1.5rem}.escenarios-section{margin-bottom:2rem}.escenarios-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.escenarios-header h3{margin:0;color:#374151}.escenarios-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:1rem}.escenario-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s ease}.escenario-card:hover{box-shadow:0 4px 12px #0000001a}.escenario-card.active{border-width:3px;box-shadow:0 4px 12px #00000026}.escenario-color{width:8px;height:100%;min-height:50px;border-radius:4px}.escenario-info{flex:1}.escenario-info h4{margin:0 0 .25rem;color:#1f2937}.escenario-info p{margin:0;font-size:.85rem;color:#6b7280}.escenario-actions{display:flex;gap:.25rem}.escenario-actions button{padding:.25rem .5rem;background:none;border:none;cursor:pointer;font-size:1rem;opacity:.6;transition:opacity .2s}.escenario-actions button:hover{opacity:1}.proyeccion-section{padding:1.5rem;background:#fff;border:3px solid;border-radius:12px;margin-bottom:2rem}.proyeccion-section h3{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;color:#374151}.color-dot{width:12px;height:12px;border-radius:50%}.proyeccion-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.proyeccion-card{padding:1rem;background:#f9fafb;border-radius:8px;text-align:center}.proyeccion-label{font-size:.85rem;color:#6b7280;margin-bottom:.5rem}.proyeccion-value{font-size:1.75rem;font-weight:700}.proyeccion-value.positive{color:#059669}.proyeccion-value.negative{color:#dc2626}.proyeccion-secondary{font-size:.9rem;color:#10b981;margin-top:.25rem}.gastos-simulados-section{margin-bottom:2rem}.gastos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.gastos-header h3{margin:0;color:#374151}.badge{display:inline-block;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:600}.badge.recurrente{background:#dbeafe;color:#1e40af}.badge.unico{background:#f3f4f6;color:#6b7280}.monto-ars{font-weight:700;color:#06b6d4}.monto-usd{font-size:.85rem;color:#10b981}.monto-clp{font-size:.85rem;color:#f59e0b}.action-buttons{display:flex;gap:.25rem;justify-content:center}.btn-convertir{padding:.25rem .5rem;background:#10b981;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:600;transition:background .2s}.btn-convertir:hover{background:#059669}.btn-edit{padding:.25rem .5rem;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-delete{padding:.25rem .5rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer}.color-picker{display:flex;gap:.5rem;flex-wrap:wrap}.color-option{width:32px;height:32px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:transform .2s,border-color .2s}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:#1f2937}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.recurrencia-section{padding:1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-top:.5rem}.empty-state{text-align:center;padding:2rem;background:#f9fafb;border-radius:8px;color:#6b7280}@media (max-width: 768px){.escenarios-grid,.proyeccion-cards{grid-template-columns:1fr}.form-row{flex-direction:column}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text)}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;max-width:var(--content-max);width:100%;margin:0 auto;padding:var(--space-6)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h2{font-size:2rem;color:#333;position:relative;padding-bottom:.4rem}.page-header h2:after{content:"";display:block;width:48px;height:3px;background:var(--filete-dorado);margin-top:.3rem}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--control-md);padding:0 var(--space-4);border-radius:var(--radius-md);font:500 var(--fs-md)/1.2 var(--font-sans);cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.btn-primary{background:var(--primary);color:var(--on-primary);border:1px solid transparent}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:none}.btn-primary:active:not(:disabled){background:var(--primary-active)}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-hover)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.dashboard-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:1.5rem;margin-bottom:2rem}.card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 12px #00000014;transition:transform .3s}.card h3{font-size:1rem;color:#666;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.card .amount{font-size:2.5rem;font-weight:700;margin:0}.card.ingresos .amount{color:#28a745}.card.gastos .amount{color:#dc3545}.card.balance.positive .amount{color:#28a745}.card.balance.negative .amount{color:#dc3545}.table-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow-x:auto}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.badge.pendiente{background:#fff3cd;color:#856404}.badge.pagado{background:#d4edda;color:#155724}.badge.adeudado{background:#f8d7da;color:#721c24}.badge-ciclable{border:none;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;text-transform:inherit;transition:filter .12s ease,box-shadow .12s ease}.badge-ciclable:hover{filter:brightness(.94);box-shadow:0 0 0 2px var(--primary-soft)}.badge-ciclable:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.badge.active{background:#d4edda;color:#155724}.badge.inactive{background:#e2e3e5;color:#6c757d}.empty-state{text-align:center;padding:3rem;color:var(--text-faint);font-size:1.1rem}.loading{text-align:center;padding:3rem;font-size:1.2rem;color:var(--primary)}.summary-box{background:var(--success-soft);color:var(--success);border:1px solid var(--border);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:2rem;text-align:center}.summary-box h3{margin-bottom:.5rem;font-size:var(--fs-md)}.summary-box .total-amount{font-size:3rem;font-weight:700;margin:0}.close-btn{background:none;border:none;font-size:2rem;color:var(--text-faint);cursor:pointer;padding:0;line-height:1;transition:color .3s}.close-btn:hover{color:#333}.form{padding:var(--space-6)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4);min-width:0}.form-row>.form-group,.form-grid>.form-group{margin-bottom:0}.form-group label{display:block;font-size:var(--fs-sm);font-weight:500;letter-spacing:.02em;color:var(--text-muted)}.form-group :where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color]),select,textarea){width:100%;min-width:0;min-height:var(--control-md);padding:0 10px;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-md);font:400 var(--fs-md)/1.4 var(--font-sans)}.form-group :where(textarea){padding:8px 10px;min-height:80px;resize:vertical}.form-group :where(input,select,textarea):hover:not(:disabled){border-color:var(--text-faint)}.form-group :where(input,select,textarea):focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.form-group :where(input,select,textarea):disabled{background:var(--surface-2);color:var(--text-faint);cursor:not-allowed}.form-group :where(input::placeholder,textarea::placeholder){color:var(--text-faint)}.form-group :where(input[type=checkbox],input[type=radio]){flex:none;align-self:flex-start;width:16px;height:16px;margin:0;padding:0;accent-color:var(--primary);cursor:pointer}.form-group label:has(>input[type=checkbox],>input[type=radio]){display:flex;align-items:center;gap:8px;font-size:var(--fs-md);letter-spacing:0;color:var(--text);cursor:pointer}.form-group small{display:block;font-size:var(--fs-sm);color:var(--text-muted)}.form-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border)}.form-actions>button:not([class]){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--control-md);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);font:500 var(--fs-md)/1.2 var(--font-sans);cursor:pointer;transition:background-color .12s ease}.form-actions>button:not([class]):hover:not(:disabled){background:var(--primary-hover)}.form-actions>button:not([class]):disabled{opacity:.5;cursor:not-allowed}.btn-primary.btn-sm,.btn-secondary.btn-sm,.btn-primary.btn-small,.btn-secondary.btn-small{min-height:var(--control-sm);padding:0 10px;font-size:var(--fs-base)}.error-message{background:var(--danger-soft);border:1px solid var(--danger);color:var(--danger);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-top:var(--space-4)}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}:root{--bg: #f7f5f0;--surface: #ffffff;--surface-2: #faf8f4;--surface-hover: #f6f3ed;--border: #e2ded4;--border-strong: #8c867b;--text: #1d1c19;--text-muted: #5e5a52;--text-faint: #736e64;--primary: #2971bd;--primary-hover: #2367ad;--primary-active: #1d5490;--primary-soft: #eef5fc;--on-primary: #ffffff;--focus-ring: #2367ad;--success: #1f7a4a;--success-soft: #e7f3ec;--warning: #9a6200;--warning-soft: #fdf3dc;--danger: #b4232f;--danger-hover: #951c27;--danger-soft: #fbeced;--info-soft: #eef5fc;--overlay: rgba(29, 28, 25, .45);--nav-bg: #fbf6ea;--nav-active: #ffffff;--filete-bermellon: #B32428;--filete-crema: #F5ECD4;--filete-dorado: #C8921E;--filete-azul: #2C79C9;--filete-violeta: #7B68C8;--neutral-0: #ffffff;--neutral-25: #faf8f4;--neutral-50: #f7f5f0;--neutral-100: #f6f3ed;--neutral-200: #e2ded4;--neutral-300: #cdc7bb;--neutral-400: #a39d91;--neutral-500: #8c867b;--neutral-600: #736e64;--neutral-700: #5e5a52;--neutral-800: #3a3732;--neutral-900: #1d1c19;--azul-50: #eef5fc;--azul-100: #d6e7f7;--azul-200: #aecdef;--azul-300: #7eb0e3;--azul-400: #4d92d6;--azul-500: #2C79C9;--azul-600: #2971bd;--azul-700: #2367ad;--azul-800: #1d5490;--azul-900: #163f6c;--bermellon-50: #fcefee;--bermellon-100: #f7d6d6;--bermellon-200: #eeadad;--bermellon-300: #e07f80;--bermellon-400: #cc4a4d;--bermellon-500: #B32428;--bermellon-600: #961d21;--bermellon-700: #78171a;--bermellon-800: #5c1214;--bermellon-900: #3f0c0e;--dorado-50: #fbf5e6;--dorado-100: #f5e6bf;--dorado-200: #ebcd85;--dorado-300: #deb150;--dorado-400: #d19f33;--dorado-500: #C8921E;--dorado-600: #a77818;--dorado-700: #845e13;--dorado-800: #62460e;--dorado-900: #432f09;--violeta-50: #f2f0fb;--violeta-100: #e1dcf5;--violeta-200: #c3baeb;--violeta-300: #a497df;--violeta-400: #8e7fd4;--violeta-500: #7B68C8;--violeta-600: #6554ad;--violeta-700: #50428a;--violeta-800: #3c3268;--violeta-900: #282145;--chart-1: var(--azul-600);--chart-2: var(--dorado-500);--chart-3: var(--violeta-500);--chart-4: var(--neutral-500);--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 18px;--fs-xl: 24px;--fs-kpi: 28px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--control-sm: 28px;--control-md: 34px;--row-height: 36px;--nav-height: 56px;--sidebar-width: 240px;--sidebar-rail: 60px;--content-max: 1360px;--icon-sm: 16px;--icon-md: 20px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgba(29, 28, 25, .06), 0 1px 1px rgba(29, 28, 25, .04);--shadow-lg: 0 8px 24px rgba(29, 28, 25, .14), 0 2px 6px rgba(29, 28, 25, .08);--z-sticky: 10;--z-nav: 40;--z-popover: 60;--z-modal: 80;--z-toast: 90;--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-titulo-pagina-size: 24px;--text-titulo-pagina-line: 30px;--text-titulo-pagina-weight: 600;--text-titulo-pagina-spacing: -.01em;--text-titulo-seccion-size: 18px;--text-titulo-seccion-line: 26px;--text-titulo-seccion-weight: 600;--text-titulo-card-size: 14px;--text-titulo-card-line: 20px;--text-titulo-card-weight: 600;--text-cuerpo-size: 14px;--text-cuerpo-line: 20px;--text-cuerpo-weight: 400;--text-cuerpo-fuerte-size: 14px;--text-cuerpo-fuerte-line: 20px;--text-cuerpo-fuerte-weight: 600;--text-chico-size: 13px;--text-chico-line: 18px;--text-chico-weight: 400;--text-etiqueta-size: 12px;--text-etiqueta-line: 16px;--text-etiqueta-weight: 500;--text-etiqueta-spacing: .02em;--text-mini-size: 11px;--text-mini-line: 14px;--text-mini-weight: 500;--text-kpi-size: 28px;--text-kpi-line: 32px;--text-kpi-weight: 600;--text-kpi-spacing: -.01em;--text-monto-size: 14px;--text-monto-line: 20px;--text-monto-weight: 500}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;color:#333}#root{min-height:100vh}button{cursor:pointer;font-family:inherit}input{font-family:inherit}.kpi-presupuesto{font-size:1.1rem;font-weight:700;padding:.5rem 1rem;border-radius:8px}.kpi-presupuesto.azul{color:#2563eb;background:#eff6ff}.kpi-presupuesto.rojo{color:#dc2626;background:#fef2f2}.kpi-presupuesto.gris{color:#4b5563;background:#f3f4f6}.badge-moneda{background:var(--primary-soft);color:var(--primary-active);border-radius:4px;padding:.05rem .4rem;font-size:.75rem;margin-left:.4rem}.selector-base{display:inline-flex;border:1px solid #dfe4ea;border-radius:6px;overflow:hidden}.selector-base button{padding:.35rem .75rem;border:none;background:#fff;cursor:pointer;font-size:.85rem;color:var(--text-faint)}.selector-base button.activo{background:#eff6ff;color:#2563eb;font-weight:600}body{font-family:var(--font-sans);color:var(--text)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.oq-num{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}code{overflow-wrap:anywhere}
