:root{--fondo:#f5f6f8;--tarjeta:#fff;--texto:#1d2330;--suave:#5b6475;--primario:#1f5eff;--borde:#d9dde5;--aviso:#b42318;color:var(--texto);background:var(--fondo);font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--fondo:#12151c;--tarjeta:#1b1f29;--texto:#e8eaf0;--suave:#9aa3b5;--borde:#2c3240;--primario:#6d8dff;--aviso:#ff8a80}}*{box-sizing:border-box}body{margin:0}main{max-width:640px;margin:0 auto;padding:16px}h1{font-size:1.4rem}h2{margin:0 0 12px;font-size:1.1rem}.cabecera{justify-content:space-between;align-items:center;gap:12px;display:flex}.cabecera select{width:auto}.tarjeta{background:var(--tarjeta);border:1px solid var(--borde);border-radius:12px;flex-direction:column;gap:10px;margin-bottom:16px;padding:16px;display:flex}input,select,button{font:inherit;border:1px solid var(--borde);background:var(--tarjeta);color:var(--texto);border-radius:8px;padding:10px 12px}button{background:var(--primario);color:#fff;cursor:pointer;border:none}button.secundario{color:var(--primario);border:1px solid var(--primario);background:0 0}.fila{gap:10px;display:flex}.fila button{flex:1}ul{margin:0;padding:0;list-style:none}li{border-bottom:1px solid var(--borde);flex-direction:column;padding:10px 0;display:flex}li span{color:var(--suave);font-size:.9rem}.usuario{color:var(--suave);justify-content:space-between;align-items:center;display:flex}.aviso{color:var(--aviso)}.clicable{cursor:pointer}.clicable:hover strong{color:var(--primario)}.ayuda{color:var(--suave);margin:0;font-size:.85rem}.exito{color:#1a7f37}.empresa-cabecera{align-items:center;gap:12px;margin-bottom:12px;display:flex}.empresa-cabecera div{flex-direction:column;display:flex}.empresa-cabecera span{color:var(--suave);font-size:.85rem}.pestanas{gap:6px;margin-bottom:16px;display:flex;overflow-x:auto}.pestanas button{color:var(--texto);border:1px solid var(--borde);white-space:nowrap;background:0 0}.pestanas button.activa{background:var(--primario);color:#fff;border-color:var(--primario)}.codigo{color:var(--suave);margin-right:6px;font-family:ui-monospace,Consolas,monospace}.cuentas{max-height:60vh;overflow-y:auto}.cuentas li{flex-direction:row;gap:6px;padding:6px 0}.cuentas li.nivel-1{font-weight:700}.cuentas li.nivel-2{padding-left:8px;font-weight:600}.cuentas li.nivel-3{padding-left:16px}.cuentas li.nivel-4{padding-left:24px}.cuentas li.subcuenta{color:var(--primario);padding-left:32px}label{color:var(--suave);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.rejilla-cabecera{grid-template-columns:1fr 1fr;gap:10px;display:grid}.linea{border-bottom:1px dashed var(--borde);grid-template-columns:1fr 1fr auto;gap:6px;padding:8px 0;display:grid}.linea select{grid-column:1/-1}.linea input{min-width:0}.acciones-linea{gap:4px;display:flex}.acciones-linea button{padding:8px 10px}button:disabled{opacity:.45;cursor:not-allowed}.totales{border-radius:8px;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:10px 12px;font-size:.9rem;display:flex}.totales.ok{color:#1a7f37;background:#1a7f371f}.totales.descuadre{color:var(--aviso);background:#b423181a}.asiento{border-top:1px solid var(--borde);padding-top:10px}.asiento header{color:var(--suave);justify-content:space-between;font-size:.9rem;display:flex}.asiento header strong{color:var(--texto)}.concepto{margin:4px 0 8px}table{border-collapse:collapse;width:100%;font-size:.9rem}th{text-align:left;color:var(--suave);border-bottom:1px solid var(--borde);padding:4px;font-weight:500}td{border-bottom:1px solid var(--borde);vertical-align:top;padding:4px}.num{text-align:right;white-space:nowrap}.insignia{letter-spacing:.05em;color:#1d2330;vertical-align:middle;background:#f5a524;border-radius:999px;padding:2px 6px;font-size:.7rem;font-weight:700;display:inline-block}.solo-lectura{color:var(--texto);background:#f5a52426;border-radius:8px;padding:8px 12px;font-size:.9rem}.publicar{margin:0 0 12px}.boton-archivo{cursor:pointer;background:var(--primario);color:#fff;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:10px 12px;font-size:1rem;display:flex}.tabla-scroll{max-height:50vh;overflow:auto}tr.estado-insert td:last-child strong{color:#1a7f37}tr.estado-update td:last-child strong{color:#9a6700}tr.estado-error td:last-child strong{color:var(--aviso)}tr.estado-error{background:#b423180f}.cuenta-linea{flex-direction:column;grid-column:1/-1;gap:2px;display:flex}.nombre-cuenta{color:var(--suave);min-height:1em;padding-left:4px;font-size:.8rem}input.invalido{border-color:var(--aviso)}.opciones{flex-direction:column;gap:6px;display:flex}.opcion{color:var(--texto);flex-direction:row;align-items:center;gap:8px;font-size:.95rem}.opcion input{width:auto}.impuestos{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.impuestos li{border-top:1px solid var(--borde);flex-direction:column;gap:6px;padding-top:10px;display:flex}.impuestos li.bloqueado{opacity:.55}.liquidacion{border-top:2px solid var(--borde);margin-top:14px;padding-top:10px}.liquidacion h3{margin:0 0 4px;font-size:1rem}.impuestos .rejilla-cabecera,.liquidacion .rejilla-cabecera{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.impuestos select,.liquidacion select{width:100%;min-width:0}.linea-factura{border-bottom:1px dashed var(--borde);grid-template-columns:1fr 1fr auto;gap:6px;padding:8px 0;display:grid}.linea-factura input,.linea-factura select{min-width:0}.reduce{color:#9a6700;font-weight:600}.vista-previa{margin-top:8px}li .insignia{margin-left:6px}.factura .rejilla-cabecera{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.factura select,.factura input{width:100%;min-width:0}.rejilla-tres{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rejilla-tres select{width:100%;min-width:0}.liquidacion-borrador h3{margin:14px 0 4px;font-size:1rem}tr.total td{border-top:2px solid var(--borde);font-weight:700}.resultado{margin-top:12px}tr.resultado-payable td{color:var(--aviso)}tr.resultado-carry_forward td,tr.resultado-refund td{color:#1a7f37}.cuadre{border-radius:8px;flex-wrap:wrap;gap:4px 14px;margin-top:12px;padding:8px 12px;font-size:.9rem;display:flex}.cuadre.ok{background:#1a7f371a}.cuadre.descuadre{color:var(--aviso);background:#b423181a}li.bloqueado{opacity:.55}.informe td{white-space:nowrap}.informe td:first-child{white-space:normal;min-width:160px}tr.anomalia.warning td{background:#f5a5241f}tr.anomalia.error td{color:var(--aviso);background:#b423181f}.anomalias{flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.anomalias li{border-left:4px solid #f5a524;flex-direction:column;gap:4px;padding:6px 10px;display:flex}.anomalias li.error{border-left-color:var(--aviso)}.anomalias button{align-self:flex-start}.insignia.error{background:var(--aviso);color:#fff}main:has(.empresa-layout){max-width:1120px}.empresa-layout{grid-template-columns:minmax(0,1fr);gap:0 20px;display:grid}.boton-menu{background:var(--tarjeta);color:var(--texto);border:1px solid var(--borde);text-align:left;align-items:center;gap:8px;margin-bottom:12px;display:flex}.boton-menu strong{color:var(--primario)}.menu-empresa{background:var(--tarjeta);border:1px solid var(--borde);border-radius:12px;flex-direction:column;gap:12px;margin-bottom:16px;padding:12px;display:none}.menu-empresa.abierto{display:flex}.menu-grupo{flex-direction:column;gap:2px;display:flex}.menu-grupo h3{text-transform:uppercase;letter-spacing:.06em;color:var(--suave);margin:0 0 4px;font-size:.75rem}.menu-grupo button{color:var(--texto);text-align:left;background:0 0;padding:8px 10px}.menu-grupo button:hover{background:#1f5eff14}.menu-grupo button.activa{background:var(--primario);color:#fff}.menu-grupo button.secundario{color:var(--primario);border:1px solid var(--primario);text-align:center}.ruta{color:var(--suave);margin:0 0 10px;font-size:.85rem;display:none}@media (width>=900px){.empresa-layout{grid-template-columns:220px minmax(0,1fr)}.empresa-cabecera{grid-column:1/-1}.boton-menu{display:none}.menu-empresa{align-self:start;display:flex;position:sticky;top:16px}.ruta{display:block}}.asiento{flex-direction:column;display:flex}.asiento.anulado .concepto,.asiento.anulado table{opacity:.55}.etiquetas{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.etiqueta{color:var(--primario);background:#1f5eff1a;border-radius:999px;padding:2px 8px;font-size:.75rem}.etiqueta.anula{color:#1a7f37;background:#1a7f371f}.etiqueta.anulado{color:var(--aviso);background:#b423181a}button.pequeno{align-self:flex-start;margin-top:6px;padding:6px 10px;font-size:.85rem}.anular{border:1px dashed var(--aviso);border-radius:8px;flex-direction:column;gap:8px;margin-top:8px;padding:10px;display:flex}.anular input,.rejilla-tres input{width:100%;min-width:0}.invitado{border-top:1px solid var(--borde);flex-direction:column;gap:8px;margin-top:4px;padding-top:12px;display:flex}.fila input{flex:1;min-width:0}.idiomas{border:1px solid var(--borde);border-radius:8px;display:flex;overflow:hidden}.idiomas button{background:var(--tarjeta);color:var(--suave);border:none;border-radius:0;align-items:center;gap:6px;padding:6px 10px;font-size:.85rem;display:flex}.idiomas button+button{border-left:1px solid var(--borde)}.idiomas button.activo{color:var(--texto);background:#1f5eff1a;font-weight:600}.idiomas svg{border-radius:2px;width:20px;height:14px;box-shadow:0 0 0 1px #00000026}.menu-empresa{gap:8px;padding:8px}.menu-grupo h3{background:var(--fondo);border-left:3px solid var(--borde);cursor:default;-webkit-user-select:none;user-select:none;border-radius:6px;margin:0 0 2px;padding:6px 10px}.menu-grupo button{margin-left:8px}.tabla-ancha{overflow-x:auto}.estado{font-size:.9rem}.estado td:first-child{white-space:normal}.estado tr.partida{cursor:pointer}.estado tr.partida:hover td{background:#1f5eff0f}.estado tr.total-estado td{background:var(--fondo);font-weight:700}.estado tr.total-estado.nivel-0 td{border-top:2px solid var(--texto)}.estado td.anterior{color:var(--suave)}.estado tr.cuenta-partida td{color:var(--suave);border-bottom:none;font-size:.8rem}.desplegar{width:12px;color:var(--primario);display:inline-block}.insignia.cerrado{background:var(--suave);color:var(--tarjeta)}.ejercicio-cierre{max-width:240px}.pasos-cierre{flex-direction:column;gap:6px;margin:12px 0;padding:0;list-style:none;display:flex}.pasos-cierre>li{border-left:3px solid var(--borde);padding:2px 0 8px 12px}.pasos-cierre h3{margin:0 0 4px;font-size:1rem}.pasos-cierre details summary{cursor:pointer;color:var(--primario);margin:4px 0;font-size:.9rem}.comprobaciones{flex-direction:column;gap:4px;margin:4px 0;padding:0;font-size:.9rem;list-style:none;display:flex}.comprobaciones li{border-radius:6px;padding:4px 8px;display:block}.comprobaciones li.error{color:var(--aviso);background:#b423181a}.comprobaciones li.warning{background:#f5a52426}.comprobaciones li.info{color:var(--suave)}.comprobaciones .icono{width:1.2em;font-weight:700;display:inline-block}.linea-factura .causa-exencion{color:var(--suave);grid-column:1/-1;font-size:.8rem}.retencion{max-width:420px;margin-top:8px}.modelo-retenciones{margin-bottom:12px}.modelo-retenciones h3{margin:10px 0 4px;font-size:1rem}.regimen{max-width:460px;margin-top:10px}.opcion.pequena{margin-top:4px;font-size:.85rem}.importar-diario h3{margin:14px 0 4px;font-size:1rem}.progreso{color:var(--suave);flex-direction:column;gap:4px;margin:10px 0;font-size:.9rem;display:flex}.progreso progress{width:100%;height:10px}.ratios{flex-direction:column;margin:8px 0 0;padding:0;list-style:none;display:flex}.ratios li{border-top:1px solid var(--borde)}.ratio-fila{width:100%;color:var(--texto);text-align:left;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 12px;padding:10px 4px;font-weight:400;display:grid}.ratio-fila:hover{background:#1f5eff0f}.ratio-nombre{grid-column:1}.ratio-valor{white-space:nowrap;grid-column:2;justify-content:flex-end;align-items:baseline;gap:8px;display:flex}.ratio-anterior{text-align:right;color:var(--suave);white-space:nowrap;grid-column:2;font-size:.8rem}.ratio-estado{border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:700;display:inline-block}.ratio-estado.ok{color:#1a7f37;background:#1a7f371f}.ratio-estado.low,.ratio-estado.high{color:#9a6700;background:#f5a5242e}.ratio-detalle{flex-direction:column;gap:6px;padding:0 4px 12px 22px;font-size:.9rem;display:flex}.ratio-detalle p{margin:0}.leyenda-ratios{flex-wrap:wrap;gap:8px;margin:10px 0 0;display:flex}@media (prefers-color-scheme:dark){.ratio-estado.ok{color:#4ac26b}.ratio-estado.low,.ratio-estado.high{color:#e3b341}}.analista-ia{border-left:4px solid var(--primario)}.analista-ia>button{align-self:flex-start}.analisis{flex-direction:column;gap:12px;margin-top:12px;display:flex}.resumen-ia{margin:0;font-size:1rem;line-height:1.5}.bloque-ia h3{margin:0 0 4px;font-size:.95rem}.bloque-ia ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.bloque-ia li{border:0;padding:0;line-height:1.45;display:block}.bloque-ia .icono{width:1.3em;font-weight:700;display:inline-block}.bloque-ia.strengths .icono{color:#1a7f37}.bloque-ia.alerts .icono{color:#9a6700}.bloque-ia.auditor_questions .icono{color:var(--primario)}.bloque-ia.learning{background:#1f5eff12;border-radius:8px;padding:10px 12px}.bloque-ia.learning p{margin:0;line-height:1.45}.ia-texto{white-space:pre-wrap;background:var(--fondo);border-radius:8px;padding:10px;font-family:inherit}.tutor-asientos{border-left:4px solid #8250df}.tutor-asientos textarea{width:100%;font:inherit;border:1px solid var(--borde);background:var(--tarjeta);color:var(--texto);resize:vertical;box-sizing:border-box;border-radius:8px;padding:10px}.tutor-asientos>button{align-self:flex-start}.propuesta{flex-direction:column;gap:10px;display:flex}.propuesta h3{margin:6px 0 2px;font-size:.95rem}.propuesta td .insignia{margin-left:6px}.propuesta>button{align-self:flex-start}.accesos{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.accesos li{border-top:1px solid var(--borde);flex-direction:row;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.accesos li>div{flex-direction:column;gap:2px;min-width:0;display:flex}.accesos li strong{overflow-wrap:anywhere}.alta-acceso{border-top:2px solid var(--borde);flex-direction:column;gap:8px;padding-top:12px;display:flex}.alta-acceso h3{margin:0;font-size:1rem}.alta-acceso button{align-self:flex-start}.opiniones{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.opiniones li{border-left:4px solid var(--borde);flex-direction:column;gap:6px;padding:6px 10px;display:flex}.opiniones li.correct{border-left-color:#1a7f37}.opiniones li.partial{border-left-color:#9a6700}.opiniones li.wrong{border-left-color:var(--aviso)}.opiniones p{margin:0}.cabecera-opinion{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}button.enlace{color:var(--primario);background:0 0;border:0;align-self:flex-start;padding:0;font-weight:400}.opinion-ia{border-top:1px dashed var(--borde);flex-direction:column;gap:8px;padding-top:10px;display:flex}.fila-opiniones{flex-wrap:wrap;gap:6px;display:flex}.fila-opiniones button.activa{background:var(--primario);color:#fff}.opinion-ia textarea{width:100%;font:inherit;border:1px solid var(--borde);background:var(--tarjeta);color:var(--texto);box-sizing:border-box;border-radius:8px;padding:8px}.opinion-ia>button{align-self:flex-start}.titular{background:#8250df1a;border-radius:8px;margin:0 0 12px;padding:8px 12px}.mencion{font-size:.8rem}.fila-usuario{flex-wrap:wrap;gap:6px;display:flex}.publicar-demo{border-left:4px solid #9a6700}.enlace-empresa{color:inherit;border-radius:6px;flex-direction:column;text-decoration:none;display:flex}.enlace-empresa:hover strong,.enlace-empresa:focus-visible strong{color:var(--primario)}.enlace-empresa:focus-visible{outline:2px solid var(--primario);outline-offset:4px}.deshacer{background:var(--fondo);border:1px solid var(--borde);border-radius:8px;align-items:center;gap:10px;margin:0;padding:8px 12px;font-size:.9rem;display:flex}.deshacer button.enlace{padding:0}a.boton{background:var(--primario);color:#fff;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:10px 14px;text-decoration:none;display:inline-flex}a.boton.secundario{color:var(--primario);border:1px solid var(--primario);background:0 0}a.enlace{color:var(--primario);text-decoration:none}a.enlace:hover{text-decoration:underline}.cargando{color:var(--suave)}.cargando span{animation:1.2s ease-in-out infinite latido;display:inline-block}@keyframes latido{50%{opacity:.2}}@media (prefers-reduced-motion:reduce){.cargando span{animation:none}}.vacio{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:16px 8px;display:flex}.vacio p{margin:0}.vacio-icono{font-size:1.8rem}.empresa-contenido{container-type:inline-size}.inicio{grid-template-columns:minmax(0,1fr);gap:0 16px;display:grid}@container (width>=760px){.inicio{grid-template-columns:minmax(0,1fr) 260px}}.saludo h2{margin:0}.ruta-cabecera{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ruta-cabecera h2{margin:0}.progreso-texto{color:var(--suave);white-space:nowrap;font-size:.9rem}.progreso{background:var(--borde);border-radius:4px;height:8px;overflow:hidden}.progreso span{background:var(--exito,#1a7f37);height:100%;transition:width .3s;display:block}.pasos{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.paso{border:1px solid var(--borde);border-radius:10px;flex-direction:row;align-items:center;gap:12px;padding:10px 12px;display:flex}.paso-numero{background:var(--borde);width:30px;height:30px;color:var(--texto);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.paso-texto{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.paso-texto span{color:var(--suave);font-size:.88rem}.paso.hecho .paso-numero{background:var(--exito,#1a7f37);color:#fff}.paso.hecho .paso-texto strong{color:var(--suave)}.paso.siguiente{border:2px solid var(--primario);background:color-mix(in srgb, var(--primario) 7%, var(--tarjeta))}.paso.siguiente .paso-numero{background:var(--primario);color:#fff}.paso.pendiente{opacity:.9}@container (width<=520px){.paso{flex-wrap:wrap}.paso a.boton{margin-left:42px}.paso.siguiente a.boton{width:calc(100% - 42px)}}.accesos-rapidos .acceso{border:1px solid var(--borde);color:var(--texto);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.accesos-rapidos .acceso:hover,.accesos-rapidos .acceso:focus-visible{border-color:var(--primario);color:var(--primario)}.ultimos li{grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:8px 0;display:grid}.ultimo-fecha{grid-column:1/-1;font-size:.8rem}.ultimo-concepto{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:var(--texto)!important}.ultimos .num{font-variant-numeric:tabular-nums}.empresa-cabecera .modo{border:1px solid var(--borde);border-radius:999px;flex-direction:row;flex:none;gap:2px;margin-left:auto;padding:3px;display:inline-flex}.empresa-cabecera .modo button{color:var(--suave);background:0 0;border-radius:999px;padding:6px 14px;font-size:.9rem}.empresa-cabecera .modo button.activo{background:var(--primario);color:#fff}.menu-grupo button small{color:var(--suave);margin-top:1px;font-size:.75rem;display:block}.menu-grupo button.activa small{color:#ffffffd9}.aviso-modo{background:var(--fondo);border:1px dashed var(--borde);color:var(--suave);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 12px;padding:8px 12px;font-size:.9rem;display:flex}.aviso-modo button.enlace{padding:0}@media (width<=600px){.empresa-cabecera{flex-wrap:wrap}.empresa-cabecera .modo{margin-left:0}}.ocupado{z-index:50;pointer-events:none;position:fixed;top:0;left:0;right:0}.ocupado-barra{background:linear-gradient(90deg, transparent, var(--primario), transparent);background-repeat:no-repeat;background-size:50% 100%;height:3px;animation:1.1s linear infinite barra;display:block}.ocupado-texto{background:var(--tarjeta);color:var(--suave);border:1px solid var(--borde);border-radius:999px;padding:4px 10px;font-size:.8rem;position:absolute;top:8px;right:12px}@keyframes barra{0%{background-position:-50% 0}to{background-position:150% 0}}@media (prefers-reduced-motion:reduce){.ocupado-barra{background:var(--primario);opacity:.5;animation:none}}.exito a.enlace{font-weight:500}.aviso a.enlace{white-space:nowrap}
