:root{--ct-fila:32px;--ct-hoja-bg:var(--bg-elev-2);--ct-raya:var(--line);--ct-raya-total:var(--line-strong);--ct-negativo:var(--red);--ct-radio:var(--radius-xs);--ct-zebra:color-mix(in srgb,var(--text) 2%,transparent);--ct-overlay:color-mix(in srgb,var(--bg) 55%,transparent)}:root[data-densidad=compacta]{--ct-fila:28px}:root[data-densidad=comoda]{--ct-fila:44px}.ct-marco{background:var(--ct-hoja-bg);border-radius:var(--ct-radio);box-shadow:var(--shadow-sm);overflow:hidden;min-width:0}.ct-scroll{overflow:auto;max-height:calc(100vh - 260px);min-height:240px}.ct-scroll.is-libre{max-height:none;min-height:0}.ct-hoja{width:100%;border-collapse:collapse;font-size:12.5px;white-space:nowrap}.ct-hoja thead th{position:sticky;top:0;z-index:2;background:var(--bg-elev);font:600 9.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);text-align:left;padding:0 10px;height:30px;border-bottom:1px solid var(--ct-raya-total)}.ct-hoja th.ct-num{text-align:right}.ct-hoja tbody td{padding:0 10px;height:var(--ct-fila);border-bottom:1px solid var(--ct-raya);color:var(--text)}.ct-hoja.is-zebra tbody tr:nth-child(2n) td{background:var(--ct-zebra)}@media (hover:hover){.ct-hoja tbody tr.is-perforable:hover td{background:var(--cyan-soft);cursor:pointer}}.ct-hoja .ct-g{border-left:1px solid var(--ct-raya)}.ct-hoja tr.ct-subtotal td{border-top:1px solid var(--ct-raya-total);background:var(--bg-soft);font-weight:600;height:34px}.ct-hoja tfoot td{position:sticky;bottom:0;z-index:2;background:var(--bg-elev);height:38px;padding:0 10px;font-weight:700;border-top:3px double var(--ct-raya-total)}.ct-num{text-align:right;font-family:var(--display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:-.01em}.ct-hoja tfoot .ct-num,.ct-hoja tr.ct-subtotal .ct-num{font-weight:700}.ct-neg{color:var(--ct-negativo)}.ct-nil{color:var(--muted-2)}.ct-codigo{font:400 11.5px var(--mono);letter-spacing:-.02em}.ct-da{font:500 9.5px var(--mono);margin-left:3px}.ct-da,.ct-rotulo{color:var(--muted-2)}.ct-rotulo{font:600 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase}.ct-texto{max-width:320px;overflow:hidden;text-overflow:ellipsis}.ct-cc{font:500 10.5px var(--mono);color:var(--muted-2)}.ct-perf{background:none;border:0;border-bottom:1px dotted var(--cyan);padding:0;color:inherit;font:inherit;text-align:inherit;cursor:pointer}.ct-perf:hover{color:var(--cyan)}.ct-pie{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;padding:7px 10px;border-top:1px solid var(--line);background:var(--ct-hoja-bg);font-size:11.5px;color:var(--muted-2)}.ct-pie b{color:var(--text);font-weight:600}.ct-ok{color:var(--green)}.ct-mal,.ct-ok{font-weight:600}.ct-mal{color:var(--red)}.ct-diario tr.ct-cab td{height:34px;border-top:1px solid var(--ct-raya-total);background:var(--bg-elev)}.ct-diario tr.ct-cab:first-child td{border-top:0}.ct-diario tr.ct-lin td{height:28px;border-bottom:0}.ct-diario tr.ct-ley td{height:26px;color:var(--muted);font-style:italic;font-size:12px;border-bottom:0;padding-bottom:6px}.ct-diario .ct-haber{padding-left:40px}.ct-haber-detalle{padding-left:26px!important}.ct-diario tr.is-resaltado td{background:var(--amber-soft)}.ct-a{color:var(--muted-2);font-style:italic;margin-right:6px}.ct-nro{font:600 12px var(--mono)}.ct-origen{display:inline-flex;align-items:center;gap:7px;background:none;border:0;padding:0;cursor:pointer;color:var(--text);font:inherit}.ct-origen .ct-doc{border-bottom:1px dotted var(--cyan)}.ct-origen:hover .ct-doc{color:var(--cyan)}.ct-chip{font:600 9.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:3px;white-space:nowrap}.ct-chip.is-auto{background:var(--bg-soft);color:var(--muted)}.ct-chip.is-manual{color:var(--text);box-shadow:inset 0 0 0 1px var(--line-strong)}.ct-muted{color:var(--muted)}.ct-encabezado{display:flex;align-items:flex-end;gap:12px 20px;flex-wrap:wrap}.ct-encabezado>div:first-child{flex:1 1 320px;min-width:0}.ct-filtros{display:flex;gap:8px 10px;flex-wrap:wrap;align-items:center}.ct-pill{border:1px solid var(--line-strong);background:var(--bg-elev-2);border-radius:999px;padding:3px 10px;font:500 12px var(--sans);color:var(--text);cursor:pointer;white-space:nowrap}.ct-pill[aria-pressed=true]{background:var(--text);color:var(--bg-elev-2);border-color:var(--text)}.ct-pill .ct-n{font:500 10px var(--mono);opacity:.7;margin-left:4px}.ct-periodo{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 6px;border-radius:var(--radius-pill)}.ct-periodo button{background:none;border:0;color:var(--muted-2);cursor:pointer;width:24px;height:24px;border-radius:999px}.ct-periodo button:hover{background:var(--bg-soft);color:var(--text)}.ct-periodo .ct-codigo{font-size:13px;font-weight:500;color:var(--text)}.ct-buscar{flex:1 1 220px;max-width:380px;min-width:0;position:relative}.ct-resultados{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;margin:0;padding:6px;list-style:none;max-height:420px;overflow:auto;background:var(--bg-elev-2);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);display:grid;gap:1px}.ct-resultados-grupo{display:block;padding:6px 10px 2px;font:600 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2)}.ct-resultados button{width:100%;display:flex;gap:8px;align-items:baseline;text-align:left;background:none;border:0;padding:7px 10px;border-radius:var(--radius-xs);font:500 13px var(--sans);color:var(--text);cursor:pointer}.ct-resultados button.is-elegido,.ct-resultados button:hover{background:var(--cyan-soft)}.ct-resultados .ct-codigo{color:var(--muted);font-size:12px}.ct-periodo{position:relative}.ct-periodo .ct-periodo-actual{width:auto;padding:0 6px}.ct-velo.is-claro{background:transparent;z-index:55}.ct-menu-periodo{position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);z-index:60;width:300px;max-width:calc(100vw - 32px);background:var(--bg-elev-2);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:10px;display:grid;gap:8px;font-size:12.5px}.ct-menu-periodo p{margin:0}.ct-meses{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.ct-periodo .ct-meses button,.ct-periodo .ct-otro-ejercicio{width:auto;height:28px;border-radius:var(--radius-xs);color:var(--text);font-size:12px}.ct-periodo .ct-meses button[aria-current=true]{background:var(--cyan-soft);font-weight:600}.ct-periodo .ct-otro-ejercicio{text-align:left;padding:0 8px}.ct-densidad{display:flex;gap:2px;padding:2px;border-radius:var(--radius-xs);background:var(--bg-soft);margin:8px 0;box-sizing:border-box;width:100%;min-width:0}.ct-densidad button{flex:1 1;min-width:0;border:0;background:none;padding:4px 2px;border-radius:var(--radius-xs);font:500 10.5px var(--sans);color:var(--muted);cursor:pointer;overflow:hidden;text-overflow:ellipsis}.ct-densidad button[aria-pressed=true]{background:var(--bg-elev-2);color:var(--text)}.ct-empresa{position:relative}.ct-menu-empresas{position:absolute;top:calc(100% + 6px);left:0;z-index:60;min-width:260px;max-height:360px;overflow:auto;background:var(--bg-elev-2);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:6px;display:grid;gap:1px}.ct-menu-empresas button{text-align:left;background:none;border:0;padding:8px 10px;border-radius:var(--radius-xs);font:500 13px var(--sans);color:var(--text);cursor:pointer}.ct-menu-empresas button:hover,.ct-menu-empresas button[aria-current=true]{background:var(--cyan-soft)}.ct-velo{position:fixed;inset:0;background:var(--ct-overlay);z-index:80}.ct-cajon{position:fixed;top:0;right:0;bottom:0;width:min(480px,100%);z-index:81;overflow:auto;background:var(--bg-elev-2);box-shadow:var(--shadow-md);padding:20px;display:grid;gap:16px;align-content:start}.ct-cajon-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.ct-kv{display:grid;grid-template-columns:140px minmax(0,1fr);gap:6px 12px;font-size:12.5px;margin:0}.ct-kv dt{color:var(--muted-2)}.ct-kv dd{margin:0;min-width:0}.ct-nota{background:var(--bg-soft);border-radius:var(--radius-xs);padding:12px 14px;font-size:12.5px;display:grid;gap:6px}.ct-nota p{margin:0}.ct-inicio{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}.ct-col,.ct-inicio{display:grid;gap:18px}.ct-col{min-width:0}.ct-pasos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:4px 0 0;padding:0;list-style:none;counter-reset:p}.ct-pasos li{counter-increment:p;padding:2px 16px 2px 0;display:grid;gap:4px;align-content:start}.ct-pasos li+li{padding-left:16px;border-left:1px solid var(--line)}.ct-pasos li:before{content:counter(p);font:600 10px var(--mono);color:var(--cyan);border:1px solid var(--line-strong);border-radius:3px;width:20px;text-align:center}.ct-pasos b{font:600 13px var(--display)}.ct-pasos span{color:var(--muted);font-size:12.5px}.ct-check{list-style:none;margin:0;padding:0;display:grid}.ct-check li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;padding:9px 0;border-bottom:1px solid var(--line)}.ct-check li:last-child{border-bottom:0}.ct-check .ct-d{color:var(--muted);font-size:12.5px;display:block}.ct-alta{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px;align-items:start}.ct-alta-cab{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px}.ct-grilla td{padding:0!important;height:34px!important}.ct-grilla td.ct-idx{padding:0 8px!important;color:var(--muted-2);font:500 10.5px var(--mono);width:32px;text-align:right}.ct-grilla input,.ct-grilla select{width:100%;height:33px;border:0;background:transparent;padding:0 10px;outline:none;min-width:0;color:var(--text);font:400 13px var(--sans)}.ct-grilla input:focus,.ct-grilla select:focus{background:var(--cyan-soft);box-shadow:inset 0 0 0 1.5px var(--cyan)}.ct-grilla input.ct-num{font-family:var(--display)}.ct-grilla input.ct-codigo{font:400 12px var(--mono)}.ct-grilla tr.is-error td{background:var(--red-soft)}.ct-grilla .ct-quitar{background:none;border:0;color:var(--muted-2);cursor:pointer;width:30px;height:33px}.ct-grilla .ct-quitar:hover{color:var(--red)}.ct-grilla .ct-nombre{font-size:11.5px;color:var(--muted);padding:0 10px!important;max-width:240px;overflow:hidden;text-overflow:ellipsis}.ct-control{display:grid}.ct-control div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:12.5px}.ct-control div:last-child{border-bottom:0}.ct-atajos{font-size:11.5px;display:flex;gap:12px;flex-wrap:wrap}.ct-atajos,.ct-kbd{color:var(--muted-2)}.ct-kbd{font:500 10px var(--mono);border:1px solid var(--line-strong);border-radius:3px;padding:0 4px}.ct-ficha{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 0;font-size:11.5px;color:var(--muted);display:grid;gap:4px}.ct-ficha dl{margin:0;display:flex;flex-wrap:wrap;gap:2px 14px}.ct-ficha dl>div{display:flex;gap:4px}.ct-ficha dt{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);align-self:center}.ct-ficha dd{margin:0;color:var(--text)}.ct-ficha p{margin:0}.ct-aviso{border-radius:var(--radius-xs);padding:10px 12px;font-size:12.5px;display:grid;gap:3px}.ct-aviso.is-info{background:var(--cyan-soft)}.ct-aviso.is-warn{background:var(--amber-soft)}.ct-aviso.is-error{background:var(--red-soft)}.ct-aviso b{font-weight:600}@media (max-width:980px){.ct-alta,.ct-inicio{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.ct-pasos{grid-template-columns:minmax(0,1fr);gap:10px}.ct-pasos li+li{padding-left:0;border-left:0}.ct-alta-cab{grid-template-columns:minmax(0,1fr)}}.ct-nivel[data-nivel="2"]{padding-left:24px}.ct-nivel[data-nivel="3"]{padding-left:38px}.ct-nivel[data-nivel="4"]{padding-left:52px}.ct-nivel[data-nivel="5"]{padding-left:66px}.ct-nivel[data-nivel="6"]{padding-left:80px}.ct-check-inline{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}.ct-hoja tbody tr.is-sel td{background:var(--cyan-soft)}.ct-hoja tbody tr.ct-selec{cursor:default;-webkit-user-select:none;user-select:none}.ct-suma-sel{color:var(--text)}.ct-espaciador td{padding:0!important;border:0!important}.ct-pegado{font-family:var(--mono);font-size:12px;min-height:140px;resize:vertical;white-space:pre}