.comprobantes-page{padding:2rem}.comprobantes-page h1{margin-bottom:1.5rem;color:var(--ink)}.filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.filters select{flex:0 1 260px;min-width:180px}.filters input{flex:1 1 260px;min-width:200px}.comprobantes-page table{min-width:720px}.comprobantes-page .tabla-scroll{overflow-x:auto}.filters input,.filters select{padding:.5rem;border:1px solid var(--line);border-radius:4px;font-size:1rem}table{width:100%;border-collapse:collapse}table thead{background:var(--surface)}table th{padding:1rem;text-align:left;font-weight:600;border-bottom:2px solid var(--line)}table td{padding:1rem;border-bottom:1px solid var(--line)}table tbody tr:hover{background:var(--surface)}.afc-marco{max-width:720px;margin-inline:auto;padding-inline:var(--gutter);padding-block:var(--gap-4) var(--gap-5)}.afc-pila{display:flex;flex-direction:column;gap:var(--gap-3)}.afc-pila-ancha{display:flex;flex-direction:column;gap:var(--gap-5)}.afc-barra{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--gap-3);background:var(--ground-2);border-bottom:1px solid var(--line);padding-inline:var(--gutter);padding-block:var(--gap-3)}.afc-barra__avatar{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--t-cuerpo);font-weight:var(--p-fuerte)}.afc-barra__estudio{font-size:var(--t-h2);font-weight:var(--p-semi);line-height:1.2}.afc-barra__quien{font-size:var(--t-menor);color:var(--ink-3)}.afc-barra__acciones{margin-left:auto;display:flex;gap:var(--gap-2)}.afc-fichas{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap-2)}.afc-ficha{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--gap-3);min-width:0}.afc-ficha__n{display:block;font-size:var(--t-titulo);font-weight:var(--p-fuerte);line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.afc-ficha__q{font-size:var(--t-menor);color:var(--ink-3)}.afc-ficha--critica{border-color:var(--critico)}.afc-ficha--critica .afc-ficha__n{color:var(--critico)}.afc-ficha--ok .afc-ficha__n{color:var(--ok)}.afc-secciones{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--gap-2)}.afc-seccion{display:flex;flex-direction:column;gap:var(--gap-2);align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--gap-3);color:var(--ink);text-decoration:none;text-align:left;cursor:pointer;transition:background var(--transicion),border-color var(--transicion)}.afc-seccion:hover{background:var(--surface-2)}.afc-seccion__icono{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--r-icon);background:var(--accent-soft);color:var(--accent)}.afc-seccion__etiqueta{font-size:var(--t-cuerpo);font-weight:var(--p-medio)}.afc-chip{display:inline-flex;align-items:center;gap:var(--gap-1);border-radius:var(--r-pill);padding:2px var(--gap-2);font-size:var(--t-micro);font-weight:var(--p-fuerte);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1px solid transparent}.afc-chip--critico{color:var(--critico);background:var(--critico-soft);border-color:var(--critico)}.afc-chip--atencion{color:var(--atencion);background:var(--atencion-soft);border-color:var(--atencion)}.afc-chip--ok{color:var(--ok);background:var(--ok-soft);border-color:var(--ok)}.afc-chip--neutro{color:var(--ink-2);background:var(--surface-2);border-color:var(--line)}.afc-filtros{display:flex;gap:var(--gap-2);overflow-x:auto;scrollbar-width:none;padding-block:var(--gap-1)}.afc-filtros::-webkit-scrollbar{display:none}.afc-filtro{flex:none;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--ink-2);padding:var(--gap-2) var(--gap-3);font-size:var(--t-menor);font-weight:var(--p-medio);cursor:pointer;min-height:36px;transition:background var(--transicion),color var(--transicion)}.afc-filtro[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.afc-aviso{display:flex;flex-direction:column;gap:var(--gap-2);background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--ink-3);border-radius:var(--r-card);padding:var(--gap-3)}.afc-aviso--critico{border-left-color:var(--critico)}.afc-aviso--atencion{border-left-color:var(--atencion)}.afc-aviso--ok{border-left-color:var(--ok)}.afc-aviso--visto{opacity:.62}.afc-aviso__fila{display:flex;align-items:center;gap:var(--gap-2)}.afc-aviso__cuando{margin-left:auto;font-size:var(--t-menor);color:var(--ink-3);white-space:nowrap}.afc-aviso__titulo{font-size:var(--t-h3);font-weight:var(--p-semi)}.afc-aviso__cuerpo{font-size:var(--t-cuerpo);color:var(--ink-2)}.afc-reporte{display:flex;align-items:center;gap:var(--gap-3);width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--gap-3);color:var(--ink);text-align:left;cursor:pointer;transition:background var(--transicion)}.afc-reporte:hover:not(:disabled){background:var(--surface-2)}.afc-reporte:disabled{cursor:default;opacity:.6}.afc-reporte__icono{flex:none;width:42px;height:42px;display:grid;place-items:center;border-radius:var(--r-icon)}.afc-reporte__texto{min-width:0;display:flex;flex-direction:column;gap:2px}.afc-reporte__titulo{font-size:var(--t-cuerpo);font-weight:var(--p-semi)}.afc-reporte__desc{font-size:var(--t-menor);color:var(--ink-3)}.afc-reporte__chevron{margin-left:auto;color:var(--ink-3);flex:none}.afc-reporte__acciones{margin-left:auto;display:flex;gap:var(--gap-2);flex:none}.afc-banner{display:flex;align-items:flex-start;gap:var(--gap-3);background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--ink-3);border-radius:var(--r-card);padding:var(--gap-3)}.afc-banner--critico{border-left-color:var(--critico)}.afc-banner--atencion{border-left-color:var(--atencion)}.afc-banner--ok{border-left-color:var(--ok)}.afc-banner__texto{min-width:0}.afc-banner__titulo{font-size:var(--t-cuerpo);font-weight:var(--p-semi)}.afc-banner__detalle{font-size:var(--t-menor);color:var(--ink-2)}.afc-vacio{display:flex;flex-direction:column;align-items:center;gap:var(--gap-3);padding-block:var(--gap-5);text-align:center;color:var(--ink-2)}.afc-vacio__icono{color:var(--ink-3)}.afc-vacio__texto{font-size:var(--t-cuerpo)}.afc-boton{display:inline-flex;align-items:center;justify-content:center;gap:var(--gap-2);border-radius:var(--r-pill);border:1px solid transparent;padding:var(--gap-2) var(--gap-4);font-family:inherit;font-size:var(--t-cuerpo);font-weight:var(--p-semi);cursor:pointer;min-height:44px;transition:background var(--transicion),border-color var(--transicion)}.afc-boton:disabled{opacity:.5;cursor:default}.afc-boton--primario{background:var(--accent);color:var(--ground)}.afc-boton--primario:hover:not(:disabled){background:var(--accent-2)}.afc-boton--secundario{background:var(--surface);color:var(--ink);border-color:var(--line)}.afc-boton--secundario:hover:not(:disabled){background:var(--surface-2)}.afc-boton--peligro{background:var(--surface);color:var(--critico);border-color:var(--critico)}.afc-boton--texto{background:none;color:var(--accent);padding-inline:0;min-height:32px;align-self:flex-start}.afc-tabla-marco{overflow-x:auto}@media (max-width: 420px){.afc-ficha{padding:var(--gap-2)}.afc-ficha__n{font-size:var(--t-h1)}}.afc-app{min-height:100vh;display:flex;flex-direction:column;background:var(--ground)}.afc-barra__texto{min-width:0}.afc-barra__estudio,.afc-barra__quien{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.afc-boton-icono{display:grid;place-items:center;width:40px;height:40px;padding:0;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer}.afc-boton-icono:hover{background:var(--surface-2);color:var(--ink)}.afc-cuerpo{flex:1;display:flex;min-height:0}.afc-menu{flex:none;width:220px;display:flex;flex-direction:column;gap:2px;padding:var(--gap-3);border-right:1px solid var(--line);background:var(--ground-2);position:sticky;top:65px;align-self:flex-start;height:calc(100vh - 65px);overflow-y:auto}.afc-menu__item{display:flex;align-items:center;gap:var(--gap-3);padding:var(--gap-2) var(--gap-3);border-radius:var(--r-campo);color:var(--ink-2);text-decoration:none;font-weight:var(--p-medio)}.afc-menu__item:hover{background:var(--surface);color:var(--ink)}.afc-menu__item--activo{background:var(--accent-soft);color:var(--accent)}.afc-contenido{flex:1;min-width:0;padding-inline:var(--gap-5);padding-block:var(--gap-5)}.afc-abajo,.afc-mas{display:none}@media (max-width: 800px){.afc-menu{display:none}.afc-contenido{padding-inline:var(--gutter);padding-block:var(--gap-4) 148px}.afc-abajo{display:grid;grid-template-columns:repeat(6,1fr);position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.afc-abajo__item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--gap-2) 0;background:none;border:none;border-radius:0;color:var(--ink-2);font-size:var(--t-micro);text-decoration:none;cursor:pointer;min-width:0}.afc-abajo__item span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.afc-abajo__item--activo{color:var(--accent)}.afc-mas{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:15;background:color-mix(in srgb,var(--ground) 60%,transparent)}.afc-mas__hoja{position:absolute;left:0;right:0;bottom:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap-2);padding:var(--gap-3);background:var(--ground-2);border-top:1px solid var(--line);border-radius:var(--r-card) var(--r-card) 0 0}}.afc-ingreso{min-height:100vh;display:grid;place-items:center;padding:var(--gutter);background:var(--ground)}.afc-ingreso__tarjeta{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--gap-5)}.afc-ingreso__logo{width:56px;height:56px;display:grid;place-items:center;margin-bottom:var(--gap-4);border-radius:var(--r-card);background:var(--accent);color:var(--ground);font-weight:var(--p-fuerte)}.afc-ingreso__titulo{font-size:var(--t-titulo);margin-bottom:var(--gap-1)}.afc-ingreso__sub{color:var(--ink-2);margin-bottom:var(--gap-5)}.afc-campo{display:flex;flex-direction:column;gap:var(--gap-1);font-size:var(--t-menor);color:var(--ink-2)}.afc-saludo{font-size:var(--t-titulo);font-weight:var(--p-fuerte);margin:0}.afc-fecha{color:var(--ink-2);font-size:var(--t-cuerpo)}.afc-fecha:first-letter{text-transform:uppercase}.afc-subtitulo{font-size:var(--t-h2);margin-block:0 var(--gap-3)}.afc-tarjeta{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.afc-seccion{font:inherit}.afc-seccion:hover:not(:disabled){background:var(--surface-2)}.afc-nota{margin:0;font-size:var(--t-menor);color:var(--ink-2)}.afc-extracto{padding:var(--gap-4)}.afc-extracto__nueva{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--gap-3)}.afc-acciones{display:flex;flex-wrap:wrap;gap:var(--gap-2);align-items:center}.afc-flotante{position:fixed;right:var(--gap-4);bottom:84px;z-index:18;display:flex;align-items:center;gap:var(--gap-2);padding:var(--gap-3) var(--gap-4);border-radius:var(--r-pill);background:var(--accent);color:var(--ground);font-weight:var(--p-semi);text-decoration:none;border:1px solid var(--accent-2)}@media (min-width: 801px){.afc-flotante{bottom:var(--gap-5);right:var(--gap-5)}}.afc-asistente{display:flex;flex-direction:column;gap:var(--gap-3);max-width:720px;margin-inline:auto}.afc-asistente__tope{display:flex;justify-content:space-between;align-items:center;gap:var(--gap-2)}.afc-asistente__hilo{display:flex;flex-direction:column;gap:var(--gap-2);min-height:50vh}.afc-asistente__bienvenida{padding:var(--gap-4);display:flex;flex-direction:column;gap:var(--gap-3)}.afc-asistente__saludo{margin:0;font-size:var(--t-h2);font-weight:var(--p-semi)}.afc-asistente__sugerencias{display:flex;flex-wrap:wrap;gap:var(--gap-2)}.afc-asistente__burbuja{max-width:88%;padding:var(--gap-3);border-radius:var(--r-card);white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--t-cuerpo)}.afc-asistente__burbuja--asistente{white-space:normal}.afc-texto__parrafo{margin:0}.afc-texto__parrafo+.afc-texto__parrafo,.afc-texto__parrafo+.afc-texto__lista,.afc-texto__lista+.afc-texto__parrafo{margin-top:var(--gap-2)}.afc-texto__lista{margin:0;padding-left:var(--gap-4);display:flex;flex-direction:column;gap:var(--gap-1)}.afc-asistente__burbuja--yo{align-self:flex-end;background:var(--accent-soft);color:var(--ink)}.afc-asistente__burbuja--asistente{align-self:flex-start;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.afc-asistente__pensando{display:flex;gap:6px}.afc-asistente__pensando span{width:8px;height:8px;border-radius:var(--r-pill);background:var(--ink-3);animation:afc-pensando 1s infinite ease-in-out}.afc-asistente__pensando span:nth-child(2){animation-delay:.15s}.afc-asistente__pensando span:nth-child(3){animation-delay:.3s}@keyframes afc-pensando{0%,80%,to{opacity:.25}40%{opacity:1}}.afc-asistente__propuesta{padding:var(--gap-3);display:flex;flex-direction:column;gap:var(--gap-2);border-color:var(--accent)}.afc-asistente__propuesta-titulo{font-size:var(--t-menor);color:var(--ink-2)}.afc-asistente__propuesta-resumen{font-weight:var(--p-semi)}.afc-asistente__lista{margin:0;padding-left:var(--gap-4);font-size:var(--t-cuerpo);display:flex;flex-direction:column;gap:var(--gap-1)}.afc-asistente__aviso{font-size:var(--t-menor);color:var(--ink-2);background:var(--atencion-soft);padding:var(--gap-2);border-radius:var(--r-campo)}.afc-asistente__entrada{position:sticky;bottom:76px;display:flex;gap:var(--gap-2);align-items:flex-end;padding-block:var(--gap-2);background:var(--ground)}@media (min-width: 801px){.afc-asistente__entrada{bottom:0}}.afc-asistente__campo{flex:1;min-width:0;resize:none;max-height:140px;padding:var(--gap-3);border-radius:var(--r-campo);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit}.afc-volver-mv{color:var(--accent);margin-bottom:var(--gap-2)}.afc-volver-mv--hoja{grid-column:1 / -1;align-items:center;flex-direction:row;margin-bottom:0}:root{--ground: #ffffff;--ground-2: #f9fafb;--surface: #f3f4f6;--surface-2: #e5e7eb;--line: #d1d5db;--ink: #1f2937;--ink-2: #6b7280;--ink-3: #9ca3af;--accent: #a78bfa;--accent-2: #9370db;--accent-soft: color-mix(in srgb, var(--accent) 18%, var(--ground));--critico: #ef4444;--atencion: #f59e0b;--ok: #10b981;--info: #3b82f6;--critico-soft: color-mix(in srgb, var(--critico) 15%, var(--ground));--atencion-soft: color-mix(in srgb, var(--atencion) 15%, var(--ground));--ok-soft: color-mix(in srgb, var(--ok) 15%, var(--ground));--cat-financiero: #a78bfa;--cat-contable: #3b82f6;--cat-tesoreria: #f59e0b;--cat-ventas: #10b981;--cat-fiscal: #ef4444;--cat-costos: #d97706;--r-card: 12px;--r-icon: 8px;--r-campo: 8px;--r-pill: 999px;--gap-1: 4px;--gap-2: 8px;--gap-3: 12px;--gap-4: 16px;--gap-5: 24px;--gutter: 16px;--fuente: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--t-display: 32px;--t-titulo: 24px;--t-h1: 20px;--t-h2: 18px;--t-h3: 16px;--t-cuerpo: 14px;--t-menor: 12px;--t-micro: 11px;--p-normal: 400;--p-medio: 500;--p-semi: 600;--p-fuerte: 700;--transicion: .14s ease}@media (prefers-color-scheme: dark){:root:not([data-tema=claro]){--ground: #0f172a;--ground-2: #1a1f35;--surface: #2d3748;--surface-2: #4a5568;--line: #4a5568;--ink: #e2e8f0;--ink-2: #a0aec0;--ink-3: #718096}}:root[data-tema=oscuro]{--ground: #0f172a;--ground-2: #1a1f35;--surface: #2d3748;--surface-2: #4a5568;--line: #4a5568;--ink: #e2e8f0;--ink-2: #a0aec0;--ink-3: #718096}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--fuente);font-size:var(--t-cuerpo);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cifra,td.cifra,.tabular{font-variant-numeric:tabular-nums}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-campo)}:where(button,a.boton,[role=button]){min-height:44px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--primary-color: var(--accent);--secondary-color: var(--accent-2);--error-color: var(--critico);--success-color: var(--ok);--warning-color: var(--atencion);--bg-light: var(--ground);--text-dark: var(--ink);--gray-50: var(--surface);--gray-100: var(--surface);--gray-200: var(--line);--gray-300: var(--line);--gray-400: var(--ink-3);--gray-500: var(--ink-2)}*{margin:0;padding:0;box-sizing:border-box}h1,h2,h3,h4,h5,h6{color:var(--ink);line-height:1.25}h1{font-size:var(--t-titulo);margin-bottom:var(--gap-3)}h2{font-size:var(--t-h1);margin-block:var(--gap-4) var(--gap-3)}h3{font-size:var(--t-h2);margin-block:var(--gap-3) var(--gap-2)}a{color:var(--accent)}:where(button){cursor:pointer;border:1px solid transparent;border-radius:var(--r-pill);font-family:inherit;font-weight:var(--p-semi);font-size:var(--t-cuerpo);transition:background var(--transicion),border-color var(--transicion);background-color:var(--accent);color:var(--ground);padding:var(--gap-2) var(--gap-4)}:where(button:hover:not(:disabled)){background-color:var(--accent-2)}:where(button:disabled){opacity:.5;cursor:not-allowed}:where(input,textarea,select){width:100%;padding:var(--gap-2) var(--gap-3);border:1px solid var(--line);border-radius:var(--r-campo);background:var(--surface);color:var(--ink);font-family:inherit;font-size:var(--t-cuerpo)}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent)}input::placeholder,textarea::placeholder{color:var(--ink-3)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}table{width:100%;border-collapse:collapse;background:var(--surface)}table th{background-color:var(--ground-2);color:var(--ink-2);padding:var(--gap-3);text-align:left;font-size:var(--t-menor);font-weight:var(--p-semi);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line)}table td{padding:var(--gap-3);border-bottom:1px solid var(--line);color:var(--ink)}table tbody tr:hover td{background-color:var(--surface-2)}.error{background-color:var(--critico-soft);color:var(--critico);border-left:4px solid var(--critico);padding:var(--gap-3);border-radius:var(--r-campo);margin-bottom:var(--gap-4)}.success{background-color:var(--ok-soft);color:var(--ok);border-left:4px solid var(--ok);padding:var(--gap-3);border-radius:var(--r-campo);margin-bottom:var(--gap-4)}.loading{opacity:.6;pointer-events:none}
